Све што треба да знате о ТестНГ напоменама у селену



Овај чланак о ТестНГ напоменама у селенијуму помоћи ће вам да разумете разне напомене које ТестНГ подржава у селенијуму помоћу примера.

Још од концепта је уведено, развило се пуно методологија тестирања, парадигме су се промениле, али захтеви су некако тријумфовали да остану стални. Једна од таквих методологија је ТестНГ што нам помаже да помоћу примера групишемо тест случајеве у различите одељке кода. Али како то функционише? Да схватимо овај концепт посредством овог чланка о ТестНГ Аннотатионс у .

У овом чланку ћу обрађивати доле наведене теме:





како се користе параметри у табели

Увод у ТестНГ

ТестНГ означава Тестирајте следећу генерацију и то је оквир за аутоматизацију тестова отвореног кода инспирисан ЈУнит-ом и НУнит-ом. Добро, ТестНГ није само инспирисана, већ је надограђена верзија ова два оквира. Па, шта је овде надоградња? Надоградња ТестНГ-а је у томе што пружа додатне функције као што су анотације теста, груписање, одређивање приоритета, параметрирање и технике секвенцирања у коду, што раније није било могуће.

Увод у ТестНГ - Напомене за ТестНГ - ЕдурекаНе само да управља тест случајевима, већ се чак и детаљни извештаји о тестовима могу добити помоћу ТестНГ-а. Биће детаљан резиме који ће приказати број тест случајева који нису успели. Такође, грешке се могу тачно лоцирати и поправити најраније. Сада када знате шта је ТестНГ, хајде да видимо зашто користити ТестНГ у селенијуму.



Зашто користити ТестНГ у селену?

Програмери софтвера из целог света једногласно ће се сложити да писање кода у тестним случајевима штеди добар део њиховог времена за отклањање грешака. Зашто? То је зато што тест примери помажу у стварању робусног кода без грешака разбијањем целокупног кода на мање тест случајеве, а затим проценом сваког од ових тестних случајева да ли пролази / не успијева, можете створити код без грешака. Од не подржава извршавање кода у тест случајевима, ТестНГ долази на слику која ће помоћи у извршењу тест случајева.

ТестНГ такође подржава следеће функције:

  • Генерише извештај у одговарајућем формату који укључује низ извршених тест случајева, број неуспелих тест случајева и прескочених случајева.
  • Вишеструки тест примери могу се лакше груписати претварањем у датотеку ТестНГ.кмл. Овде можете поставити приоритете за извршавање тест случајева.
  • Користећи ТестНГ, можете извршити више тест случајева на више прегледача, тј. тестирање више прегледача .
  • Оквир за тестирање може се лако интегрисати са алатима попут Мавен, Јенкинс итд.

Сада када знате шта је ТестНГ и зашто се користи, идемо даље и упознајмо разне напомене које ТестНГ подржава у селенијуму.

Биљешке о тестирању

Биљешке ТестНГ-а у селенијуму се користе за контролу наредне методе која ће се извршити. Ознаке теста су дефинисане пре сваке методе у коду теста. У случају да ниједан метод нема префикс са напоменама, тада ће се тај метод занемарити и неће се извршити као део тест кода. Да би их дефинисали, методе треба једноставно означити са „ @Тест ‘.



Врсте пробних напомена:

Испод је листа напомена које ТестНГ подржава у селену.

  • @БефореМетход: Метода са овом напоменом извршиће се пре сваке @тест анотирани метод.
  • @АфтерМетход: Ово напомена ће се извршити након сваког @тест анотирани метод.
  • @Пре часа: Ова напомена ће се извршити раније прво @Тест извршење методе. Ради само једном по класи.
  • @АфтерЦласс: Т. његова напомена ће се извршити након покретања свих метода испитивања у тренутној класи
  • @БефореТест: Метода са овом напоменом извршиће се раније прво @Тест анотирани метод.
  • @АфтерТест: Метода са овом напоменом извршиће се када све @Тест анотиране методе довршавају извршавање оних класа које су унутар ознаке ТестНГ.кмл датотека.
  • @БефореСуите: Ова напомена ће се покренути само једном пре сви тестови у пакету су покренути
  • @АфтерСуите: Покренуће се метода са овом напоменом једном после извршено је извршавање свих тестова у пакету
  • @БефореГроупс: Овај означени метод ће се покренути пре прве пробне вожње те специфичне групе.
  • @АфтерГроупс: Овај означени метод ће се покренути након свих метода испитивања те групе завршава његово извршење.

Дакле, овде се ради о напоменама у ТестНГ-у. Идемо сада даље и схватимо како да напишемо први тест случај помоћу ТестНГ-а.

Креирање тест случајева помоћу ТестНГ напомена

Различити кораци који су укључени у креирање тест случајева помоћу ТестНГ Аннотатион су следећи:

  1. Направите пројекат и додајте ТестНГ библиотеку.
  2. Направите датотеку класе и кодирајте програм
  3. На крају, напишите КСМЛ датотеку и покрените је на ТестНГ Суите.

Ако желите да уђете у више детаља о писању пробног случаја помоћу ТестНГ-а, онда љубазно погледајте овај чланак Водич за ТестНГ . Идемо сада даље и схватимо како ће вам напомене ТестНГ помоћи да групишете тест случајеве и конфигуришете свој програм.

Тест случај 1:

У овом тест случају, користићу три различите напомене и кодирати програм. Хајде да разумемо како то да урадимо на примеру у наставку.

пакет цо.едурека.пагес импорт орг.опенка.селениум.ВебДривер импорт орг.опенка.селениум.цхроме.ЦхромеДривер импорт орг.тестнг.Ассерт импорт орг.тестнг.аннотатионс.АфтерТест импорт орг.тестнг.аннотатионс.БефореТест импорт орг.тестнг .аннотатионс.Тест јавна класа АннотатионЕкампле {публиц Стринг басеУрл = 'хттпс://ввв.едурека.цо/' Стринг дриверПатх = 'Ц: //Усерс//Неха_Ваидиа//Десктоп//цхромедривер_вин32//цхромедривер.еке' публиц ВебДривер дривер @БефореТест публиц воид лаунцхБровсер () {Систем.оут.принтлн ('покретање Цхроме прегледача') Систем.сетПроперти ('вебдривер.цхроме.дривер', дриверПатх) дривер = нови ЦхромеДривер () дривер.гет (басеУрл)} @Тест публиц воид верифиХомепагеТитле () Стринг очекујеТитле = 'Онлине тренинг под водством инструктора са 24Кс7 доживотном подршком @АфтерТест јавна празнина терминатеБровсер () {дривер.цлосе ()}}

У основи, желим да проверим да ли се стварни наслов веб странице Едурека подудара са очекиваним насловом или не. Дакле, прво користим „ @БефореТест ’ Напомена и стварање инстанце управљачког програма прегледача и кретање кроз веб страницу Едурека помоћу дривер.гет () метода. Ово су кораци које треба извршити пре теста.

Даље, током овог теста желим да проверим да ли се подударају очекивани наслов и стварни наслов. Због тога прецизирам све кораке помоћу @Тест Аннотатион. Коначно, желим да затворим управљачки програм и да завршим прегледник након теста. Због тога користим @АфтерТест Напомена и затварање возача. Дакле, овако групишем цео код у разне напомене и извршавам тест случај. Покренимо програм као ТестНГ Тест и проверимо излаз.

На снимку можете видети да се тест случај успешно покренуо на подразумеваном тесту и пакету. Такође, тест је прошао и такође нема неуспеха.

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

створити низ објеката

Ток извршавања напомена биће онакав како је приказан на горњој снимци. Сада да видимо још један пример за разумевање истог.

Тест случај 2:

пакет цо.едурека.пагес импорт орг.тестнг.аннотатионс.АфтерЦласс импорт орг.тестнг.аннотатионс.АфтерМетход импорт орг.тестнг.аннотатионс.АфтерСуите импорт орг.тестнг.аннотатионс.АфтерТест импорт орг.тестнг.аннотатионс.БефореЦласс импорт орг.тестнг .аннотатионс.БефореМетход импорт орг.тестнг.аннотатионс.БефореСуите импорт орг.тестнг.аннотатионс.БефореТест импорт орг.тестнг.аннотатионс.Тест публиц цласс тестнгАннотатионс {// Тест Цасе 1 @Тест публиц воид тестЦасе1 () {Систем.оут.принтлн ('Тест Цасе 1')} // Тест Цасе 2 @Тест публиц воид тестЦасе2 () {Систем.оут.принтлн ('Тест Цасе 2')} @БефореМетход јавна празнина бефореМетход () {Систем.оут.принтлн ('Пре Метод ')} @АфтерМетход јавна празнина афтерМетход () {Систем.оут.принтлн (' После методе ')} @БефореЦласс јавна празнина бефореЦласс () {Систем.оут.принтлн (' Пре класе ')} @АфтерЦласс јавна празнина афтерЦласс ( ) {Систем.оут.принтлн ('Афтер Цласс')} @БефореТест јавна празнина бефореТест () {Систем.оут.принтлн ('Пре теста')} @АфтерТест јавна празнина афтерТест () {Систем.оут.принтлн ('После теста')} @БефореСуите јавна празнина бефореСуите () {Систем.оут.принтлн ('Пре Суите')} @АфтерСуите јавна празнина афтерСуите () {Систем.оут.принтлн ( 'Афтер Суите')}}

У горњем коду насумично записујем све методе са напоменама. Не следим редослед. Али, када извршим програм, он ће следити исти редослед. Проверимо сада излаз.

[РемотеТестНГ] је открио ТестНГ верзију 6.14.2 Пре скупа Пре теста Пре класе Пре методе Тест случај 1 После методе Пре методе Тест случај 2 После методе После класе После теста ПАССЕД: тестЦасе1 ПАССЕД: тестЦасе2 =========== ==================================== Подразумевани тест Покретање тестова: 2, неуспеха: 0, прескакања: 0 =================================================== Афтер Суите = ================================================ Подразумевани пакет Укупно тестова трчање: 2, неуспеси: 0, прескакање: 0 ========================================= ========

Из горњег излаза можете приметити да је извршио и тест случајеве и пре Суите и Афтер Суите извршене само једном. Такође, тест је успешно покренут на подразумеваном тесту и пакету. Тако треба да извршите тест случајеве помоћу напомена.То нас доводи до краја овог чланка о ТестНГ напоменама у селенијуму.

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

Ако сте пронашли ову „ТестНГ Аннотатионс ин Селениум ”Релевантно, погледајте Едурека, поуздана компанија за учење на мрежи са мрежом од више од 250 000 задовољних ученика раширених широм света.

Имате питање за нас? Наведите то у одељку за коментаре на ТестНГ напомене у селену чланак и јавићемо вам се.