Слушаоци ТестНГ у селену: ИТестЛистенер & амп; Пример ИТестРесулт

Преглед садржаја:

Anonim

Два су главна слушаоца.

  1. Слушаоци ВебДривер-а
  2. Слушаоци ТестНГ-а

У овом упутству ћемо разговарати о тестнг слушаоцима. Ево шта ћете научити-

  • Шта су слушаоци у ТестНГ-у?
  • Врсте слушалаца у ТестНГ-у
  • Тест сценарио:
  • Кораци за стварање ТестНГ слушаоца
  • Коришћење слушача за више часова.

Шта су слушаоци у ТестНГ-у?

Слушалац је дефинисан као интерфејс који мења подразумевано понашање ТестНГ-а. Као што и само име говори, слушаоци „слушају“ догађај дефинисан у скрипти селена и понашају се у складу с тим. Користи се у селену применом интерфејса слушалаца. Омогућава прилагођавање ТестНГ извештаја или евиденција. Доступно је много врста ТестНГ слушалаца.

Врсте слушалаца у ТестНГ-у

Постоји много врста слушалаца што вам омогућава да промените понашање ТестНГ-а.

Испод је неколико слушалаца ТестНГ-а:

  1. ИАннотатионТрансформер,
  2. ИАннотатионТрансформер2,
  3. ИЦонфигурабле,
  4. ИЦонфигуратионЛистенер,
  5. ИЕкецутионЛистенер,
  6. ИХоокабле,
  7. ИИнвокедМетходЛистенер,
  8. ИИнвокедМетходЛистенер2,
  9. ИМетходИнтерцептор,
  10. ИРепортер,
  11. ИСуитеЛистенер,
  12. ИТестЛистенер.

Изнад интерфејса зову се ТестНГ слушаоци. Ови интерфејси се користе у селену за генерисање дневника или прилагођавање извештаја ТестНГ.

У овом упутству ћемо применити ИТестЛистенер.

ИТестЛистенер има следеће методе

  • ОнСтарт- ОнСтарт метода се позива када започне било који тест.
  • онТестСуццесс- онТестСуццесс метода позива се на успех било ког теста.
  • онТестФаилуре- метода онТестФаилуре позива се на неуспех било ког теста.
  • онТестСкиппед- онТестСкиппед метода позива се на прескочен било који тест.
  • онТестФаиледБутВитхинСуццессПерцентаге- метода се позива сваки пут када Тест не успе, али је унутар процента успеха.
  • онФинисх- онФинисх метода се позива након извршавања свих тестова.

Тест сценарио:

У овом тестном сценарију аутоматизоваћемо поступак пријаве и применити „ИтестЛистенер“.

  1. Покрените Фирефок и отворите веб локацију „хттп://демо.гуру99.цом/В4/“
  1. Пријавите се на апликацију.

Кораци за стварање ТестНГ слушаоца

За горњи тест сценарио, применићемо Слушалац.

Корак 1) Направите класу „ЛистенерТест“ која примењује „ИТестЛистенер“. Пређите мишем преко текста црвених линија и Ецлипсе ће вам предложити 2 брза поправка као што је приказано на доњем екрану:

Само кликните на „Додај непримењене методе“. Вишеструке непримењене методе (без тела) додају се коду. Проверите испод-

пакет Листенер_Демо;импорт орг.тестнг.ИТестЦонтект;импорт орг.тестнг.ИТестЛистенер;импорт орг.тестнг.ИТестРесулт;јавна класа ЛистенерТест имплементира ИТестЛистенер{@Прегазитијавна празнина на Финисх (ИТестЦонтект арг0) {// ТОДО Аутоматски генерисани квар методе}@Прегазитијавна празнина онСтарт (ИТестЦонтект арг0) {// ТОДО Аутоматски генерисани квар методе}@Прегазитијавна празнина онТестФаиледБутВитхинСуццессПерцентаге (ИТестРесулт арг0) {// ТОДО Аутоматски генерисани квар методе}@Прегазитијавна празнина онТестФаилуре (ИТестРесулт арг0) {// ТОДО Аутоматски генерисани квар методе}@Прегазитијавна празнина онТестСкиппед (ИТестРесулт арг0) {// ТОДО Аутоматски генерисани квар методе}@Прегазитијавна празнина онТестСтарт (ИТестРесулт арг0) {// ТОДО Аутоматски генерисани квар методе}@Прегазитијавна празнина онТестСуццесс (ИТестРесулт арг0) {// ТОДО Аутоматски генерисани квар методе}}

Изменимо класу 'ЛистенерТест'. Конкретно, модификоваћемо следеће методе -

онТестФаилуре, онТестСкиппед, онТестСтарт, онТестСуццесс итд.

Измена је једноставна. Само исписујемо назив теста.

Евиденције се креирају у конзоли. Корисник је лако схватити који тест је статус полагања, неуспеха и прескакања.

Након модификације, код изгледа као-

пакет Листенер_Демо;импорт орг.тестнг.ИТестЦонтект;импорт орг.тестнг.ИТестЛистенер;импорт орг.тестнг.ИТестРесулт;јавна класа ЛистенерТест имплементира ИТестЛистенер{@Прегазитијавна празнина на Финисх (резултат ИТестЦонтект){}@Прегазитијавна празнина онСтарт (резултат ИТестЦонтект){}@Прегазитијавна празнина наТестФаиледБутВитхинСуццессПерцентаге (резултат ИТестРесулт){}// Када тест случај не успе, позива се ова метода.@Прегазитијавна празнина онТестФаилуре (резултат ИТестРесулт){Систем.оут.принтлн ("Име тестцасе-а није успело: + Ресулт.гетНаме ());}// Када се прескочи тест случај, позива се ова метода.@Прегазитијавна празнина онТестСкиппед (резултат ИТестРесулт){Систем.оут.принтлн ("Име прескоченог тестцасе-а је: + Ресулт.гетНаме ());}// Када се тест цасе покрене, ова метода се позива.@Прегазитијавна празнина онТестСтарт (резултат ИТестРесулт){Систем.оут.принтлн (Ресулт.гетНаме () + "тест цасе стартед");}// Када тест случај прође, ова метода се позива.@Прегазитијавна празнина онТестСуццесс (резултат ИТестРесулт){Систем.оут.принтлн ("Име прослеђеног тестцасе-а је: + Ресулт.гетНаме ());}}

Корак 2) Направите другу класу „ТестЦасес“ за аутоматизацију процеса пријаве. Селениум ће извршити овај 'ТестЦасес' да би се аутоматски пријавио.

пакет Листенер_Демо;импорт орг.опенка.селениум.Би;импорт орг.опенка.селениум.ВебДривер;импорт орг.опенка.селениум.фирефок.ФирефокДривер;импорт орг.тестнг.Ассерт;импорт орг.тестнг.аннотатионс.Листенерс;Увоз орг.тестнг.аннотатионс.Тест;јавна класа ТестЦасес {Управљачки програм за ВебДривер = нови ФирефокДривер ();// Тест за полагање као за верификацију слушалаца.@Тестјавна празнина Пријава (){дривер.гет ("хттп://демо.гуру99.цом/В4/");дривер.финдЕлемент (Би.наме ("уид")). сендКеис ("мнгр34926");дривер.финдЕлемент (Би.наме ("лозинка")). сендКеис ("амУпену");дривер.финдЕлемент (Би.наме ("бтнЛогин")). цлицк ();}// Овај тест на силу није успео да верификује слушаоца.@Тестјавна празнина ТестТоФаил (){Систем.оут.принтлн ("Ова метода за неуспешно тестирање");Ассерт.ассертТруе (нетачно);}}

Корак 3) Следеће, примените овај слушалац у нашу редовну пројектну класу, тј. „ТестЦасес“. Постоје два различита начина повезивања са класом и интерфејсом.

Први начин је коришћење напомене слушалаца (@Листенерс) као што је приказано доле:

@Листенерс (Листенер_Демо.ЛистенерТест.цласс) 

Ово користимо у класи „ТестЦасес“ како је приказано доле.

Па коначно, класа „ТестЦасес“ изгледа након употребе анотације слушача:

пакет Листенер_Демо;импорт орг.опенка.селениум.Би;импорт орг.опенка.селениум.ВебДривер;импорт орг.опенка.селениум.фирефок.ФирефокДривер;импорт орг.тестнг.Ассерт;импорт орг.тестнг.аннотатионс.Листенерс;импорт орг.тестнг.аннотатионс.Тест;@Листенерс (Листенер_Демо.ЛистенерТест.цласс)јавна класа ТестЦасес {Управљачки програм за ВебДривер = нови ФирефокДривер ();// Тест за полагање као за верификацију слушалаца.@Тестјавна празнина Пријава (){дривер.гет ("хттп://демо.гуру99.цом/В4/");дривер.финдЕлемент (Би.наме ("уид")). сендКеис ("мнгр34926");дривер.финдЕлемент (Би.наме ("лозинка")). сендКеис ("амУпену");дривер.финдЕлемент (Би.ид ("")). цлицк ();}// Присилно није успео на овом тесту као верификовани слушалац.@Тестјавна празнина ТестТоФаил (){Систем.оут.принтлн ("Ова метода за неуспешно тестирање");Ассерт.ассертТруе (нетачно);}}

Структура пројекта изгледа овако:

Корак 4): Извршите класу „ТестЦасес“. Методе у класи „ЛистенерТест“ позивају се аутоматски према понашању метода означених као @Тест.

Корак 5): Потврдите излаз који се евидентира на конзоли.

Излаз из 'ТестЦасес' ће изгледати овако:

[ТестНГ] Покретање:Ц: \ Усерс \ гауравн \ АппДата \ Лоцал \ Темп \ тестнг-ецлипсе - 1058076918 \ тестнг-цустомсуите.кмлТест случаја за пријаву је покренутИме положеног тестцасе-а је: ЛогинТестТоФаил тест случај је покренутОвај метод за тестирање није успеоИме тестцасе-а није успело: ТестТоФаилПРОШЛО: ПријаваФАИЛЕД: ТестТоФаилјава.ланг.АссертионЕррор: очекивано [тачно], али пронађено [нетачно] 

Коришћење слушача за више часова.

Ако пројекат има више класа, додавање слушалаца сваком од њих може бити гломазно и склоно грешкама.

У таквим случајевима можемо створити тестнг.кмл и додати ознаку слушалаца у КСМЛ.

Овај слушалац је примењен у читавом скупу за тестирање, без обзира на број часова које имате. Када покренете ову КСМЛ датотеку, слушаоци ће радити на свим поменутим класама. Такође можете пријавити било који број класе слушалаца.

Резиме:

Слушаоци су дужни да генеришу евиденције или прилагоде ТестНГ извештаје у програму Селениум Вебдривер.

  • Постоји много врста слушалаца и они се могу користити према захтевима.
  • Слушаоци су интерфејси који се користе у скрипти за селенов веб управљачки програм
  • Показао употребу слушаоца у селену
  • Примењени су слушаоци за више класа