Testitava veebirakendusena kasutame Mercury Toursi veebisaiti. See on veebipõhine lennupiletite broneerimissüsteem, mis sisaldab kõiki selle õpetuse jaoks vajalikke elemente. Selle URL on http://demo.guru99.com/test/newtours/ ja see on meie põhi-URL.
Looge skript salvestamise abil
Loogem nüüd oma esimene testskript Selenium IDE-s, kasutades kõige tavalisemat meetodit - lindistades. Seejärel käivitame skripti taasesitusfunktsiooni abil.
Samm 1
- Käivitage Firefox ja Selenium IDE.
- Sisestage meie põhi-URL väärtus: http://demo.guru99.com/test/newtours/.
- Lülitage nupp Salvesta sisse (kui see pole veel vaikimisi sisse lülitatud).
2. samm
Firefoxis navigeerige saidile http://demo.guru99.com/test/newtours/. Firefox peaks teid viima lehele, mis sarnaneb allpool näidatuga. |
|
3. samm
|
|
4. samm
|
|
5. samm
|
|
6. samm
Salvestamise peatamiseks lülitage salvestusnupp välja. Teie skript peaks nüüd välja nägema selline, nagu allpool näidatud. |
|
7. samm
Nüüd, kui oleme oma testiskripti teinud, salvestame selle testjuhtumi. Valige menüüs Fail "Salvesta testjuhtum". Teise võimalusena võite lihtsalt vajutada klahvikombinatsiooni Ctrl + S. |
|
8. samm
|
|
9. samm.
Pange tähele, et fail salvestati HTML-na. |
10. samm.
Minge tagasi Selenium IDE juurde ja klõpsake kogu skripti käivitamiseks nuppu Taasesitus. Seleen IDE peaks suutma kõike laitmatult korrata.
Seleeni käskude tutvustus - Selenese
- Selenese käskudel võib olla kuni kaks parameetrit: sihtmärk ja väärtus.
- Parameetreid pole kogu aeg vaja. See sõltub sellest, kui palju käsku vaja läheb.
3 käskude tüüpi
Toimingud |
Need on käsud, mis suhtlevad otse lehe elementidega. Näide: käsk "click" on toiming, kuna suhtlete otse elemendiga, millel klõpsate. Käsk "tüüp" on ka toiming, kuna sisestate väärtusi tekstikasti ja tekstikast näitab teile neid vastutasuks. Teie ja tekstikasti vahel on kahepoolne suhtlus. |
Juurdepääsud |
Need on käsud, mis võimaldavad teil väärtusi muutujale salvestada. Näide: käsk "storeTitle" on juurdepääs, kuna see ainult "loeb" lehe pealkirja ja salvestab selle muutujasse. See ei suhtle lehe ühegi elemendiga. |
Väited |
Need on käsud, mis kontrollivad, kas teatud tingimus on täidetud. 3 väidete tüüpi
|
Kinnita vs kinnita
Ühised käsud
Käsk | Parameetrite arv | Kirjeldus |
---|---|---|
avatud | 0 - 2 |
Avab lehe URL-i abil. |
klõpsake / klõpsakeJaoot | 1 |
Klõpsud määratud elemendil. |
type / typeKeys | 2 |
Sisestab märkide jada. |
verifyTitle / assertTitle | 1 |
Võrdleb tegelikku lehe pealkirja oodatava väärtusega. |
verifyTextPresent | 1 |
Kontrollib, kas lehel on teatud tekst. |
verifyElementPresent | 1 |
Kontrollib teatud elemendi olemasolu. |
kontrolltabel | 2 |
Võrdleb tabeli sisu eeldatavate väärtustega. |
waitForPageToLoad | 1 |
Peatab täitmise, kuni leht on täielikult laaditud. |
waitForElementPresent | 1 |
Peatab täitmise, kuni määratud element on kohal. |
Looge skript käsitsi Firebugiga
Nüüd loome sama testjuhtumi käsitsi uuesti, sisestades käsud. Seekord peame kasutama Firebugi.
Samm 1
|
2. samm: klõpsake redaktori kõige ülemisel tühjal real. |
Sisestage tekstiväljale Command käsk "open" ja vajutage sisestusklahvi. |
3. samm
|
4. samm
|
5. samm
|
Klõpsake tekstikastil Kasutajanimi. Pange tähele, et Firebug kuvab teile automaatselt selle elemendi HTML-koodi. |
6. samm
Pange tähele, et tekstikastil Kasutajanimi pole ID-d, kuid sellel on atribuut NAME. Seetõttu kasutame selle nime NIMI. Kopeerige väärtus NAME ja kleepige see seleeni IDE väljale Siht. Ikka tekstiväljale Sihtmärk sisestage eesliide "kasutajaNimi" sõnaga "nimi =", mis näitab, et seleeni IDE peaks sihtima elemendi, mille atribuut NAME on "kasutajaNimi". Sisestage seleeni IDE tekstikasti VäärtusUNUN. Teie testskript peaks nüüd välja nägema nagu allolev pilt. Kolmanda käsuga oleme valmis. Märkus. KehtetuUN asemel võite sisestada mis tahes muu tekstistringi. Kuid Selenium IDE on tõstutundlik ja tippite väärtused / atribuudid täpselt nagu rakenduses. |
7. samm
|
8. samm
|
9. samm: salvestage testjuhtum samamoodi nagu eelmises jaotises.
Nupu Leia kasutamine
Selenium IDE nuppu Leia kasutatakse selleks, et kontrollida, kas tekstiväljale Sihtmärk pandud olime tõesti õige kasutajaliidese element.
Kasutagem eelmistes jaotistes loodud Invalid_login testjuhtumit. Klõpsake suvalise käsu, millel on Sihtmärk, näiteks kolmas käsk.
Klõpsake nuppu Leia. Pange tähele, et Mercury Toursi lehe tekstikast Kasutaja nimi muutub sekundiks esiletõstetuks.
See näitab, et Selenium IDE suutis oodatud elemendi õigesti tuvastada ja sellele juurde pääseda. Kui nupp Leia tõstis esile mõne muu elemendi või puudus see üldse, siis peab skriptis midagi valesti olema.
Käsu täitmine
See võimaldab teil käivitada mis tahes ühe käsu ilma kogu testjuhtumit käivitamata . Klõpsake lihtsalt real, mida soovite käivitada, ja klõpsake siis menüüribal nuppu "Toimingud> Käivita see käsk" või vajutage lihtsalt klaviatuuril nuppu "X".
Samm 1. Veenduge, et teie brauser oleks Mercury Toursi avalehel. Klõpsake käsul, mida soovite täita. Selles näites klõpsake real "type | kasutajanimi | invalidUN".
Samm 2. Vajutage klaviatuuril nuppu "X".
3. samm. Pange tähele, et kasutajanime tekstikast täidetakse tekstiga "invalidUN"
Sel viisil käskude täitmine sõltub suuresti lehest, mida Firefox praegu kuvab . See tähendab, et kui proovite ülaltoodud näidet, kus Mercury Toursi asemel kuvatakse Google'i avaleht, siis teie samm ebaõnnestub, kuna Google'i avalehel pole atribuudiga "userName" tekstikasti.
Alguspunkt
Alguspunkt on indikaator, mis ütleb Selenium IDE-le, millised read käivitatakse . Selle otseteeklahv on "S".
Ülaltoodud näites alustatakse taasesitust kolmandal real (tüüp | parool | invalidPW). Ühes testskriptis võib olla ainult üks alguspunkt.
Alguspunkt sarnaneb käskuga Execute selliselt, et need sõltuvad praegu kuvatavast lehest. Alguspunkt ebaõnnestub, kui olete valel lehel.
Murdepunktid
Murdepunktid on näitajad, mis ütlevad Selenium IDE-le, kus test automaatselt peatada. Otseteeklahv on "B".
Kollane esiletõst tähendab, et praegune samm on ootel. See tõestab, et Selenium IDE on selle sammu täitmise peatanud. Ühes testjuhtumis võib olla mitu murdepunkti.
Samm
See võimaldab teil täita järgmisi käske ükshaaval pärast testjuhtumi peatamist. Kasutagem stsenaariumi eelmises jaotises "Murdepunktid".
Enne kui klõpsate nupul „Samm”. Testjuhtum peatub real "clickAndWait | login". |
|
Pärast nuppu "Samm" klõpsamist. Käivitatakse rida "clickAndWait | login" ja peatub järgmise käsuga (verifyTitle | Sign-on: Mercury Tours). Pange tähele, et järgmine rida on peatatud, kuigi seal pole katkestuspunkti. See on funktsiooni Samm põhieesmärk - see täidab järgnevad käsud ükshaaval, et anda teile pärast iga sammu tulemuse kontrollimiseks rohkem aega. |
Olulised asjad, mida tuleb märkida allikavaates muude vormingute kasutamisel
Seleen IDE töötab hästi ainult HTML-iga - muud vormingud on endiselt eksperimentaalses režiimis . Allikavaates ei ole soovitav teste luua ega muuta, kasutades muid vorminguid, kuna selle stabiilseks muutmiseks on vaja veel palju tööd teha. Allpool on teadaolevad vead alates versioonist 1.9.1.
- Te ei saa taasesitust teha ega tabelivaatesse tagasi lülituda, kui pöördute tagasi HTML-i juurde.
- Ainus viis lähtekoodile ohutult käske lisada on nende salvestamine.
- Kui muudate lähtekoodi käsitsi, läheb see teisele vormingule üleminekul kaotsi.
- Allikavaates olles saate oma testjuhtumi salvestada, kuid Selenium IDE ei saa seda avada.
Soovitatav viis Selenese testide teisendamiseks on kasutada menüü Fail käsku "Ekspordi testjuhtum kui ...", mitte allikavaate kaudu.
Kokkuvõte
- Testskripte saab luua kas käskude ja parameetrite käsitsi salvestamise või tippimisega.
- Käsitsi skriptide loomisel kasutatakse lokaatori hankimiseks Firebugi.
- Nuppu Otsi kasutatakse selleks, et kontrollida, kas käsuga on võimalik õigele elemendile juurde pääseda.
- Tabelivaates kuvatakse testskript tabelina, allikavaates aga HTML-vormingus.
- Allikavaate muutmine mitte-HTML-vorminguks on endiselt eksperimentaalne.
- Ärge kasutage allikavaadet testide loomiseks teistes vormingutes. Kasutage selle asemel funktsioone Eksport.
- Parameetreid pole kogu aeg vaja. See sõltub käsust.
- On kolme tüüpi käske:
- Toimingud - suhtleb otse lehe elementidega
- Accessors - "loeb" elemendi omadust ja salvestab selle muutujasse
- Väited - võrdleb tegelikku väärtust eeldatava väärtusega
- Väidetel on kolme tüüpi:
- Kinnita - ebaõnnestumisel järgmisi samme enam ei tehta
- Kontrolli - ebaõnnestumise korral tehakse järgmised sammud endiselt.
- WaitFor - möödub, kui määratud tingimus saab tõendatud ajavahemiku jooksul; muidu see ebaõnnestub
- Kõige tavalisemad käsud on:
- avatud
- klõpsake / klõpsakeJaoot
- type / typeKeys
- verifyTitle / assertTitle
- verifyTextPresent
- verifyElementPresent
- kontrolltabel
- waitForPageToLoad
- waitForElementPresent