Selēna kodola paplašinājumi (User-Extensions.js)

Satura rādītājs:

Anonim

Lai saprastu paplašinājumus, vispirms jāsaprot trīs selēna IDE pīlāri

  1. Darbība: kāda darbība tiek veikta lietotāja saskarnes ekrānā

  2. Vērtētāji / apgalvojums: kādu verifikāciju veicat no lietotāja saskarnes saņemtajiem datiem

  1. Lokatora stratēģija: kā mēs varam atrast elementu lietotāja saskarnē.

Tagad Selenium IDE ir ļoti nobriedusi bibliotēka ar daudzām darbībām, apgalvojumiem / vērtētājiem un lokatoru stratēģijām.

Bet dažreiz mums ir jāpievieno vēl kāda funkcionalitāte mūsu projekta prasībām. Šādā situācijā mēs varam paplašināt šo bibliotēku, pievienojot savus pielāgotos paplašinājumus. Šos pielāgotos paplašinājumus sauc par “Lietotāju paplašinājumiem”.

Piemēram, mums ir nepieciešama darbība, kas tekstu var pārveidot lielajiem burtiem, pirms to aizpilda tīmekļa elementā. Šo darbību nevar atrast noklusējuma darbību bibliotēkā. Šādā gadījumā jūs varat izveidot savu lietotāja paplašinājumu. Šajā apmācībā mēs uzzināsim, kā izveidot lietotāja paplašinājumu, lai tekstu pārveidotu par lielo burtu

Prasība izveidot Selenium lietotāja paplašinājumu:

Lai izveidotu lietotāja paplašinājumu Selenium IDE, mums jāzina JavaScript un Java Script prototipa objekta koncepcijas pamatjēdziens.

Lai izveidotu lietotāja paplašinājumu, jums jāizveido Java skriptu metodes un jāpievieno tās selēna objekta prototipam un PageBot objekta prototipam.

Kā Selenium IDE atpazīst lietotāja paplašinājumu?

Pēc lietotāja paplašinājuma pievienošanas Selenium IDE, kad mēs sākam Selenium IDE, visi šie javascript prototipa paplašinājumi tiek ielādēti, un Selenium IDE tos atpazīst pēc nosaukuma.

Kā izveidot lietotāja paplašinājumu

1. solis) Darbība - visas darbības sāk “do”, ti, ja darbība ir paredzēta lielajiem burtiem, tā nosaukums būs doTextUpperCase. Kad mēs pievienosim šo darbības metodi Selenium IDE, Selenium IDE pats izveidos šīs darbības gaidīšanas metodi. Tāpēc šajā gadījumā, kad mēs izveidojam darbību doTextUpperCase , Selenium IDE izveidos atbilstošu gaidīšanas funkciju kā TextUpperCaseAndWait . Tas var pieņemt divus parametrus

Piemērs: lielo burtu teksta darbība

Selenium.prototype.doTextUpperCase = funkcija (lokators, teksts) {// Šeit findElement pats spēj apstrādāt visu veidu lokatoru (xpath, css, name, id, className). Mums vienkārši jānodod lokatora tekstsvar elements = this.lapa (). findElement (lokators);// Izveidojiet tekstu, kuru vēlaties rakstītteksts = text.toUpperCase ();// Nomainiet elementa tekstu ar jauno tekstuthis.page (). aizstātText (elements, teksts);};

2. solis) Vērtētāji / apgalvojums - visi novērtētāji, kas reģistrēti selēna objekta prototipā, tiks prefiksēti

ar "get" vai "ir" Ex. getValueFromCompoundTable, isValueFromCompoundTable. Tas var pieņemt divus parametrus, vienu mērķim un otru vērtības laukam testa gadījumā.

Katram vērtētājam būs atbilstošas ​​verifikācijas funkcijas, kuru prefikss ir "pārbaudīt", "apgalvot", un gaidīšanas funkcijas prefikss ar "waitFor"

Piemērs: Lielo lietu teksta vērtētājiem

Selenium.prototype.assertTextUpperCase = funkcija (lokators, teksts) {// Visas lokatora stratēģijas automātiski apstrādā "findElement"var elements = this.lapa (). findElement (lokators);// Izveidojiet pārbaudāmo tekstuteksts = text.toUpperCase ();// Iegūstiet faktisko elementa vērtībuvar actualValue = elements.value;// Pārliecinieties, vai faktiskā vērtība atbilst gaidītajaiAssert.matches (paredzamā vērtība, faktiskā vērtība);};Selenium.prototype.isTextEqual = funkcija (lokators, teksts) {atgriezt šo.getText (lokators) .value === tekstu;};Selenium.prototype.getTextValue = funkcija (lokators, teksts) {atgriezt šo.getText (locator) .value;};

3. solis. Lokatora stratēģija - ja mēs vēlamies izveidot savu funkciju, lai atrastu elementu

mums jāpaplašina PageBot prototips ar funkciju ar prefiksu "locateElementBy".

Tam būs nepieciešami divi parametri, vispirms būs lokatora virkne, bet otrais - dokuments

kur tas ir jāmeklē.

Piemērs: lielo burtu teksta lokatoram

// "inDocument" ir dokuments, kuru meklējat.PageBot.prototype.locateElementByUpperCase = funkcija (teksts, inDocument) {// Izveidojiet meklējamo tekstuvar paredzētāValue = text.toUpperCase ();// Aplūkojiet visus elementus, meklējot tos, kuriem ir// a vērtība === mūsu paredzamā vērtībavar allElements = inDocument.getElementsByTagName ("*");// Šī zvaigzne '*' ir sava veida regulāra izteiksme, kas iet cauri visiem elementiem (HTML DOM katrā elementā noteikti ir taga nosaukums, piemēram, , ,

, , ,
utt.). Šeit mūsu motīvs ir atrast elementu, kas atbilstu augšējā burta tekstam, kuru esam nodevuši, tāpēc mēs to meklēsim ar visiem elementiem, un, kad mēs saņemsim atbilstību, mums būs pareizs tīmekļa elements.par (var i = 0; i

Kā izmantot jaunizveidoto kodola paplašinājumu?

  1. Dodieties uz Selenium IDE

    Noklikšķiniet uz Opcijas -> Opcijas ...

  1. Sadaļā Vispārīgi atlasiet jaunizveidotā Selenium Core paplašinājuma atrašanās vietu

  2. Noklikšķiniet uz Labi un restartējiet Selenium IDE

  1. Paplašinājumu atradīsit komandu sarakstā

Šeit ir populāru paplašinājumu / spraudņu saraksts, ko izmanto Selenium IDE

Nosaukums Mērķis
Izlase Lai atzīmētu testa komplektu kā iecienītāko un izpildītu tos ar vienu klikšķi
Elastīgais pilots X Uz Flex balstītai automatizācijai
FlexMonkium Ierakstīšanai un demonstrēšanai uz Adobe Flex bāzes Selenium IDE
Failu reģistrēšana Žurnālu saglabāšanai failā
Plūsmas kontrole Lai kontrolētu testa izpildes plūsmu
Izcelt elementus Lai izceltu tīmekļa vadību
Netiešā gaidīšana Gaidīt elementu uz noteiktu laika ierobežojumu
Ekrānuzņēmums neizdevās Uzņemiet ekrānuzņēmumu par neveiksmi
Testa rezultāti Saglabājiet testa komplekta testa lietas rezultātu ar vienu klikšķi

Jūs varat saņemt visus šos un daudz ko citu no SeleniumHQ oficiālās vietnes lejupielādes sadaļas

http://docs.seleniumhq.org/download/

Kopsavilkums:

  • Ir trīs Selenium IDE, Action, Assessors / Assertion, Locator stratēģijas daļas.
  • Lietotāja paplašinājums tiek izveidots, kad Selenium IDE neatbilst pašreizējai prasībai.
  • Lai izveidotu lietotāja paplašinājumu, selēna objekta prototipam jāpievieno javascript.
  • Pēc paplašinājuma izveides ir nepieciešams to pievienot Selenium IDE un restartēt IDE.

Lejupielādējiet šajā apmācībā izmantoto selēna kodola paplašinājumu