Selenium

Lėlininkas VS Selenas

Lėlininkas VS Selenas
Šiandien kalbant apie automatizuotą žiniatinklio bandymą, „Puppeteer“ ir „Selenium“ yra du pavadinimai. Viena iš pagrindinių priežasčių, kodėl jie yra gerai žinomi, yra jų sugebėjimas paleisti naršykles be galvos. Todėl prieš tęsdami straipsnį, greitai apžvelkime, kas yra naršyklės be galvos ir jų privalumai.

Paprastai tariant, naršyklės be galvos yra naršyklės, kurias galima naudoti norint patikrinti tinklalapių tinkamumą naudoti ir atlikti naršyklės sąveiką, kaip tai darytumėte su savo įprasta naršykle. Vienintelis skirtumas yra tas, kad nėra grafinės vartotojo sąsajos (GUI) ir jos paprastai vykdomos iš terminalo.

Naršyklės be galvos:

Dabar, kai žinome pagrindinį abiejų įrankių veiksnį, galime tęsti.

Lėlininkas

„Puppeteer“ yra „Google“ mazgų biblioteka, teikianti paprastą API valdyti „Chrome“ be galvos. Per „Puppeteer“ galima lengvai atlikti įprastas užduotis, pvz., Įvesti įvestis, spustelėti mygtukus, išbandyti tinklalapių tinkamumą ir net surasti žiniatinklį.

Lėlininkas yra oficialus „Chrome“ komandos narys ir naudoja „Chrome“ nuotolinio derinimo protokolą, kaip ir „Chrome Devtools“. Ši biblioteka palaiko modernią „JavaScript“ sintaksę, pasiekiamą „Google Chrome“.

Sąranka

Labai lengva įdiegti ir pradėti naudotis „Puppeteer“. Kadangi „Puppeteer“ yra „Node“ biblioteka, ją galima įdiegti naudojant npm įrankis.

Diegimą galima atlikti naudojant žemiau esančią komandą:

npm i lėlininkas

Paleidus aukščiau pateiktą komandą, „Puppeteer“ įdiegiamas. Tikimasi taip pat atsisiųsti naujausią „Chromium“ versiją, kuri veiktų su API.

„Chromium“ dydis priklauso nuo operacinės sistemos:

Įdiegę „Puppeteer“ galite sužinoti daugiau informacijos apie tai, kaip pradėti, taip pat galite patikrinti daugiau kodų pavyzdžių.

funkcijos

Nors „Puppeteer“ galimybė paleisti naršyklę be galvos yra viena iš savybių, kuri ją išgarsino, tačiau tai nėra vienintelis bruožas, dėl kurio ji yra nuostabi. „Puppeteer“ taip pat turi keletą kitų funkcijų, dėl kurių ji yra naudinga, greitai apžvelkime kai kurias iš jų.

Lengva automatika:

Nors yra ir kitų įrankių, kuriuos galima naudoti žiniatinklio automatizavimui, „Puppeteer“ išlipa į viršų. Taip yra dėl to, kad jis puikiai veikia tik vienoje naršyklėje, ty „Chrome“ naršyklėje „Headless“, todėl ji atlieka efektyviausią žiniatinklio automatikos užduotį. Lėlininkas taip pat puikiai veikia su populiariomis bandymų bibliotekomis, tokiomis kaip Mocha ir Jasmine.

Ekrano kopijos testavimas:

Tai yra gyvybiškai svarbi bet kurio automatinio žiniatinklio testavimo užduoties funkcija. Ekrano nuotraukos yra svarbios ir padeda sekti sąveikos su tinklalapio elementais rezultatus. Bibliotekos, tokios kaip „Puppeteer“, „screenshot-tester“, taip pat yra programoje „Puppeteer“, kuri suteikia galimybę palyginti bandant sukurtas ekrano kopijas. Be bandymų ekrano kopijų generavimo, PDF failus taip pat galima sugeneruoti iš patikrintų lėlininkų tinklalapių.

Našumo testavimas:

„Chrome“ teikia „DevTools“, leidžiančius įrašyti tinklalapių našumo laiko juostą, ir „Puppeteer“ tuo pasinaudoja. Naudojant „Puppeteer“ galima užfiksuoti svetainių laiko juostos pėdsakus, kad būtų galima išnagrinėti našumo problemas. Dėl „Puppeteer“ aukšto lygio „Chrome“ kūrėjų įrankių protokolo API valdymo, vartotojams suteikiama galimybė valdyti paslaugų darbuotojus ir išbandyti svetainių talpyklą.

Žiniatinklio grandymas:

Kalba apie funkcijas nebūtų užbaigta nepripažįstant „Puppeteer“ galimybės naudoti žiniatinklio grandymo tikslais. Išmokti naudoti „Puppeteer“ kaip žiniatinklio grandiklį yra gana lengva, pažvelkite į API dokumentaciją.

Argumentai "už"

  1. Puikiai tinka vizualiam testavimui.
  2. Puikiai tinka išbandyti iki galo.
  3. Greitai, palyginti su selenu.
  4. Gali padaryti tinklalapių ekrano kopijas.
  5. Geriau valdykite bandymus naudodami „Chrome“.
  6. Gali išbandyti režimą neprisijungus.

Minusai

  1. Palaiko tik „JavaScript“ (mazgas)
  2. Palaiko tik „Chrome“

Selenas

Selenas yra galinga žiniatinklio testavimo sistema, galinti automatizuoti žiniatinklio programas bandymų tikslais. Selenas taip pat žinomas dėl savo gebėjimo automatizuoti žiniatinklio administravimo užduotis.

Selenas yra dviejų dalių; „Selenium WebDriver“, skirtą kurti galingus naršyklės automatikos paketus ir testą, ir „Selenium IDE“ - greito klaidų atkūrimo scenarijų kūrimui.

Nepamirštant, kad „Selenium“ taip pat palaiko naršykles be galvos, kaip matyti su „Puppeteer“.

Sąranka

Skirtingai nuo „Puppeteer“, Seleno nustatymas nėra paprastas. Selenas palaiko daug kalbų ir skirtingas naršykles, todėl reikia pasirūpinti tomis galimomis sąlygomis.

Žemiau pateikiamos nuorodos į oficialias mokymo programas, kaip nustatyti seleno susiejimus skirtingomis kalbomis.

Be įvairių kalbų palaikymo, „Selenium“ taip pat palaiko kelias naršykles. Skirtingai nuo „Puppeteer“, kuris diegia „Chromium“ diegimo metu, gali tekti įdiegti žiniatinklio tvarkykles pasirinktai žiniatinklio naršyklei.

Čia pateikiamos nuorodos į „Mozilla Firefox“ ir „Google Chrome“ žiniatinklio tvarkykles.

Jei norite naudoti „Selenium IDE“, jis taip pat egzistuoja kelioms naršyklėms. Čia pateikiamos nuorodos į „Selenium IDE“, skirtą „Mozilla Firefox“ ir „Google Chrome“.

funkcijos

Gebėjimas dirbti su naršyklėmis be galvos padarė neabejotinai populiariausią žiniatinklio automatikos įrankį, tačiau yra ir kitų funkcijų, kurios daro jį galingu.

Palaikymas keliomis kalbomis:

Tai yra viena labai svarbi Seleno savybė. Naudodamasis keliomis kalbomis, daugiau kūrėjų gali naudoti įrankį atlikdami žiniatinklio automatikos testavimo užduotis.  Nors galima manyti, kad dėl palaikymo keliomis kalbomis jis taps lėtas, „Selenium“ vis tiek veikia dideliu greičiu, nes nereikia paleisti serverio žiniatinklio tvarkyklėje.

Kelių platformų palaikymas:

Taip pat selenas nėra ribojamas kalbos barjerų, jis taip pat nėra ribojamas platformos barjero. Ne naujiena, kad žiniatinklio programos įvairiose platformose elgiasi skirtingai. Selenas testuotojams suteikia galimybę išbandyti pagrindinėse interneto naršyklėse, kad vartotojai galėtų sklandžiai naudotis įvairiomis naršyklėmis.  Be naršyklių, „Selenium“ taip pat galima naudoti bandymams mobiliuosiuose įrenginiuose, pvz., „Android“, „iOS“, „Windows“, „Blackberry“ programose.

Įrašymo įrankis:

Naudojant „Selenium IDE“, lengva įrašyti žiniatinklio automatikos testus. Selenium IDE leidžia testuotojams naudotis įrašymo galimybėmis, taip pat automatinio užbaigimo palaikymu ir galimybe naršyti komandose. Įrašymo įrankis nustojo veikti „Firefox 55“ ir naujesnėse versijose, tačiau „Firefox“ yra ir kitų papildinių, kurie naudojami tam pačiam tikslui. Todėl galimybė įrašyti testus išlieka pagrindine Seleno savybe.

Žiniatinklio grandymas:

Nors selenas naudojamas žiniatinklio taikomųjų programų testavimui, jis taip pat gerai keičiasi kaip žiniatinklio grandiklis. Selenas gali būti naudojamas AJAX svetainėms ir sunkiausiai nuskaitytoms svetainėms, jei jūs suprantate HTML struktūrą. Galite peržiūrėti šią „Selenium“ naudojimo žiniatinklyje naudodami „Python“ pamoką.

Argumentai "už"

  1. Kelių platformų palaikymas.
  2. Palaikymas keliomis kalbomis.
  3. Gebėjimas registruoti testus.
  4. Taip pat gali daryti ekrano kopijas.
  5. Didžiulė vartotojų bendruomenė.

Minusai

  1. Lėtas, palyginti su „Puppeteer“.
  2. Ribota bandymų kontrolė, palyginti su „Puppeteer“.

Išvada

Jei jums netrukdo tikrinti tinklalapių kitose platformose, išskyrus „Chrome“, tada gerai dirbate su „Puppeteer“, jei galite dirbti su „JavaScript“ (mazgas). Tačiau jei jums rūpi kelios platformos, tai „Selenium“ naudojimas nėra reikalas. Kalbėdami apie savo žiniatinklio grandymo galimybes, abu įrankiai yra patys. Vis dėlto reikia pažymėti, kad lėlininkas gali būti greitesnis už seleną.

Bet koks įrankis, kurį pasirinksite dienos pabaigoje, turėtų būti tinkamas, tiesiog mėgaukitės rašydami automatikos scenarijus.

„OpenTTD“ ir „Simutrans“
Sukurti savo transporto modeliavimą gali būti smagu, atpalaiduojanti ir be galo viliojanti. Štai kodėl jūs turite įsitikinti, kad išbandėte kuo daugia...
„OpenTTD“ pamoka
„OpenTTD“ yra vienas iš populiariausių verslo modeliavimo žaidimų. Šiame žaidime turite sukurti nuostabų transporto verslą. Tačiau pradėsite nuo mažda...
„SuperTuxKart“, skirta „Linux“
„SuperTuxKart“ yra puikus pavadinimas, sukurtas nemokamai suteikti „Mario Kart“ patirtį jūsų „Linux“ sistemoje. Tai gana sudėtinga ir smagu žaisti, yr...