Упозорење о селену & амп; Руковање искачућим прозорима: како поступати?

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

Anonim

У овом упутству ћемо научити како се рукује искачућим прозорима у селенијуму и различитим врстама упозорења која се налазе у тестирању веб апликација. Такође ћемо видети како се рукује упозорењем у програму Селениум ВебДривер и научићемо како прихватамо и одбијамо упозорење у зависности од врсте упозорења.

У овом упутству ћете научити-

  • Шта је Алерт?
  • Како се рукује упозорењем у програму Селениум ВебДривер
  • Како се рукује искачућим прозором Селениум помоћу Вебдривера

Шта је упозорење у селену?

Упозорења у Селен је кутија мала порука која се појављује на екрану како би кориснику неке информације или обавештење. Обавештава корисника са одређеним информацијама или грешкама, тражи дозволу за извршавање одређених задатака, а такође пружа и поруке упозорења.

Ево неколико упозорења у типовима селена:

1) Једноставно упозорење

Једноставна класа упозорења у селенијуму приказује неке информације или упозорења на екрану.

2) промптно упозорење.

Ово промптно упозорење тражи одређени унос од корисника, а селениум вебдривер може уносити текст помоћу тастера за слање („унос

… ").

3) Упозорење о потврди.

Ово упозорење за потврду тражи дозволу за обављање неке врсте операција.

Како се рукује упозорењем у програму Селениум ВебДривер

Интерфејс упозорења пружа следећих неколико метода које се широко користе у програму Селениум Вебдривер.

1) воид дисмисс () // Да кликнете на дугме „Откажи“ упозорења.

дривер.свитцхТо (). алерт (). дисмисс ();

2) воид аццепт () // Да кликнемо на дугме „У реду“ упозорења.

дривер.свитцхТо (). алерт (). аццепт ();

3) Стринг гетТект () // За снимање поруке упозорења.

дривер.свитцхТо (). алерт (). гетТект (); 

4) воид сендКеис (Стринг стрингТоСенд) // За слање неких података у поље упозорења.

дривер.свитцхТо (). алерт (). сендКеис ("Текст");

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

Лако се можемо пребацити на упозорење из главног прозора помоћу Селениум-ове методе .свитцхТо () .

Сада аутоматизујемо доњи сценарио.

У овом сценарију користићемо демо локацију Гуру99 да бисмо илустровали руковање упозорењем Селениум.

Корак 1) Покрените веб прегледач и отворите веб локацију „хттп://демо.гуру99.цом/тест/делете_цустомер.пхп“

Корак 2) Унесите било који ИД купца.

Корак 3) Након уноса корисничког ИД-а, кликните на дугме „Пошаљи“.

Корак 4) Одбијте / прихватите упозорење.

Руковање упозорењем у програму Селениум Вебдривер користећи горњи сценарио

импорт орг.опенка.селениум.Би;импорт орг.опенка.селениум.ВебДривер;импорт орг.опенка.селениум.цхроме.ЦхромеДривер;импорт орг.опенка.селениум.НоАлертПресентЕкцептион;импорт орг.опенка.селениум.Алерт;јавна класа АлертДемо {публиц статиц воид маин (Стринг [] аргс) баца НоАлертПресентЕкцептион, ИнтерруптедЕкцептион {Систем.сетПроперти ("вебдривер.цхроме.дривер", "Г: \\ цхромедривер.еке");Управљачки програм за ВебДривер = нови ЦхромеДривер ();// Руковање порукама упозорењадривер.гет ("хттп://демо.гуру99.цом/тест/делете_цустомер.пхп");дривер.финдЕлемент (Би.наме ("цусид")). сендКеис ("53920");дривер.финдЕлемент (Би.наме ("субмит")). субмит ();// Пребацивање на АлертУпозорење упозорења = дривер.свитцхТо (). Алерт ();// Снимање поруке упозорења.Стринг алертМессаге = дривер.свитцхТо (). Алерт (). ГетТект ();// Приказивање поруке упозорењаСистем.оут.принтлн (алертМессаге);Тхреад.слееп (5000);// Прихватање упозорењаалерт.аццепт ();}}

Излаз:

Када извршите горњи код, он покреће веб локацију. Покушајте да избришете ИД клијента руковањем упозорењем о потврди које се приказује на екрану, а тиме и брисањем ИД-а купца из апликације.

Како се рукује искачућим прозором Селениум помоћу Вебдривера

У аутоматизацији, када имамо више прозора у било којој веб апликацији, активност ће можда требати да пребаци контролу између неколико прозора с једног на други како би се операција довршила. По завршетку операције мора се вратити у главни прозор, односно родитељски прозор у Селенијуму. То ћемо видети даље у чланку са примером.

У веб покретачком програму Селениум постоје методе помоћу којих можемо да радимо са више прозора.

Дривер.гетВиндовХандлес ();

Да бисмо управљали свим отвореним прозорима помоћу веб управљачког програма, можемо да користимо „Дривер.гетВиндовХандлес ()“, а затим можемо да пребацимо прозор из једног прозора у други у веб апликацији. Његов повратни тип је Итератор <Стринг>.

Дривер.гетВиндовХандле ();

Када се страница отвори, са главним прозором морамо да управљамо помоћу дривер.гетВиндовХандле () . Ово ће обрадити тренутни прозор који га јединствено идентификује у овој инстанци управљачког програма. Његов повратни тип је Стринг.

За руковање прозорима у селену, следимо следеће кораке:

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

У овом сценарију користићемо демо локацију „Гуру99“ за илустрацију руковања прозорима.

Корак 1) Покрените веб локацију.

Покрените прегледач и отворите страницу „ хттп://демо.гуру99.цом/попуп.пхп

Корак 2) Кликните на везу „Кликните овде“.

Када корисник кликне на везу „Кликните овде“, отвара се нови подређени прозор.

Корак 3) Отвара се нови прозор детета.

Отвара се нови прозор, затражите од корисника да унесе ИД е-поште и пошаље страницу.

Корак 4) Унесите свој ИД е-поште и пошаљите.

Корак 5) Прикажите акредитиве за приступ приликом слања странице.

Када извршите код, видећете да је подређени прозор отворен на новој картици.

  1. Затворите подређени прозор на којем су приказани акредитиви.
  1. Пребаците се на родитељски прозор.

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

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

Излаз:

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

Вишеструко руковање прозорима у селену

Закључак:

  • Дефинисали смо врсте упозорења и приказали их снимком екрана.
  • Показано руковање упозорењем помоћу Селениум ВебДривер-а користећи одређени сценарио.
  • Обрађивао је више прозора помоћу програма Селениум ВебДривер користећи одређени сценарио.