Kas ir selēna tīmekļa draiveris?
Selenium Webdriver ir atvērtā koda API kolekcija, kas tiek izmantota tīmekļa lietojumprogrammu testēšanai. Rīks Selenium Webdriver tiek izmantots, lai automatizētu tīmekļa lietojumprogrammu testēšanu, lai pārliecinātos, ka tas darbojas, kā paredzēts. Tas galvenokārt atbalsta tādas pārlūkprogrammas kā Firefox, Chrome, Safari un Internet Explorer. Tas arī ļauj jums veikt starp pārlūkprogrammu testēšanu.
WebDriver arī ļauj testēšanas skriptu izveidē izmantot programmēšanas valodu (tas nav iespējams Selenium IDE).
Tagad varat izmantot nosacītas darbības, piemēram, if-then-else vai switch-case. Jūs varat arī veikt cilpu, piemēram, do-while.
WebDriver atbalsta šādas programmēšanas valodas
- Java
- .Tīkls
- PHP
- Python
- Perl
- Rubīns
Jums nav jāzina visi no tiem. Jums vienkārši jābūt zinošam vienā. Tomēr šajā apmācībā mēs kā Java izmantosim Java ar Eclipse.
Atšķirība starp Selenium RC un Webdriver
Pirms WebDriver parādīšanās 2006. gadā bija vēl viens automatizācijas rīks ar nosaukumu Selenium Remote Control. Gan WebDriver, gan Selenium RC ir šādas funkcijas:
- Viņi abi ļauj testēšanas skriptu izstrādē izmantot programmēšanas valodu .
- Viņi abi ļauj testus veikt dažādās pārlūkprogrammās.
Tātad, kā viņi atšķiras? Apspriedīsim atbildes.
1. Arhitektūra
WebDriver arhitektūra ir vienkāršāka nekā Selenium RC .
- Tas kontrolē pārlūku no OS līmeņa
- Viss, kas jums nepieciešams, ir jūsu programmēšanas valodas IDE (kas satur jūsu Selenium komandas) un pārlūks.
Selenium RC arhitektūra ir daudz sarežģītāka.
- Pirms sākat testēšanu, vispirms ir jāpalaiž atsevišķa lietojumprogramma ar nosaukumu Selenium Remote Control (RC) Server
- Selenium RC serveris darbojas kā starpnieks starp jūsu Selenium komandām un pārlūkprogrammu
- Sākot testēšanu, Selenium RC Server pārlūkprogrammā "injicē" Javascript programmu ar nosaukumu Selenium Core .
- Pēc injicēšanas Selenium Core sāks saņemt RC servera norādījumus no jūsu testa programmas.
- Kad saņemti norādījumi, Selenium Core tos izpildīs kā Javascript komandas.
- Pārlūkprogramma paklausīs Selenium Core norādījumiem un nosūtīs atbildi uz RC serveri.
- RC serveris saņems pārlūkprogrammas atbildi un pēc tam parādīs jums rezultātus.
- RC Server no testa skripta ielādēs nākamo instrukciju, lai atkārtotu visu ciklu.
2. Ātrums
WebDriver ir ātrāks nekā Selenium RC, jo tas runā tieši ar pārlūku, lai to kontrolētu, tiek izmantots paša pārlūka motors.
Selenium RC ir lēnāks, jo tas izmanto Javascript programmu ar nosaukumu Selenium Core. Šis Selenium Core ir tas, kas tieši kontrolē pārlūku, nevis jūs.
3. Mijiedarbība reālajā dzīvē
WebDriver reālāk mijiedarbojas ar lapas elementiem. Piemēram, ja testējamā lapā ir atspējots tekstlodziņš, WebDriver patiešām nevar tajā ievadīt nevienu vērtību tāpat kā to nevar reāls cilvēks.
Selenium Core, tāpat kā citi JavaScript kodi, var piekļūt atspējotiem elementiem. Agrāk selēna testētāji sūdzas, ka Selenium Core savos testos varēja ievadīt vērtības invalīdu tekstlodziņā. Atšķirības API
4. API

Selenium RC API ir vairāk nobriedis, bet satur atlaišanu un bieži vien mulsinošas komandas . Piemēram, lielākoties testētāji ir neizpratnē, vai izmantot type vai typeKeys; vai arī izmantot click, mouseDown vai mouseDownAt. Vēl sliktāk, dažādas pārlūkprogrammas arī interpretē katru no šīm komandām dažādi!
WebDriver API ir vienkāršāka nekā Selenium RC . Tas nesatur liekas un mulsinošas komandas.
5. Pārlūkprogrammas atbalsts
WebDriver var atbalstīt HtmlUnit pārlūku bez galvas
HtmlUnit tiek saukts par "bez galvas", jo tas ir neredzams pārlūks - tas ir bez GUI.
Tas ir ļoti ātrs pārlūks, jo netiek gaidīts laiks, gaidot lapas elementu ielādi. Tas paātrina testa izpildes ciklus.
Tā kā lietotājam tas nav redzams, to var kontrolēt tikai ar automatizētiem līdzekļiem.
Selenium RC nevar atbalstīt HtmlUnit pārlūku bez galvas. Lai to darbotos, ir nepieciešams reāls, redzams pārlūks.
WebDriver ierobežojumi
WebDriver nevar viegli atbalstīt jaunās pārlūkprogrammas
Atcerieties, ka WebDriver darbojas OS līmenī. Atcerieties arī, ka dažādas pārlūkprogrammas dažādos veidos sazinās ar OS. Ja iznāk jauns pārlūks, tam var būt atšķirīgs saziņas process ar OS, salīdzinot ar citām pārlūkprogrammām. Tātad, jums ir jādod WebDriver komandai pietiekami daudz laika, lai izdomātu jauno procesu, pirms viņi to var ieviest nākamajā WebDriver laidienā.
Tomēr WebDriver izstrādātāju komandai ir jāizlemj, vai viņiem vajadzētu atbalstīt jauno pārlūku vai nē.
Selenium RC ir iebūvēts testa rezultātu ģenerators
Selenium RC automātiski ģenerē testa rezultātu HTML failu . Ziņojuma formātu jau iepriekš noteica pati RC. Apskatiet šī ziņojuma piemēru zemāk.
WebDriver nav iebūvētas komandas, kas automātiski ģenerē testa rezultātu failu . Jums vajadzētu paļauties uz IDE izvades logu vai pats noformēt pārskatu, izmantojot savas programmēšanas valodas iespējas, un saglabāt to kā tekstu, HTML utt.
Kopsavilkums
- WebDriver ir rīks, lai pārbaudītu tīmekļa lietojumprogrammas dažādās pārlūkprogrammās, izmantojot dažādas programmēšanas valodas.
- Tagad jūs varat veikt jaudīgus testus, jo WebDriver testu izstrādē ļauj izmantot izvēlēto programmēšanas valodu .
- WebDriver ir ātrāks nekā Selenium RC, pateicoties vienkāršākai arhitektūrai.
- WebDriver tieši sarunājas ar pārlūku, kamēr Selenium RC ir nepieciešama RC servera palīdzība, lai to izdarītu.
- WebDriver API ir kodolīgāka nekā Selenium RC.
- WebDriver var atbalstīt HtmlUnit, kamēr Selenium RC nevar.
- Vienīgie WebDriver trūkumi ir:
- Tas nevar viegli atbalstīt jaunas pārlūkprogrammas , bet Selenium RC var.
- Tam nav iebūvētas komandas testa rezultātu automātiskai ģenerēšanai.