Salvestage muutujad, kaja, hoiatus, hüpikakna käsitlemine Selenium IDE
⚡ Nutikas kokkuvõte
Salvesta käske Selenium IDE salvestab käitusaja väärtused nimega muutujatesse, echo prindib need logisse ja spetsiaalne käskude perekond haldab teateid, kinnitusdialooge ja mitme brauseriakna vahel vahetamist.

Selles õpetuses õpid salvestuskäsklusi, kajakäsku ning teadete ja hüpikakende käsitlemist. Selenium IDENeed käsud koos muudavad fikseeritud salvestatud skripti selliseks, mis reageerib rakenduse käitusajal tagastatavale teabele.
⚠️ Märkus versioonide kohta: allolevad ekraanipildid pärinevad originaalist Firefox-plugin Selenium IDE ja käsud kasutavad selle camelCase'i Selenese nimesid. Praegune Chrome Firefox ja Edge'i laiendus säilitab sama käitumise, aga kirjutab enamiku käskude nimed tühikutega. Kaartping Tabel kuvatakse selle artikli lõpus ja iga algne käsk ja ekraanipilt säilitatakse avaldatud kujul.
Selenium IDE muutujad
E-POOD
Muutujate salvestamiseks Selenium IDE-s kasutame salvestada käsk. Allolev joonis salvestab väärtuse „tutorial“ muutujasse nimega „myVariable“.
Muutujale juurdepääsuks pange see lihtsalt ${ … } sümboli sisse. Näiteks väärtuse „myVariable” sisestamiseks tekstikasti „userName” Mercury Tours, sisestage väärtuse väljale ${myVariable}.
Kaja käsk sees Selenium IDE
Salvestatud muutuja on nähtamatu kuni miski selle välja prindib ja see ongi see, mida... miss käsk teeb seda. See kirjutab taasesituse ajal IDE logipaneelile teate, mis teeb sellest kiireima viisi kinnitada, et salvestuskäsk tabas ootuspärase tulemuse enne, kui sellele väiteid loote.
Käsk aktsepteerib mõlemat vormi:
- Sõnasõnaline string. Pane tekst sisse Target näiteks väli Sisselogimisetapp on lõppenud, kontrollpunkti märkimiseks pikas skriptis.
- Muutuja. Sisesta ${myVariable} väljale Target ja nime asemel trükitakse salvestatud väärtus.
Kaks harjumust muudavad kaja palju kasulikumaks, kui see esmapilgul paistab. Muutuja tuleb kohe pärast seda loovat store-käsku välja trükkida, seega on tegemist veaga. tracSee on suunatud pigem püüdmisele kui kakskümmend sammu hiljem tehtud väitele. Ja iga sõnumi ette tuleb lisada samm, kuhu see kuulub, sest logipaan näitab iga käsku ühes kindlas loendis. Pane tähele, et echo kirjutab ainult logisse – see ei muuda kunagi lehte ega ebaõnnestu kunagi testis, seega on ohutu selle skripti jäädavalt jätta.
StoreElementPresent
See käsk salvestab kas väärtuse „true“ või „false“, olenevalt määratud elemendi olemasolust. Allolev skript salvestab Boole'i väärtuse „true“ väärtusele „var1“ ja „false“ väärtusele „var2“. Kontrollimiseks kasutame käsku echo, et kuvada var1 ja var2 väärtused. Baas URL alloleva illustratsiooni jaoks oli seatud väärtusele Mercury Ekskursioonide koduleht.
StoreTekst
Seda käsku kasutatakse elemendi sisemise teksti salvestamiseks muutujasse. Allolev joonis salvestab Facebooki registreerumislehel oleva h1-sildi sisemise teksti muutujasse nimega „textVar”.
Kuna see on lehel ainus omataoline element, on sihtmärgiks ohutu kasutada „css=h1”. Allolev pilt näitab seda. Selenium IDE suutis salvestada stringi „Sign Up“ muutujasse „textVar“, sest echo printis selle väärtuse õigesti.
Märguanded, hüpikaknad ja mitu Windows
Teavitused on ilmselt hüpikakna lihtsaim vorm. Kõige levinum Selenium Hoiatuste käsitlemisel kasutatavad IDE-käsud on järgmised:
| Märguanded | sa kasutad |
|---|---|
|
kinnita Hoiatus AssertNotAlert |
hangib hoiatuse sõnumi ja kinnitab selle teie määratud stringiväärtuse suhtes |
|
assertAlertPresent assertAlertNotPresent |
kinnitab, kas hoiatus on olemas või mitte |
| poe Alert | hangib hoiatusteate ja salvestab selle teie määratud muutujasse |
| storeAlertPresent | tagastab TRUE, kui hoiatus on olemas, FALSE muul juhul |
|
verifyAlert verifyNotAlert |
hangib hoiatuse sõnumi ja kontrollib, kas see võrdub teie määratud stringiväärtusega |
|
verifyAlertPresent verifyAlertNotPresent |
kontrollib, kas hoiatus on olemas või mitte |
Märguannetega töötades pidage meeles neid kahte asja.
- Selenium IDE klõpsab automaatselt hoiatusakna nuppu OK, seega te ei näe tegelikku hoiatust.
- Selenium IDE ei suuda käsitleda teateid, mis käivituvad lehe onload() funktsiooni sees. See käsitleb ainult teateid, mis genereeritakse pärast lehe täielikku laadimist.
Selles näites kasutame käsku storeAlert, et näidata, et kuigi Selenium IDE ei kuvanud tegelikku hoiatust, kuid suutis siiski teate kätte saada.
Step 1) In Selenium IDE, määrake baas URL aadressile http://jsbin.com. Täielik URL on http://jsbin.com/usidix. Need jsbin-koodijupid pärinevad Firefox-plugin ajastu ja ei pruugi enam lahendada; iga leht, millel on nupp, mis annab hoiatuse, annab sama tulemuse.
Step 2) Loo skript, nagu allpool näidatud. click-käsk on suunatud nupule „Mine!”, storeAlert salvestab sõnumi alertMessage'i ja echo prindib selle välja.
Step 3) Käivita skript ja ära oota tegeliku hoiatuse nägemist. Allolev logipaan näitab jäädvustatud teadet, kuigi dialoogiboksi polnud kunagi näha.
Kinnitused
Kinnitused on hüpikaknad, mis pakuvad nuppe OK ja TÜHISTA, erinevalt teadetest, mille puhul on saadaval ainult OK nupp. Kinnituste käsitlemisel kasutatavad käsud peegeldavad teadete käske.
- assertConfirmation / assertNotConfirmation
- assertConfirmationPresent / assertConfirmationNotPresent
- poe kinnitus
- StoreConfirmationPresent
- kinnita kinnitus / kinnita mitte kinnitus
- kontrolligeKinnitusOlemas / kontrolligeKinnitustNotPresent
Lisaks ütlevad need käsud Selenium millist nuppu valida, OK või TÜHISTA.
- valiJärgmise kinnituse korral OK / valiJärgmise kinnituse korral OK ja oota
- valigeCancelOnNextConfirmation
Asetage need käsud enne käsk, mis käivitab kinnituskasti, nii et Selenium IDE teab ette, millist valikut valida. Jällegi, skripti käivitamise ajal kinnituskasti ei kuvata.
Testime veebilehte, millel on nupp, mis on kodeeritud nii, et see annab teada, kas kasutaja vajutas nuppu OK või TÜHISTA.
Step 1) In Selenium IDE, määrake baas URL aadressile http://jsbin.com. Täielik URL on http://jsbin.com/enifaf.
Step 2) Loo skript allpool näidatud viisil. Seekord vajutame kõigepealt nuppu OK.
Step 3) Käivita skript ja märka, et sa ei näe tegelikku kinnitust, kuid veebileht annab ikkagi teada, milline nupp Selenium IDE-klahvi vajutatud.
Step 4) Asendage käsk „chooseOkOnNextConfirmation” käsuga „chooseCancelOnNextConfirmation” ja käivitage skript uuesti. Lehel kuvatakse nüüd vastupidine valik.
mitmekordne Windows
Kui klõpsate lingil, mis avab eraldi akna, peate kõigepealt juhendama Selenium IDE valib selle akna enne, kui saate selle elementidele juurde pääseda. Vanemas IDE-s kasutate akna pealkirja selle asukoha määrajana.
Akende vahel vahetamiseks kasutame käsku selectWindow.
Kasutame linki http://jsbin.com/ocinaj/1, mille pealkiri on „Esimene aken“. Sellel lehel olev hüperlink „siin“ avab Facebooki uues aknas, mille järel juhendame Selenium IDE teha järgmist:
- Kanna juhtimine ülemaknast äsjaavatud Facebooki aknasse käsuga selectWindow, kus asukoha määramiseks kasutatakse akna pealkirja.
- Kinnitage uue akna pealkiri.
- Valige algne aken uuesti käsuga selectWindow, mille sihtmärgiks on „null”.
- Kontrollige praegu valitud akna pealkirja.
Ülaltoodud plaan tõlgitakse siin näidatud neljaastmeliseks järjestuseks.
Step 1) Määrake alus URL aadressile http://jsbin.com.
Step 2) Looge skript, nagu allpool näidatud.
Vajame pausi käsku, et oodata äsja käivitatud akna laadimist, enne kui saame selle pealkirja lugeda.
Step 3) Käivitage skript. Pange tähele, et testjuhtum sooritas, mis tähendab, et saime akende vahel vahetada ja nende pealkirju edukalt kontrollida.
Pea alati meeles, et kui määrad selectWindow sihtmärgi väärtuseks „null“, valib see automaatselt ülemakna – antud juhul akna, kus asub element „link=here“.
Märge: Facebook on selle õpetuse loomisest saadik oma lehe pealkirja muutnud. Muuda skriptis eeldatavat pealkirja vastavalt.
Kaasaegne Selenium Nende käskude IDE ekvivalendid
. Firefox-plugin IDE eemaldati, kui Firefox kolis WebExtensionsi arhitektuuri ja praeguse Chrome'i juurde Firefox ja Edge'i laiendus nimetas enamiku Selenese käske ümber vahedega käskudeks. Käitumine jääb samaks, seega on allolev tabel kõik, mida vajate ülaltoodud skriptide lugemiseks praeguse installi korral.
| Selle õpetuse pärandkäsk | Praegune Selenium IDE-käsk |
|---|---|
| salvestada | salvestada |
| miss | miss |
| poeTekst | salvesta tekst |
| poeElementPresent | store element present (või assert element present) |
| assertAlert / verifyAlert | kinnitada hoiatust / kinnitada hoiatust |
| valiJärgmise kinnitusega OK | vali järgmisel kinnitusel ok |
| valigeCancelOnNextConfirmation | vali järgmisel kinnitusel tühista |
| selectWindow (pealkiri sihtmärgina) | vali aken käepidemega=${käepide} |
Kaks erinevust väärivad väljatoomist. Viipadel, mida pärandartiklis ei käsitleta, on nüüd oma käsud: vasta järgmisele küsimusele planeerib vastuse enne dialoogi ilmumist ja veebidraiveri vastus nähtaval viipal tüübid juba avatud viibale. Ja akende vahetamine ei sõltu enam lehe pealkirjast. Käivita poe akna käepide esmalt käepideme jäädvustamiseks ja seejärel edasiandmiseks käepide=${sinuKäepide} akna valimiseks. See muudatus eemaldab ülaltoodud märkuses kirjeldatud tõrkerežiimi, kus sait lihtsalt nimetab oma lehe ümber ja skript ei leia enam akent. Ametlik Selenium IDE projekti sait loetleb kogu praeguse käskude komplekti.













