Постављање селенске мреже за дистрибуирано тестирање селена



Овај блог ће вам помоћи да разумете потребу за Селениум Грид и његове предности. Прочитајте га да бисте подесили своју прву селениум мрежу конфигурисањем чворишта и чворова.

Остали блогови у овој серији водича за Селениум говоре о стварању тест случајева и извршавању тих тест случајева у низу и паралелно. Дакле, коначна техника која остаје за дискусију је извршавање тест случајева на удаљеним машинама. Селениум Грид се може користити за извршавање ових тестова на удаљеним машинама / хостовима. Отуда је то тема расправе данашњег блога.

  1. Зашто и када користити Селениум Грид?
  2. Шта је селенска мрежа?
  3. Селениум Грид 1 вс. Селениум Грид 2
  4. Архитектура селенске мреже
  5. Изградња селенске мреже

Зашто и када користити селенску мрежу?

Постоји толико много веб прегледача који су данас у употреби. Корисници можда користе Цхроме или Фирефок или Сафари или Опера или чак Интернет Екплорер за читање овог блога. Можда користе различите верзије прегледача. Они такође могу да користе ове прегледаче на било ком ОС-у, било да је то Виндовс или Мац или Убунту, или било која друга дистрибуција Линука.





Шта ако су корисници видели нешто важно на Интернету? Нешто важно за ваше пословање. Да ли не бисте желели да пређете тај додатни километар (тестирање веб апликације) само да бисте осигурали да ваши корисници и / или купци добију најбоље корисничко искуство? Би, зар не?

Па, требао би!



Али питање је колико је то изводљиво? Да ли ћете моћи да потрошите време тестирајући своју веб апликацију на свим могућим ОС-има и свим доступним веб прегледачима? Хмм, то звучи као изазов. Овде се селенска мрежа уклапа у рачун и помажеуштедите време и енергију.

<> оператор у скл

Уз ово, поставља се још једно питање, да ли је одрживо поставити мрежну инфраструктуру Селениум користећи локалне системе? Одржавање мреже са свим потребним прегледачима и оперативним системима је изазов. Због тога постоји више мрежних платформи које нуде мрежну мрежу Селениум којој можете приступити за покретање скрипти за аутоматизацију селена. На пример, можете користити ЛамбдаТест . Има више од 2000 окружења претраживача у којима можете да покренете своје тестове и заиста аутоматизујете тестирање више прегледача.

Шта је селенска мрежа?

Селениум Грид је још један важан алат у пакету алата Селениум. Грид је способан да координира ВебДривер тестовима / РЦ тестовима који се могу истовремено покретати на више веб прегледача или могу бити покренути на различитим оперативним системима или чак хостовани на различитим машинама.



мрежа ради - селенска мрежаПа, како то иде? Грид користи Хуб-Ноде архитектуру, где постоји један Хуб, који делује као главни и један или више чворова који делују као славе.

Шта то значи, ако имате укупно 100 послова / тестова које треба извршити, тада се тестови могу истовремено извршити на 5 машина, где ће свака машина изводити 20 тестова. Заправо, ове тестове можете извршити у различитим комбинацијама оперативних система и прегледача. Свака машина овде може бити различитог ОС, а унутар сваког ОС тестови се могу изводити на различитим прегледачима.

Овај чин би вам уштедео много времена у извршавању теста. Ако узмете у обзир горњи пример, тада можемо смањити време извршавања на око 1/5 укупног времена потребног за извршавање тестова на једној машини.

Ако се сећате мојих претходних блогова, небројено пута сам споменуо да је Грид био део пројекта Селениум од његовог оснивања, тј. Од Селениум в1. Селениум Грид је такође био део Селениум в2 и тренутно је део Селениум в3. Нема велике разлике у в2 и в3 селенске мреже. Међутим, в1 има пуно разлика у поређењу. Па хајдеразуме разлике између в1 и в2.

Селениум Грид 1 вс. Селениум Грид 2

Основна разлика између Грид в1.0 и в2.0 је у томе што је РЦ коришћен у Грид 1, а ВебДривер у Грид 2. Табела у наставку детаљно објашњава разлике.

Мрежа 1 Мрежа 2
Захтева инсталирање Апацхе АнтИнсталација Апацхе Ант није потребна
Има свој даљински управљач (ово се разликује од РЦ сервера)У комплету са јар датотеком Селениум Сервер
Подржава само селениум РЦ наредбеПодржава и Селениум РЦ и ВебДривер скрипте
Можете да аутоматизујете само један прегледач по даљинском управљачуМожете аутоматизовати до 5 прегледача по даљинском управљачу


Сад кад смо научили основне разлике између две верзије, заронимо дубоко у Селениум Грид.

Архитектура селенске мреже

Као што сам раније поменуо, Грид функционише на основу једног чворишта и више чворова. Али, шта су чвориште и чворови и шта раде?

Средиште

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

Да би се то догодило, прво морамо да конфигуришемо чвориште, а затим направимо друге чворове да се региструју у чвориште. Пре него што уђем у превише детаља, дозволите ми да вам покажем команду за конфигурисање чворишта.

Конфигурисање чворишта

Прво морате да преузмете датотеку ЈАР датотеке селениум сервера са веб локације Селениумхк. Веза је овде . Такође морате бити сигурни да је Јава инсталирана у ваш систем и да су постављене променљиве окружења.

Након што преузмете јар датотеку, потребно је да је поставите у одговарајући директоријум. Због моје удобности преузео сам га и ставио у директоријум Селениум на Ц диску. Препоручује се да преузмете и јар датотеку и поставите је у сличан директоријум у свим осталим чворовима.

Да бисте конфигурисали чвориште, потребно је да покренете команду у Виндовс командној линији. Команда је присутна у доњем исечку.

Ц: УсерсВардхан> цд .. Ц: Усерс> цд .. Ц:> цд Селениум Ц: Селениум> јава -јар селениум-сервер-стандалоне-3.4.0.јар -роле хуб

Тхе селениум-сервер-стандалоне-3.4.0.јар је назив јар датотеке коју сам преузео.
Тхе -улога застава се користи за постављање тог одређеног рачунара рачунара као чворишта. Када притиснете ентер, на екрану ћете добити доњи излаз.

У случају да нисте приметили горњи снимак екрана, погледајте га поново. Пише ' -Чворови треба да се региструју на хттп://192.168.0.11:4444/грид/регистер ‘. Сада када је чвориште конфигурисано, морамо да поставимо чворове и повежемо их са овим чвориштем.

192.168.0.11 је ИП адреса чворишта и сваки чвор треба да се повеже са овом ИП адресом. 4444 је подразумевани број порта на којем се селениум грид хостује и ослушкује захтеве. Ако се нека друга услуга изводи на порту 4444 и желите да се Селениум Грид хостује на другом порту, онда то можете учинити тако што ћете навести -Лука застава праћена бројем луке.

Чворови

Чворови су рачунари домаћини на којима се покрећу тестови. Ове тестове ће покренути Хуб. Чвориште може да покрене један или више чворова или на удаљеним машинама или на истој машини где се налази сам чвориште. На сваком од чворова могу се покренути различити оперативни системи, а на различитим оперативним системима могу се покренути различите верзије истог прегледача или различитих прегледача.

Конфигурисање чворова

Слично као чвориште, прво морате да преузмете датотеку Јар у Ноде машине и да је ставите на Ц погон или било који други уобичајени директоријум ради ваше удобности. Затим можете да покренете доњу команду у Виндовс командној линији. Ако покрећете чак и чвор на истој машини као и ваш чвориште, тада морате покренути наредбу покретањем другог наредбеног ретка.

јава -Двебдривер.цхроме.дривер = Е: цхромедривер.еке -јар селениум-сервер-стандалоне-3.4.0.јар -роле ноде -хуб хттп://192.168.0.11:4444/грид/регистер

У овој наредби постоји само неколико разлика у односу на наредбу потребну за покретање чворишта.
-Двебдривер.цхроме.дривер = Е: цхромедривер.еке користи се за постављање путање управљачког програма прегледача. Слично подешавању путање управљачког програма прегледача у вашем коду ВебДривер, овде га специфицирате како бисте омогућили чвору да врши тестове. Од Селениум в3 надаље, морате да преузмете претраживач управљачког програма за Фирефок. Управљачки програм прегледача за Фирефок је Гецко управљачки програм. Међутим, у верзијама 1 и 2 морате да подесите управљачки програм прегледача за све прегледаче који нису Фирефок.
-роле чвор застава се користи за постављање тог одређеног рачунарског рачунара као чвора.
-хуб хттп://192.168.0.11:4444/грид/регистер обавештава Чвор да се повеже са чвориштем користећи ИП адресу чворишта. Важна тачка коју треба приметити је да ако покрећете било који чвор на истој машини као и ваш чвориште, тада можете да одредите „ -хуб хттп: // лоцалхост: 4444 / грид / регистер ‘У команди уместо ИП адресе чворишта.

гото изјава ц ++

Када притиснете ентер, добићете доњи излаз у командној линији.

До сада би Чвор био повезан са чвориштем. То можете проверити враћањем у командну линију која се користи за покретање чворишта и приметићете следећу поруку: ’ Регистровао чвор хттп://192.168.0.11:5555 ‘.

ИП адреса и број порта је ваш Ноде. Будући да свој чвор имам на истој машини као и чвориште, порт који се користи за чвор је 5555. Када га покренете на некој другој машини, користиће се подразумевани порт.

Када у машини свог чворишта покренете следећу УРЛ адресу, добићете статус чворова повезаних са чвориштем. Погледајте истакнути део на снимку екрана испод.

Сада када је ваша мрежа Селениум конфигурисана, можете наставити са извршавањем тест скрипти на Нодес. Дозволите ми да поново нагласим да морамо да покренемо скрипте у нашем чворишту и оне ће се извршавати у нашим чворовима. Скрипта која се користи за извршавање тестова слична је ВебДривер-утестови.

Изградња селенске мреже

Покренуо сам скрипту у Ецлипсе ИДЕ. Извршење ове скрипте ослања се на два важна библиотечка пакета. Су Жељене могућности објект и РемотеВебДривер објект.

ДесиредЦапабилитиес се користи за подешавање типа прегледача и ОС нашег чвора. Да бисте увезли објекат ДесиредЦапабилитиес, користите доњи код.

импорт орг.опенка.селениум.ремоте.ДесиредЦапабилитиес

РемотеВебДривер се користи за одабир чвора на којем желимо да извршимо тест. Да бисте увезли објект РемотеВебДривер, користите доње редове кода.

импорт јава.нет.МалформедУРЛЕкцептион импорт јава.нет.УРЛ импорт орг.опенка.селениум.ремоте.РемотеВебДривер

Увезао сам ова два пакета заједно са пакетом ТестНГ напомена за моју скрипту, као што је приказано у доњем исечку кода. Увезао сам ТестНГ напомене јер сам ово извео као ТестНГ тест за који ће се генерисати детаљан извештај. Препоручио бих вам да увезете исти пакет пакета за свој код.

Када маневришете преко логотипа било ког прегледача који се налази на конзоли Селениум Хуб, добићете детаље попут бровсерНаме и платформа чвора који желите аутоматизовати. Слика такође показује колико инстанци прегледача могу да отворим у свом чвору. Могу да конфигуришем највише 5 цхроме, 5 Фирефок и 1 Интернет Екплорер инстанци. Ови детаљи су присутни на доњем снимку екрана.

Можете да користите код у доњем исечку за подешавање прве мреже.

пакет ГридТест импорт орг.тестнг.аннотатионс.АфтерТест импорт орг.тестнг.аннотатионс.БефореТест импорт орг.тестнг.аннотатионс.Тест импорт јава.нет.МалформедУРЛЕкцептион импорт јава.нет.УРЛ импорт орг.јунит.Ассерт импорт орг.опенка.селениум .Платформ импорт орг.опенка.селениум.ВебДривер импорт орг.опенка.селениум.ремоте.ДесиредЦапабилитиес импорт орг.опенка.селениум.ремоте.РемотеВебДривер јавна класа ТестГрид {статиц ВебДривер дривер статиц Стринг нодеУрл @БефореТестк публиц вофорптион {намеформед нодеУрл = 'хттп://192.168.0.11:5555/вд/хуб' ДесиредЦапабилитиес фунцтионс = ДесиредЦапабилитиес.цхроме () способности.сетБровсерНаме ('цхроме') способности.сетПлатформ (Платформ.ВИНДОВС) дривер = нови РемотеВебДривер (нови УРЛ (нодеУрл ), могућности)} @Тест јавна празнина симплеТест () Едурека ', дривер.гетТитле ()) @АфтерТест јавна празнина афтерТест () {дривер.куит ()}}

Целу тестну скрипту поделио сам на три пробне напомене. @БефореТест, @Тест и @АфтерТест. У @БефореТест сам користио ДесиредЦапаблитиес и РемотеВебДривер објекте за конфигурисање свог чвора. У @Тест сам затражио од чвора да оде до Едурекине почетне странице и потврди наслов странице. У @АфтерТест сам затражио од чвора да напусти инстанцу прегледача.

Када тест прође извршење, добићете доњи излаз.

18. маја 2017. 15:09:07 орг.опенка.селениум.ремоте.ПротоцолХандсхаке цреатеСессион ИНФО: Откривен дијалект: ОСС ПРОШЛО: симплеТест ===================== ========================== Подразумевани тест Покренути тестови: 1, Откази: 0, Прескочи: 0 ========== ====================================== ============= ================================== Подразумевани пакет Укупно покренутих тестова: 1, Откази: 0, Прескочи: 0 = ================================================

Пошто се ово извршава као ТестНГ тест, добићете детаљан извештај о тестирању сличан доњем снимку екрана.

Ако не знате шта је ТестНГ и како се користе пробне напомене, прочитајте мој блог о томе како се користи Селениум ВебДривер са ТестНГ из ове уџбеничке серије Селениум.

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

Водич за селенске решетке за почетнике | Водич за селен | Едурека

Дакле, то нас доводи до краја овог блога Селениум Грид. Ако имате било каквих сумњи или проблема са било којим кодом / садржајем ове серије блогова, оставите их у одељку за коментаре у наставку и ја ћу најпре решити ваш проблем.

Ако желите да научите селенијум и изградите каријеру у домени за тестирање, погледајте нашу интерактивну мрежу уживо овде долази са подршком од 24 * 7 која ће вас водити током читавог периода учења.

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