Шта је Јунит Ассерт?
Исправљање је метода корисна у одређивању статуса пролазности или неуспеха тест случаја. Методе потврде обезбеђује класа орг.јунит.Ассерт која проширује класу јава.ланг.Објецт.
Постоје разне врсте тврдњи као што су Боолеан, Нулл, Идентицал итд.
Јунит нуди класу названу Ассерт, која пружа гомилу метода тврђења корисних за писање тест случајева и откривање неуспеха теста
Методе потврде пружа класа орг.јунит.Ассерт која проширује класу јава.ланг.Објецт .
У овом упутству ћете научити-
- ЈУнит Ассерт методе
- Боолеан
- Нулл објецт
- Идентично
- Утврдити једнако
- Тврдите да је низ једнако
- Порука о неуспеху
- ЈУнит ассертЕкуалс
- Тврдње са покретном тачком
- Пример ЈУнит Ассерт
ЈУнит Ассерт методе
Боолеан
Ако желите да тестирате логичке услове (тачно или нетачно), можете да користите следеће методе тврђења
- ассертТруе (стање)
- ассертФалсе (стање)
Овде је услов логичка вредност.
Нулл објецт
Ако желите да проверите почетну вредност објекта / променљиве, имате следеће методе:
- ассертНулл (објект)
- ассертНотНулл (објект)
Овдје је објект Јава објект, нпр. АссертНулл (стварни);
Идентично
Ако желите да проверите да ли су објекти идентични (тј. Упоређујући две референце на исти јава објекат) или различити.
- ассертСаме (очекивано, стварно), Вратиће тачно ако се очекује == стварно
- ассертНотСаме (очекивано, стварно)
Утврдити једнако
Ако желите да тестирате једнакост два објекта, имате следеће методе
- ассертЕкуалс (очекивано, стварно)
Вратиће тачно ако: очекује.екуалс (стварни) враћа тачно.
Тврдите да је низ једнако
Ако желите да тестирате једнакост низова, имате следеће методе како је дато у наставку:
- ассертАрраиЕкуалс (очекивано, стварно)
Горња метода се мора користити ако низови имају исту дужину, за сваку важећу вредност за и можете је проверити како је дато у наставку:
- ассертЕкуалс (очекивано [и], стварно [и])
- ассертАрраиЕкуалс (очекивано [и], стварно [и])
Порука о неуспеху
Ако желите да избаците било какву грешку у тврдњи, имате неуспех () који увек резултира пресудом о неуспеху.
- Неуспех (порука);
Можете имати методу тврђења са додатним параметром Стринг као првим параметром. Овај низ ће бити додат поруци о неуспеху ако тврдња не успе. Нпр. Неуспех (порука) се може записати као
- ассертЕкуалс (порука, очекивана, стварна)
ЈУнит ассертЕкуалс
Имате ассертЕкуалс (А, Б) која се ослања на једнаким () метод класе Објецт.
- Овде ће се оценити као а.екуалс (б).
- Овде се класа која се тестира користи за одређивање одговарајуће релације једнакости.
- Ако класа не замени методу екуалс () класе Објецт , добиће подразумевано понашање методе екуалс () , односно идентитет објекта.
Ако су а и б примитиви као што су бите , инт , боолеан итд., Тада ће се за ассертЕкуалс (а, б) урадити следеће:
а и б ће се претворити у њихов еквивалентни тип објекта омотача ( Бите, Интегер , Боолеан , итд.), а затим ће се израчунати а.екуалс (б) .
На пример: Размотрите доле поменуте низове који имају исте вредности, хајде да их тестирамо помоћу ассертТруе
Стринг обј1 = "Јунит";Стринг обј2 = "Јунит";ассертЕкуалс (обј1, обј2);
Изнад изјаве ассерт вратиће труе као што обј1.екуалс (обј2) враћа труе.
Тврдње са покретном тачком
Када желите да упоредите типове с помичним зарезом (нпр. Двоструки или с помичним зарезом ), потребан вам је додатни потребан параметар делта да бисте избегли проблеме са грешкама заокруживања приликом упоређивања са помичном зарезом.
Тврдња процењује како је дато у наставку:
- Матх.абс (очекивано - стварно) <= делта
На пример:
ассертЕкуалс (аДоублеВалуе, анотхерДоублеВалуе, 0,001)
Пример ЈУнит Ассерт
Испод је приказано како се тврди стање помоћу ЈУнит метода утврђивања.
Створимо једноставну тест класу под називом Јунит4АссертионТест.јава и класу тест руннера ТестРуннер.јава .
Створићете неколико променљивих и важне изјаве за потврду у ЈУнит-у.
У овом примеру ћете извршити нашу тест класу помоћу ТестРуннер.јава
Корак 1) Хајде да креирамо класу која покрива све важне методе тврђења у јунит-у:
Јунит4АссертионТест.јава
пакет гуру99.јунит;увези статички орг.јунит.Ассерт. *;импорт орг.јунит.Тест;јавна класа Јунит4АссертионТест {@Тестпублиц воид тестАссерт () {// Декларација променљивеСтринг стринг1 = "Јунит";Стринг стринг2 = "Јунит";Стринг стринг3 = "тест";Низ стринг4 = "тест";Низ стринг5 = нулл;инт променљива1 = 1;инт променљива2 = 2;инт [] аиретхематицАррари1 = {1, 2, 3};инт [] аиретхематицАррари2 = {1, 2, 3};// Утврдити изјавеассертЕкуалс (стринг1, стринг2);ассертСаме (стринг3, стринг4);ассертНотСаме (стринг1, стринг3);ассертНотНулл (стринг1);ассертНулл (стринг5);ассертТруе (променљива1 <променљива2);ассертАрраиЕкуалс (аиретхематицАррари1, аиретхематицАррари2);}}
Корак 2) Треба да креирате пробну класу тркача за извршавање изнад класе:
ТестРуннер.јава
пакет гуру99.јунит;импорт орг.јунит.руннер.ЈУнитЦоре;импорт орг.јунит.руннер.Ресулт;импорт орг.јунит.руннер.нотифицатион.Фаилуре;јавна класа ТестРуннер {јавна статичка воид главна (Стринг [] аргс) {Резултат резултата = ЈУнитЦоре.рунЦлассес (Јунит4АссертионТест.цласс);фор (неуспех неуспеха: ресулт.гетФаилурес ()) {Систем.оут.принтлн (фаилуре.тоСтринг ());}Систем.оут.принтлн ("Резултат ==" + ресулт.васСуццессфул ());}}
Корак 3) Омогућимо анализу очекиваних резултата корак по корак:
Размотрите све тврдње једну по једну:
- ассертЕкуалс (стринг1, стринг2);
Сада упоредите стринг1 = "Јунит" са стринг2 = "Јунит" са једнаком методом класе објекта. Замена методе ассертЕкуалс из методе јава.ланг.Објецт.екуалс ():
стринг1.екуалс (стринг2) => враћа труе
Дакле, ассертЕкуалс (стринг1, стринг2) ће вратити труе .
- ассертСаме (стринг3, стринг4);
Функција „ассертСаме ()“ је да провери да ли се два објекта односе на исти објекат.
Пошто стринг3 = "тест" и стринг4 = "тест" значе да су и стринг3 и стринг4 истог типа, па ће ассертСаме (стринг3, стринг4) вратити труе .
- ассертНотСаме (стринг1, стринг3);
Функција „ассертНотСаме ()“ је да провери да се два објекта не односе на исти објекат.
Пошто стринг1 = "Јунит" и стринг3 = "тест" значе да су и стринг1 и стринг3 различитих типова, па ће ассертНотСаме (стринг1, стринг3) вратити труе .
- ассертНотНулл (стринг1);
Функција „ассертНотНулл ()“ је да провери да објекат није нулл.
Будући да је стринг1 = "Јунит", што није нула вриједност, ассертНотНулл (стринг1) ће вратити труе .
- ассертНулл (стринг5);
Функција „ассертНулл ()“ је да провери да ли је објекат нулл.
Будући да је стринг5 = нулл, што је нула вриједност, ассертНулл (стринг5) ће вратити труе .
- ассертТруе (променљива1 <променљива2);
Функција „ассертТруе ()“ је да провери да ли је услов тачан.
Пошто је променљива1 = 1 и променљива2 = 2, што показује да је променљива1 <променљива2 услов тачна, па ће ассертТруе (променљива1 <променљива2) вратити тачно .
- ассертАрраиЕкуалс (аиретхематицАррари1, аиретхематицАррари2);
Функција „ассертАрраиЕкуалс ()“ је да провери да ли су очекивани низ и резултујући низ једнаки. Тип низа може бити инт, лонг, схорт, цхар, бите или јава.ланг.Објецт.
Будући да су аиретхематицАррари1 = {1, 2, 3} и аиретхематицАррари2 = {1, 2, 3} што показује да су оба поља једнака, па ће ассертАрраиЕкуалс (аиретхематицАррари1, аиретхематицАррари2) вратити труе
С обзиром да свих седам изјава за потврду класе Јунит4АссертионТест.јава враћа тачно, стога, када извршите тест класе за полагање , вратиће успешан тест. (погледајте излаз испод)
Корак 4) Десни клик на Јунит4АссертионТест.јава и кликните на рунАс-> ЈУнит. Видећете излаз као што је дато у наставку:
Изнад резултата приказан је успешан резултат теста како се очекивало.
Резиме:
У овом упутству сте научили све важне типове метода тврђења које пружа ЈУнит. Такође сте видели примере изјава за тврдњу. Што показује да ако сви изрази за потврђивање врате труе, тада ће тест ГУИ вратити истинит резултат, а ако појединачни тест не успије, вратиће неуспјели резултат.