Kako koristiti Selenium IDE sa skriptama i naredbama (tvrdi, potvrdi)
Mi ćemo koristiti Mercury Web stranica Tours kao naša web aplikacija na testu. To je online sustav za rezervaciju letova koji sadrži sve elemente koji su nam potrebni za ovaj vodič. Njegov URL je https://demo.guru99.com/test/newtours/, a ovo će biti naš osnovni URL.
Kreirajmo sada našu prvu testnu skriptu Selenium IDE korištenjem najčešće metode - snimanjem. Nakon toga, izvršit ćemo našu skriptu koristeći značajku reprodukcije.
Napravite skriptu snimanjem
Korak 1
- Lansirati Firefox i Selenium SDI.
- Upišite vrijednost za naš osnovni URL: https://demo.guru99.com/test/newtours/.
- Toggle gumb Snimanje uključen (ako još nije uključen prema zadanim postavkama).
Korak 2
In Firefox, krenite u https://demo.guru99.com/test/newtours/. Firefox trebao bi vas odvesti na stranicu sličnu onoj prikazanoj u nastavku. |
|
Korak 3
|
|
Korak 4
|
|
Korak 5
|
|
Korak 6
Toggle gumb za snimanje isključite kako biste zaustavili snimanje. Vaša bi skripta sada trebala izgledati kao ova prikazana u nastavku. |
|
Korak 7
Sada kada smo završili s testnom skriptom, spremit ćemo je u testni slučaj. U izborniku File odaberite "Save Test Case". Alternativno, možete jednostavno pritisnuti Ctrl+S. |
|
Korak 8
|
|
Korak 9
Primijetite da je datoteka spremljena kao HTML. |
Korak 10) Vratite se na Selenium IDE i kliknite gumb Reprodukcija za izvođenje cijele skripte. Selenium IDE bi trebao moći replicirati sve besprijekorno.
Uvod u Selenium Naredbe – Selenese
- Selenese naredbe mogu imati najviše dva parametra: cilj i vrijednost.
- Parametri nisu potrebni cijelo vrijeme. Ovisi o tome koliko će naredba trebati.
Vrste naredbi
Akcije | To su naredbe koje izravno komuniciraju s elementima stranice.
Primjer: naredba "klik" je radnja jer izravno komunicirate s elementom na koji kliknete. Naredba "type" također je radnja jer stavljate vrijednosti u tekstni okvir, a tekstni okvir vam ih zauzvrat prikazuje. Između vas i tekstualnog okvira postoji dvosmjerna interakcija. |
---|---|
Pristupnici | To su naredbe koje vam omogućuju pohranjivanje vrijednosti u varijablu.
Primjer: naredba “storeTitle” je pristupnik jer samo “čita” naslov stranice i sprema ga u varijablu. Ne dolazi u interakciju ni s jednim elementom na stranici. |
tvrdnje | To su naredbe koje provjeravaju je li ispunjen određeni uvjet.
3 Vrste tvrdnji
|
Tvrdnja u odnosu na potvrdu Selenium
Uobičajene naredbe
naredba | Broj parametara | Description |
---|---|---|
otvoriti | 0 - 2 | Otvara stranicu pomoću URL-a. |
kliknite/kliknite i pričekajte | 1 | Klikne na određeni element. |
tip/tipKljučevi | 2 | Upisuje niz znakova. |
verifyTitle/assertTitle | 1 | Uspoređuje stvarni naslov stranice s očekivanom vrijednošću. |
verifyTextPresent | 1 | Provjerava postoji li određeni tekst na stranici. |
verifyElementPresent | 1 | Provjerava prisutnost određenog elementa. |
verifyTable | 2 | Uspoređuje sadržaj tablice s očekivanim vrijednostima. |
čekaj za učitavanje stranice | 1 | Pauzira izvođenje dok se stranica potpuno ne učita. |
waitForElementPresent | 1 | Pauzira izvođenje dok navedeni element ne postane prisutan. |
Stvorite skriptu ručno pomoću Firebuga
Sada ćemo ponovno ručno izraditi isti testni slučaj, upisivanjem naredbi. Ovaj put ćemo morati koristiti Firebug.
Korak 1
|
Korak 2: Kliknite najviši prazan redak u uređivaču. |
Upišite "otvori" u tekstni okvir naredbe i pritisnite Enter. |
Korak 3
|
Korak 4
|
Korak 5
|
Kliknite tekstni okvir Korisničko ime. Primijetite da vam Firebug automatski prikazuje HTML kod za taj element. |
Korak 6 Primijetite da tekstni okvir Korisničko ime nema ID, ali ima atribut NAME. Stoga ćemo kao lokator koristiti njegovo IME. Kopirajte vrijednost NAME i zalijepite je na Target polje u Selenium SDI.
Još uvijek u Target tekstualni okvir, prefiks “userName” s “name=”, što ukazuje na to Selenium IDE bi trebao ciljati na element čiji je atribut NAME "userName." Upišite "invalidUN" u tekstualni okvir Vrijednost Selenium IDE. Vaša testna skripta sada bi trebala izgledati kao na slici ispod. Završili smo s trećom naredbom. Napomena: Umjesto invalidUN, možete unijeti bilo koji drugi tekstualni niz. Ali Selenium IDE je osjetljiv na velika i mala slova i upisujete vrijednosti/atribute točno kao u aplikaciji. |
Korak 7
|
Korak 8
|
Korak 9: Spremite test slučaj na isti način kao što smo učinili u prethodnom odjeljku.
Korištenje gumba Pronađi
Gumb Pronađi u Selenium IDE se koristi za provjeru je li ono što smo stavili u Target tekstualni okvir doista je ispravan element korisničkog sučelja.
Iskoristimo testni slučaj Invalid_login koji smo izradili u prethodnim odjeljcima. Pritisnite bilo koju naredbu s a Target unos, recimo, treća naredba.
Pritisnite gumb Pronađi. Primijetite da tekstualni okvir Korisničko ime unutar Mercury Stranica obilaska na sekundu postaje istaknuta.
To ukazuje na to Selenium IDE je mogao ispravno otkriti i pristupiti očekivanom elementu. Ako je gumb Pronađi istaknuo drugi element ili nijedan element, onda nešto nije u redu s vašom skriptom.
Izvrši naredbu
To vam omogućuje da izvršite bilo koju pojedinačnu naredbu bez pokretanja cijelog testa. Samo kliknite na redak koji želite izvršiti, a zatim kliknite na "Akcije > Izvrši ovu naredbu" na traci izbornika ili jednostavno pritisnite "X" na tipkovnici.
Korak 1) Provjerite je li vaš preglednik uključen Mercury Početna stranica Tours. Kliknite naredbu koju želite izvršiti. U ovom primjeru, kliknite na "type | korisničko ime | invalidUN”.
Korak 2) Pritisnite "X" na tipkovnici.
Korak 3) Primijetite da se tekstni okvir za korisničko ime popunjava tekstom "invalidUN"
Izvršavanje naredbi na ovaj način uvelike ovisi o stranici koja Firefox trenutno se prikazuje. To znači da ako pokušate gornji primjer s prikazanom Google početnom stranicom umjesto Mercury Tours', tada vaš korak neće uspjeti jer na Googleovoj početnoj stranici nema tekstualnog okvira s atributom "userName".
Početna točka
Početna točka je pokazatelj koji govori Selenium IDE u kojim redovima će započeti izvođenje. Njegova tipka prečaca je "S".
U gornjem primjeru, reprodukcija će započeti u trećem redu (upišite | lozinka | nevažeći PW). Možete imati samo jednu početnu točku u jednoj testnoj skripti.
Početna točka je slična Izvrši naredbu tako da ovise o trenutno prikazanoj stranici. Početna točka neće uspjeti ako ste na pogrešnoj stranici.
Točke prijeloma
Prijelomne točke su pokazatelji koji govore Selenium IDE gdje automatski pauzirati test. Tipka prečaca je "B".
Žuto označavanje znači da je trenutni korak na čekanju. Ovo to dokazuje Selenium IDE je pauzirao izvršenje na tom koraku. Možete imati više prijelomnih točaka u jednom testu.
Korak
Omogućuje vam izvršavanje naredbi jednu po jednu nakon pauziranja testnog slučaja. Iskoristimo scenarij iz prethodnog odjeljka "Prijelomne točke".
Važne stvari koje treba imati na umu kada koristite druge formate u prikazu izvora
Selenium IDE radi dobro samo s HTML-om – ostali formati su još uvijek u eksperimentalnom načinu rada. To je NIJE preporučljivo za stvaranje ili uređivanje testova koristeći druge formate u prikazu izvora jer još uvijek treba puno rada da bi bio stabilan. Ispod su poznati bugovi od verzije 1.9.1.
- Nećete moći izvršiti reprodukciju niti se vratiti na Prikaz tablice osim ako se ne vratite na HTML.
- Jedini način sigurnog dodavanja naredbi u izvorni kod jest njihovo snimanje.
- Kada ručno modificirate izvorni kod, sve će se izgubiti kada se prebacite na drugi format.
- Iako možete spremiti svoj testni slučaj dok ste u prikazu izvora, Selenium IDE ga neće moći otvoriti.
Preporučeni način pretvaranja Selenese testova je korištenje opcije "Izvezi testni slučaj kao..." u izborniku Datoteka, a ne kroz Prikaz izvora.
Rezime
- Testne skripte mogu se izraditi snimanjem ili ručnim upisivanjem naredbi i parametara.
- Kada ručno kreirate skripte, Firebug se koristi za dobivanje lokatora.
- Gumb Pronađi koristi se za provjeru može li naredba pristupiti ispravnom elementu.
- Tablični prikaz prikazuje testnu skriptu u tabelarnom obliku dok je Source View prikazuje u HTML formatu.
- Promjena prikaza izvora u format koji nije HTML još uvijek je eksperimentalna.
- Nemojte koristiti prikaz izvora za izradu testova u drugim formatima. Umjesto toga koristite značajke izvoza.
- Parametri nisu potrebni cijelo vrijeme. Ovisi o naredbi.
- Postoje tri vrste naredbi:
- Radnje – izravno komuniciraju s elementima stranice
- Pristupnici – “čita” svojstvo elementa i pohranjuje ga u varijablu
- Tvrdnje – uspoređuje stvarnu vrijednost s očekivanom
- Tvrdnje imaju tri vrste:
- Assert – nakon neuspjeha, naredni koraci se više ne izvode
- Provjeri – nakon neuspjeha, naredni koraci se i dalje izvršavaju.
- WaitFor – prolazi ako navedeni uvjet postane istinit unutar vremenskog razdoblja; inače neće uspjeti
- Najčešće naredbe su:
- otvoriti
- kliknite/kliknite i pričekajte
- tip/tipKljučevi
- verifyTitle/assertTitle
- verifyTextPresent
- verifyElementPresent
- verifyTable
- čekaj za učitavanje stranice
- waitForElementPresent