assertions java java assert tutorial with code examples
У цьому посібнику з Java Assert пояснено все про твердження в Java. Ви навчитеся вмикати та вимикати твердження, як використовувати твердження, приклади підтвердження тощо:
У наших попередніх підручниках ми вже обговорювали винятки в Java. Це помилки, які виявляються під час виконання. Подібно до винятків, є деякі інші конструкції, які ми можемо використовувати під час компіляції для перевірки правильності коду. Ці конструкції називаються «Твердження».
У цьому підручнику ми детально обговоримо твердження на Java. Ми можемо визначити твердження як конструкцію, яка дозволяє нам перевірити правильність або чіткість припущень, зроблених нами в нашій програмі Java.
=> Подивіться тут посібник для початківців Java.
Що ви дізнаєтесь:
Ствердження в Java
Таким чином, коли ми виконуємо твердження в програмі, це вважається істинним. Якщо воно стає хибним або не вдається, JVM видасть AssertionError.
Ми використовуємо твердження під час розробки для тестування. Під час виконання Java твердження вимикає.
Чим твердження відрізняються від звичайних винятків?
На відміну від звичайних винятків, твердження в основному корисні для перевірки логічних ситуацій у програмі, щодо якої ми сумніваємось. Також, всупереч звичайним виняткам, які також можуть бути видані під час виконання, твердження вимикаються під час виконання.
Твердження можна використовувати в місцях коду, де розробник має максимальний контроль, як вони можуть бути використані як параметри приватних методів. Твердження також можна використовувати з умовними відмінками. Подібним чином умови на початку будь-якого методу можуть містити твердження.
Однак твердження не слід сприймати як заміну повідомленням про помилки. Ні твердження не повинні використовуватися в публічних методах, наприклад, перевірити аргументи. Найголовніше, що ми не повинні використовувати твердження щодо аргументів командного рядка в Java.
У Java твердження за замовчуванням вимкнено. Отже, щоб твердження працювали в програмі Java, ми повинні спочатку увімкнути твердження.
Увімкнути твердження в Java
Щоб увімкнути твердження, ми повинні зробити це з командного рядка.
Нижче наведено загальний синтаксис увімкнення Assertion в Java.
java –ea: arguments
або
java –enableassertions: arguments
Як приклад, ми можемо включити твердження для певного класу, як показано нижче:
java –ea TestProgram
або
java –enableassertions TestProgram
Тут TestProgram - це клас, для якого слід увімкнути твердження.
Коли умова виконується в заяві assert у програмі і твердження активовано, програма виконуватиметься нормально. Коли умова хибна і твердження ввімкнені, програма видає AssertionError і програма зупиняється.
Існують різні варіанти ввімкнення тверджень за допомогою командного рядка.
# 1) java –ea
Коли вищезазначена команда подана в командному рядку, тоді твердження активовано у всіх класах, крім системних класів.
№2) java –ea Main
Вищевказана команда дозволяє твердження для всіх класів у головній програмі.
# 3) java –ea TestClass Main
Ця команда дозволяє твердження лише для одного класу - «TestClass» у головній програмі.
# 4) java –ea com.packageName ... Головна
Вищевказана команда дозволяє твердження для пакета com.packageName та його підпакетів у головній програмі.
# 5) java –ea ... Основне
Вмикає твердження для неназваного пакету в поточному робочому каталозі.
# 6) java –esa: аргументи АБО java –enablesystemassertions: аргументи
Вищевказана команда дозволяє твердження для системних класів.
Вимкнення тверджень
Ми також можемо відключити твердження за допомогою командного рядка.
Загальний синтаксис для вимкнення тверджень у Java:
java –da arguments
АБО
java –disableassertions arguments
Подібно для вимкнення тверджень у системних класах ми використовуємо такий синтаксис:
java – dsa: arguments
АБО
java –disablesystemassertions:arguments
Ключове слово “assert” у Java
Мова Java передбачає ключове слово „assert”, що дозволяє розробникам перевірити припущення, які вони зробили щодо програми або стану програми.
Тож ми можемо використовувати ключове слово „assert”, щоб надати твердження на Java, щоб перевірити умови, які в іншому випадку можуть перешкодити програмі працювати безперебійно.
Ключове слово 'assert' використовується з Java 1.4, але залишається маловідомим ключовим словом у Java. Коли ми використовуємо ключове слово assert у Java, ми маємо це робити у твердженні Assert.
Затвердити заяву на Java
У Java заява assert починається з ключового слова ‘актив’, за яким слідує логічний вираз.
Оператор assert на Java можна записати двома способами:
- стверджувати вираз;
- стверджувати вираз1: вираз2;
В обох підходах вирази, що використовуються з ключовим словом Assert, є булевими виразами.
Розглянемо наступне твердження як приклад.
assert value >= 10 : “greater than 10”;
Тут оператор assert перевіряє стан, і якщо умова відповідає дійсності, друкується повідомлення. Таким чином, ми також можемо мати твердження з нашим повідомленням.
Як використовувати Assert у Java
Наразі ми обговорювали ключове слово assert та statement на Java. Тепер давайте розглянемо приклад, щоб продемонструвати, як використовувати assert в Java.
Щоб додати твердження, нам потрібно просто додати твердження утвердження наступним чином:
public void setup_connetion () { Connection conn = getConnection (); assert conn != null; }
Ми також можемо дати вищезазначене твердження по-різному, як показано нижче:
public void setup_connection () { Connection conn = getConnection (); assert conn != null: “Connection is null”; }
Обидві вищенаведені конструкції коду перевіряють, чи повернення повертає ненульове значення. Якщо воно повертає нульове значення, тоді JVM видасть помилку - AssertionError. Але у другому випадку в інструкції assert надається повідомлення, тому це повідомлення буде використано для побудови AssertionError.
У другому випадку з увімкненими твердженнями виняток буде виглядати так:
Exception in thread 'main' java.lang.AssertionError: Connection is null at line numbers…
Приклад затвердження в Java
Давайте реалізуємо приклад використання тверджень у Java.
public class Main { public static void main(String() args) { try { System.out.println('Testing Assertions...'); assert true : 'We don't see this.'; assert false : 'Visible if assertions are ON.'; } catch (AssertionError e) { e.printStackTrace(); } } }
Вихідні дані
Вищезазначений результат подається, коли твердження не активовано. Якщо твердження було ввімкнено, то відобразиться друге повідомлення (твердження про хибність).
Тепер продемонструємо ще один приклад . Зверніть увагу, що тут ми включили твердження в Java на нашому комп'ютері, де ми запускаємо цю програму.
class Main { public static void main(String args()) { String() weekends = {'Friday', 'Saturday', 'Sunday'}; assert weekends.length == 2; System.out.println('We have ' + weekends.length + ' weekend days in a week'); } }
Вихідні дані
Оскільки тривалість вихідних не відповідає довжині, зазначеній у твердженні твердження, виникає вищезазначений виняток. Якби твердження було вимкнено, програма показала б вказане повідомлення замість твердження про виключення.
Чому твердження використовуються в Java?
Ми використовуємо твердження в нашій програмі Java, щоб переконатися, що припущення, зроблені нами в нашій програмі, є правильними.
Наприклад, якщо ми хочемо переконатися, що код, який здається недосяжним, насправді недосяжний. Або ми хочемо переконатися, що будь-яка змінна має значення у вказаному діапазоні.
Коли ми робимо таке припущення, ми надаємо твердження, щоб переконатися, що вони справді правильні.
Часті запитання
Q # 1) Чи викидає assert виняток Java?
Відповідь: Assert зазвичай видає “AssertionError”, коли зроблене припущення помилкове. AssertionError поширюється на клас Error (який зрештою поширюється на Throwable).
Питання 2) Що відбувається, коли в Java не вдається виконати твердження?
Відповідь: Якщо твердження ввімкнені для програми, в якій твердження не вдається, тоді воно видасть AssertionError.
Q # 3) Що повертає assert у Java?
Відповідь: Оператор assert оголошує логічну умову, яка, як очікується, має місце в програмі. Якщо ця логічна умова має значення false, тоді під час виконання видається AssertionError за умови, що твердження увімкнено.
Якщо припущення правильне, то логічна умова поверне істину.
Q # 4) Чи можемо ми вловити помилку твердження?
Відповідь: Помилка AssertionError, викинута заявою assert, є неперевіреним винятком, який поширює клас Error. Таким чином, твердження не вимагають їх явного декларування, а також немає необхідності намагатися їх відловлювати.
Q # 5) Як ви заявляєте виняток?
Відповідь: Щоб затвердити виняток, ми оголошуємо об'єкт ExpectedException таким чином:
public ExpectedException виняток = ExpectedException. немає ();
Потім ми використовуємо методи очікуваного () та очікуваного message () методу Test, щоб затвердити виняток і надати повідомлення про виключення.
найкращий веб-сайт конвертера YouTube у mp3
Висновок
На цьому ми закінчили цей посібник із тверджень на Java. Ми обговорили визначення та мету тверджень на Java. Щоб використовувати твердження в програмі Java, ми повинні спочатку дозволити їм використовувати командний рядок.
Ми дослідили різні способи, за допомогою яких ми можемо увімкнути твердження на рівні програми, рівня пакета, рівня каталогів тощо. Обговорювалось твердження ключових слів та твердження в Java та їх детальний синтаксис із прикладами програмування. Заяви щодо ключових слів і об’єктів активів допомагають нам використовувати твердження.
Ми побачили, що AssertionError видається, коли твердження не вдається. Твердження в Java в основному використовуються під час компіляції, і за замовчуванням вони вимкнені під час виконання.
Крім того, твердження в основному використовуються в рамках JUnit Java, в якому ми пишемо тестові приклади для тестування додатків.
=> Прочитайте серію Easy Java Training.
Рекомендована література
- Твердження в селені за допомогою середовищ Junit та TestNG
- Приклади твердження селену - практичне застосування в проектах
- Твердження в SOAtest на прикладі коду XML
- C ++ Assert (): обробка тверджень у C ++ з прикладами
- Розуміння тверджень у SoapUI - Підручник SoapUI No5
- Підручник JAVA для початківців: 100+ практичних відео-підручників Java
- Нерівний масив у Java - Підручник із прикладами
- Java-типи даних, цикли, масиви, комутатори та твердження