ЈУнит пружа могућност праћења изузетка и такође провере да ли код баца очекивани изузетак или не.
Јунит4 пружа једноставан и читљив начин за тестирање изузетака, који можете користити
- Необавезни параметар (очекује се) напомене @тест и
- За тражење информација може се користити „фаил ()“
Док тестирате изузетак, морате осигурати да је класа изузетака коју пружате у том опционалном параметру @ тест анотације иста. То је зато што очекујете изузетак од методе коју користите Јединствено тестирање, у супротном наш ЈУнит тест неће успети.
Пример @ тест (очекује се = ИллегалАргументЕкцептион.цласс)
Коришћењем параметра „очекује се“ можете одредити име изузетка које наш тест може да пружи. У горњем примеру користите „ ИллегалАргументЕкцептион“ који ће се бацити тестом ако програмер користи аргумент који није дозвољен.
Пример коришћења @тест (очекује се)
Хајде да разумемо тестирање изузетака стварањем Јава класе методом која баца изузетак. Ви ћете то решити и тестирати на тесту. Размислите о томе да ЈУнитМессаге.јава има методу која једноставно врши математичку операцију на основу уноса који је корисник примио. Ако се унесе било који незаконит аргумент, бациће „АритхметицЕкцептион “ . Види доле:
пакет гуру99.јунит;јавна класа ЈУнитМессаге {приватна стринг порука;публиц ЈУнитМессаге (Стринг мессаге) {тхис.мессаге = мессаге;}публиц воид принтМессаге () {Систем.оут.принтлн (порука);инт подела = 1/0;}јавни Стринг принтХиМессаге () {мессаге = "Здраво!" + порука;Систем.оут.принтлн (порука);повратна порука;}}
Објашњење кода:
- Шифра 7: Стварање параметризованог конструктора са иницијализацијом поља.
- Линија кода 11-14: Стварање методе за математичку операцију.
- Редак 18: Стварање другог метода за штампање поруке.
- Кодни ред 20: Стварање новог низа за штампање поруке.
- Линија 21: Штампање нове поруке креиране у реду 20.
Направимо тест класу за горњу јава класу да бисмо верификовали изузетак.
Погледајте доле класу теста за изузетак јединичног теста (АритхметицЕкцептион овде) избацивање из горње јава класе:
АиртхематицТест.јава
пакет гуру99.јунит;импорт статиц орг.јунит.Ассерт.ассертЕкуалс;импорт орг.јунит.Тест;јавна класа АиртхематицТест {порука јавног низа = "Саурабх";ЈУнитМессаге јунитМессаге = ново ЈУнитМессаге (порука);@Тест (очекује се = АритхметицЕкцептион.цласс)јавни воид тестЈУнитМессаге () {Систем.оут.принтлн ("Јунит порука се исписује");јунитМессаге.принтМессаге ();}@Тестјавни воид тестЈУнитХиМессаге () {мессаге = "Здраво!" + порука;Систем.оут.принтлн ("Јунит порука се исписује");ассертЕкуалс (мессаге, јунитМессаге.принтМессаге ());}}
Објашњење кода:
- Кодни ред 13: Коришћење ознаке @Тест за креирање нашег теста. Док извршавате методу изнад класа, она ће позвати математичку операцију. Овде се очекује аритметичка изузетак, па га наводите као параметар у @Тест.
- Линија кода 17: Позивање принтМессаге () ЈУнитМессаге.јава
- Кодни ред 18: Стварање другог метода за испис ХИ поруке.
Ако извршите ову класу теста, метода теста се извршава са сваким дефинисаним параметром. У горњем примеру, метода испитивања се извршава пет пута.
Извршимо га и проверимо резултат. Погледајте испод класу тест руннер за извршавање ЈунитТестЕкампле.јава
Излаз:
Ево излаза који показује успешан тест без трага отказа како је дато у наставку:
Резиме:
- Тестирање изузетака је посебна карактеристика уведена у ЈУнит4. У овом упутству сте научили како да тестирате изузетак у ЈУнит-у помоћу @тест (изузето)
- Јунит пружа могућност праћења изузетка и такође провере да ли код даје изузетак или не
- За тестирање изузетака можете да користите
- Необавезни параметар (очекује се) напомене @тест и
- За тражење информација може се користити „фаил ()“