Selēna režģa iestatīšana izplatīta selēna testēšanai



Šis emuārs palīdzēs jums izprast selēna režģa nepieciešamību un tā priekšrocības. Izlasiet to, lai iestatītu savu pirmo selēna režģi, konfigurējot mezglu un mezglus.

Pārējie šīs Selenium apmācību sērijas emuāri runā par testa gadījumu izveidošanu un šo testa gadījumu izpildi secīgi un paralēli. Tātad diskusijai atstātā pēdējā tehnika ir testa gadījumu izpilde attālinātās mašīnās. Selenium Grid var izmantot, lai veiktu šos testus uz attālām mašīnām / saimniekiem. Tādējādi šī ir emuāra diskusiju tēma.

  1. Kāpēc un kad lietot Selenium Grid?
  2. Kas ir selēna režģis?
  3. Selēna režģis 1 pret selēna režģi 2
  4. Selēna režģa arhitektūra
  5. Selēna režģa veidošana

Kāpēc un kad lietot selēna režģi?

Mūsdienās ir tik daudz tīmekļa pārlūkprogrammu. Iespējams, ka lietotāji emuāra lasīšanai izmanto pārlūku Chrome vai Firefox, vai Safari, vai Opera, vai pat Internet Explorer. Iespējams, viņi izmanto dažādas pārlūkprogrammu versijas. Viņi var arī darbināt šīs pārlūkprogrammas jebkurā OS, neatkarīgi no tā, vai tā ir Windows vai Mac vai Ubuntu vai jebkura cita Linux izplatīšana.





Ko darīt, ja lietotāji internetā redzētu kaut ko svarīgu? Kaut kas svarīgs jūsu biznesam. Vai jūs nevēlaties nobraukt šo papildu jūdžu (pārbaudot tīmekļa lietotni), tikai lai nodrošinātu, ka jūsu lietotāji un / vai klienti saņem vislabāko lietotāja pieredzi? Jūs gribētu, vai ne?

Nu, jums vajadzētu!



Bet jautājums ir, cik tas ir iespējams? Vai varēsiet pavadīt laiku, pārbaudot savu tīmekļa lietotni visās iespējamās OS un visos pieejamajos tīmekļa pārlūkos? Hmm, tas izklausās kā neliels izaicinājums. Šeit Selenium Grid atbilst rēķinam un palīdzietaupiet savu laiku un enerģiju.

Papildus tam rodas vēl viens jautājums: vai ir lietderīgi izveidot selēna tīkla infrastruktūru, izmantojot vietējās sistēmas? Tīkla uzturēšana ar visām nepieciešamajām pārlūkprogrammām un operētājsistēmām ir izaicinājums. Šim nolūkam ir vairākas tiešsaistes platformas, kas nodrošina tiešsaistes selēna režģi, kuram varat piekļūt, lai palaistu selēna automatizācijas skriptus. Piemēram, jūs varat izmantot LambdaTest . Tam ir vairāk nekā 2000 pārlūka vides, kurās varat palaist testus un patiesi veikt automātisku pārlūka testēšanu.

Kas ir selēna režģis?

Selēna režģis ir vēl viens svarīgs rīks selēna rīku komplektā. Režģis spēj koordinēt WebDriver testus / RC testus, kas var darboties vienlaikus vairākās tīmekļa pārlūkprogrammās vai kurus var sākt dažādās operētājsistēmās vai pat mitināt dažādās mašīnās.



režģa darbs - selēna režģisTātad, kā tas notiek? Režģis izmanto centrmezgla mezglu, kur ir viens centrmezgls, kas darbojas kā galvenais, un viens vai vairāki mezgli, kas darbojas kā vergi.

Tas nozīmē, ka, ja jums ir kopā 100 darbi / testi, kas jāveic, tad testus var veikt vienlaikus 5 mašīnās, kur katra mašīna veiks 20 testus. Faktiski šos testus varat veikt dažādās operētājsistēmu un pārlūkprogrammu kombinācijās. Katrai mašīnai šeit var būt atšķirīga OS, un katras OS iekšpusē testus var veikt dažādās pārlūkprogrammās.

Šī darbība ļautu ietaupīt daudz laika testa izpildē. Ja ņemat vērā iepriekš minēto piemēru, tad mēs varam samazināt izpildes laiku līdz apmēram 1/5 no kopējā laika, kas nepieciešams testu veikšanai vienā mašīnā.

Ja jūs atceraties no maniem iepriekšējiem emuāriem, es neskaitāmas reizes esmu minējis, ka Grid bija daļa no Selenium projekta kopš tā pirmsākumiem, t.i., kopš Selenium v1. Selenium Grid arī bija Selenium v2 sastāvdaļa, un pašlaik tā ir Selenium v3 sastāvdaļa. Selēna režģa v2 un v3 atšķirību nav daudz. Tomēr v1 salīdzinājumā ir daudz atšķirību. Tātad, pieņemsimsaprast atšķirības starp v1 un v2.

Selēna režģis 1 pret selēna režģi 2

Būtiskā atšķirība starp Grid v1.0 un v2.0 ir tāda, ka RC tika izmantots 1. tīklā, bet WebDriver - 2. tīklā. Tālāk esošajā tabulā sīki izskaidrotas atšķirības.

1. režģis 2. režģis
Nepieciešams instalēt Apache AntApache Ant instalēšana nav nepieciešama
Ir sava tālvadības pults (tas atšķiras no RC servera)Komplektā ar Selenium Server burka failu
Atbalsta tikai Selenium RC komandasAtbalsta gan Selenium RC, gan WebDriver skriptus
Katrā tālvadības pultī var automatizēt tikai vienu pārlūkuVienā tālvadības pultī varat automatizēt līdz 5 pārlūkprogrammām


Tagad, kad mēs esam iemācījušies būtiskās atšķirības starp abām versijām, ļaujiet mums dziļi ienirt selēna tīklā.

Selēna režģa arhitektūra

Kā jau minēju iepriekš, režģis darbojas, pamatojoties uz vienu centru un vairākiem mezgliem. Bet kas ir centrmezgls un mezgli un ko viņi dara?

Rumbas

Jebkurā režģa iestatījumā var būt tikai viens centrmezgls, un tas būs centrālais punkts šajā režģa iestatījumā. Šeit jāielādē visi testi, kas jāveic. Neskatoties uz šeit ielādētajiem testiem, tie tiks izpildīti tikai mezglos. Mēs varam konfigurēt jebkuru resursdatora mašīnu par mūsu centru, un tā koordinēs testa izpildes darbības citos resursdatoros.

Lai tas notiktu, mums vispirms jākonfigurē centrmezgls un pēc tam jāizveido citi mezgli, lai reģistrētos centrā. Pirms es iedziļinos pārāk daudz detaļu, ļaujiet man parādīt komandu centrmezgla konfigurēšanai.

Rumbas konfigurēšana

Vispirms jums ir jālejupielādē Selenium servera JAR fails no Seleniumhq vietnes. Saite ir šeit . Jums arī jāpārliecinās, vai jūsu sistēmā ir instalēta Java un ir iestatīti vides mainīgie.

Kad esat lejupielādējis jar failu, tas jāievieto atbilstošā direktorijā. Ērtības labad es to esmu lejupielādējis un ievietojis C diska mapē Selenium. Ieteicams arī lejupielādēt jar failu un ievietot to līdzīgā direktorijā visos pārējos mezglos.

Lai konfigurētu centrmezglu, palaidiet komandu Windows komandrindā. Komanda atrodas zemāk esošajā fragmentā.

modeļa skata kontroliera piemērs
C: UsersVardhan> cd .. C: Users> cd .. C:> cd Selenium C: Selenium> java -jar selenium-server-standalone-3.4.0.jar -role hub

The selēns-serveris-savrupais-3.4.0.jar ir lejupielādētā burka faila nosaukums.
The -loma karodziņš tiek izmantots, lai noteiktu konkrēto resursdatoru kā centrmezglu. Nospiežot Enter, ekrānā tiks parādīta zemāk redzamā izvade.

Ja nepamanījāt iepriekš redzamo ekrānuzņēmumu, skatiet to vēlreiz. Tā saka ' -Mezgliem jāreģistrējas vietnē http://192.168.0.11:4444/grid/register “. Tagad, kad centrmezgls ir konfigurēts, mums ir jāiestata mezgli un jāpievieno tie šim mezglam.

192.168.0.11 ir centrmezgla IP adrese, un katram mezglam vajadzētu izveidot savienojumu ar šo IP adresi. 4444 ir noklusējuma porta numurs, kurā Selenium Grid tiek mitināts un uzklausa pieprasījumus. Ja portā 4444 darbojas kāds cits pakalpojums un vēlaties, lai Selenium Grid tiktu mitināts citā ostā, to varat izdarīt, norādot -portu karogs, kam seko ostas numurs.

Mezgli

Mezgli ir galvenās mašīnas, ar kurām tiek veikti testi. Šos testus uzsāks centrs. Centrmezgls var palaist vienu vai vairākus mezglus vai nu uz attālām mašīnām, vai tajā pašā mašīnā, kur atrodas pats centrmezgls. Katrā no mezgliem var palaist dažādas operētājsistēmas, un dažādās operētājsistēmās var sākt viena un tā paša pārlūka dažādas versijas.

Mezglu konfigurēšana

Līdzīgi kā centrmezglā, vispirms vispirms lejupielādējiet Jar failu mezglu mašīnās un ērtības labad ievietojiet to C diskā vai jebkurā citā izplatītā direktorijā. Pēc tam Windows komandu uzvednē varat palaist zemāk esošo komandu. Ja jūs palaižat pat mezglu tajā pašā mašīnā, kurā ir jūsu centrmezgls, jums jāpalaiž komanda, startējot citu komandu uzvedni.

java -Dwebdriver.chrome.driver = E: chromedriver.exe -jar selenium-server-standalone-3.4.0.jar -role node -hub http://192.168.0.11:4444/grid/register

Šajā komandā ir tikai dažas atšķirības, salīdzinot ar komandu, kas nepieciešama centrmezgla startēšanai.
-Dwebdriver.chrome.driver = E: chromedriver.exe tiek izmantots, lai iestatītu pārlūka draivera ceļu. Līdzīgi kā pārlūkprogrammas draivera iestatīšana WebDriver kodā, jūs to šeit norādāt, lai mezgls varētu veikt testus. Sākot no Selenium v3, jums ir jālejupielādē draivera pārlūks pārlūkprogrammai Firefox. Firefox pārlūka draiveris ir Gecko draiveris. Tomēr 1. un 2. versijā pārlūka draiveris jāiestata visiem pārlūkiem, izņemot Firefox.
-loču mezgls karodziņš tiek izmantots, lai konkrēto resursdatoru iestatītu kā mezglu.
-hub http://192.168.0.11:4444/grid/register informē mezglu, lai izveidotu savienojumu ar centrmezglu, izmantojot centrmezgla IP adresi. Svarīgi atzīmēt, ka, palaižot jebkuru mezglu vienā un tajā pašā mašīnā kā centrmezgls, varat norādīt ‘ -krūve http: // localhost: 4444 / grid / register Hub komandā, nevis Hub IP adresē.

Nospiežot Enter, komandu uzvednē tiks parādīts zemāk redzamais rezultāts.

Tagad mezgls būtu bijis savienots ar centrmezglu. To varat pārbaudīt, atgriežoties pie centrmezgla startēšanai izmantotās komandu uzvednes, un jūs pamanīsit šādu ziņojumu: Reģistrēts mezgls http://192.168.0.11:5555 “.

IP adrese un porta numurs ir jūsu mezgla adrese. Tā kā mans mezgls atrodas tajā pašā mašīnā, kur centrmezgls, mezglam izmantotais ports ir 5555. Kad jūs to inicējat kādā citā mašīnā, tiks izmantots noklusējuma ports.

Palaižot šo URL savā centrmezgla datorā, jūs iegūsiet ar savu centru saistīto mezglu statusu. Skatiet iezīmēto daļu zemāk redzamajā ekrānuzņēmumā.

Tagad, kad jūsu selēna režģis ir konfigurēts, varat turpināt testa skriptu izpildi mezglos. Ļaujiet man vēlreiz uzsvērt, ka mums ir jāpalaiž skripti mūsu centrā, un tie tiks izpildīti mūsu mezglos. Testu izpildei izmantotais skripts ir līdzīgs WebDrivertesti.

A selēna režģa veidošana

Es esmu palaidis savu skriptu Eclipse IDE. Šī skripta izpilde balstās uz divām svarīgām bibliotēkas pakotnēm. Viņi ir Vēlamās spējas objekts un RemoteWebDriver objekts.

DesiredCapability tiek izmantots, lai iestatītu mūsu mezgla pārlūkprogrammas veidu un OS. Lai importētu DesiredCapability objektu, izmantojiet tālāk norādīto kodu.

importēt org.openqa.selenium.remote.DesiredCapability

RemoteWebDriver tiek izmantots, lai izvēlētos mezglu, kurā mēs vēlamies izpildīt testu. Lai importētu objektu RemoteWebDriver, izmantojiet tālāk norādītās koda rindas.

importēt java.net.MalformedURLException importēt java.net.URL importēt org.openqa.selenium.remote.RemoteWebDriver

Esmu importējis šīs divas paketes kopā ar TestNG anotāciju paketi manam skriptam, kā parādīts zemāk esošajā koda fragmentā. Esmu importējis TestNG anotācijas, jo esmu to izpildījis kā TestNG testu, par kuru tiks ģenerēts detalizēts pārskats. Es iesaku jums importēt to pašu paku komplektu savam kodam.

Veicot manevru pa jebkura Selenium Hub konsolē esošā pārlūka logotipiem, jūs saņemsit tādu informāciju kā: browserName un platforma no tā mezgla, kuru vēlaties automatizēt. Attēls arī norāda, cik daudz pārlūkprogrammu es varu atvērt savā mezglā. Es varu konfigurēt ne vairāk kā 5 hroma, 5 Firefox un 1 Internet Explorer gadījumus. Šī informācija ir redzama zemāk esošajā ekrānuzņēmumā.

Lai iestatītu savu pirmo režģi, varat izmantot tālāk esošajā fragmentā redzamo kodu.

pakete GridTest importēt org.testng.annotations.AfterTest importēt org.testng.annotations.BeforeTest importēt org.testng.annotations.Test importēt java.net.MalformedURLException importēt java.net.URL import org.junit.Assert import org.openqa.selenium .Platform importēt org.openqa.selenium.WebDriver importēt org.openqa.selenium.remote.DesiredCapilities importēt org.openqa.selenium.remote.RemoteWebDriver publiskā klase TestGrid {static WebDriver draivera statiskā virknes nodeUrl @BeforeTest public void iestatīšana nodeUrl = 'http://192.168.0.11:5555/wd/hub' Vēlamo spēju iespējas = DesiredCapilities.chrome () spējas.setBrowserName ('hroms') spējas.setPlatform (Platform.WINDOWS) draiveris = jauns RemoteWebDriver (jauns URL (nodeUrl) ), spējas)} @Test public void simpleTest () Edureka ', driver.getTitle ()) @AfterTest public void afterTest () {driver.quit ()}}

Esmu sadalījis visu testa skriptu trīs testa anotācijās. @BeforeTest, @Test un @AfterTest. Programmā @BeforeTest es izmantoju objektus DesiredCapablities un RemoteWebDriver, lai konfigurētu savu mezglu. Programmā @Test es esmu lūdzis Mezglu doties uz Edureka mājas lapu un apgalvot lapas nosaukumu. Programmā @AfterTest esmu lūdzis mezglu iziet no pārlūka instances.

Kad jūsu tests būs izpildīts, jūs iegūsiet zemāk redzamo rezultātu.

2017. gada 18. maijs 15:09:07 org.openqa.selenium.remote.ProtocolHandshake createSession INFO: Atklāts dialekts: OSS PASSED: simpleTest ===================== ========================== Noklusējuma pārbaude Testi veikti: 1, Kļūdas: 0, Izlaiž: 0 ========== ===================================== ============= ================================== Noklusējuma komplekts Kopējais testu skaits: 1, Neveiksmes: 0, Izlaišana: 0 = ================================================

Tā kā tas tiek veikts kā TestNG tests, jūs saņemsiet detalizētu testa ziņojumu, kas līdzīgs zemāk redzamajam ekrānuzņēmumam.

Ja nezināt, kas ir TestNG un kā izmantot testa anotācijas, tad izlasiet manu emuāru par to, kā to izmantot Selēna WebDriver ar TestNG no šīs Selēna apmācību sērijas.

Zemāk redzamo videoklipu varat redzēt, kā demonstrēt selēna režģa izveidi. Instruktors, kas piegādā videoklipu, izskaidro tos pašus jēdzienus, kas paskaidroti šajā emuārā.

Selēna režģa apmācība iesācējiem Selēna apmācība Edureka

Tātad, tas mūs noved pie šī Selenium Grid emuāra beigām. Ja jums ir kādas šaubas vai problēmas ar kādu no šīs emuāru sērijas kodiem / saturu, lūdzu, atstājiet tos tālāk sniegtajā komentāru sadaļā, un es atrisināšu jūsu problēmu ātrāk.

Ja vēlaties uzzināt selēnu un veidot karjeru testēšanas jomā, apskatiet mūsu interaktīvo tiešsaistes tiešraidi šeit ir pieejams 24 * 7 atbalsts, kas palīdzēs jums visu mācību laiku.

Vai mums ir jautājums? Lūdzu, pieminējiet to komentāru sadaļā, un mēs ar jums sazināsimies.