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).

Napravite skriptu snimanjem

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.

Napravite skriptu snimanjem

Korak 3

  • Desnom tipkom miša kliknite bilo koji prazan prostor unutar stranice, kao na Mercury Logo Tours u gornjem lijevom kutu. Ovo će dovesti do Selenium IDE kontekstni izbornik. Napomena: Nemojte klikati na hipervezne objekte ili slike
  • Odaberite opciju "Prikaži dostupne naredbe".
  • Zatim odaberite "assertTitle exact: Welcome: Mercury Ture.” Ovo je naredba koja osigurava da je naslov stranice točan.

Napravite skriptu snimanjem

Napravite skriptu snimanjem

Korak 4

  • U tekstualnom okviru "Korisničko ime" od Mercury Obilasci, upišite nevažeće korisničko ime, “invalidUNN”.
  • U tekstualni okvir “Password” upišite nevažeću lozinku, “invalidPWD”.

Napravite skriptu snimanjem

Napravite skriptu snimanjem
Korak 5

  • Kliknite na gumb "Prijava". Firefox trebao bi vas odvesti na ovu stranicu.

Napravite skriptu snimanjem

Korak 6

Toggle gumb za snimanje isključite kako biste zaustavili snimanje. Vaša bi skripta sada trebala izgledati kao ova prikazana u nastavku.

Napravite skriptu snimanjem

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.

Napravite skriptu snimanjem

Korak 8

  • Odaberite željenu lokaciju, a zatim dodijelite naziv Testni slučaj kao “Invalid_login”.
  • Pritisnite gumb "Spremi".

Napravite skriptu snimanjem

Korak 9

Primijetite da je datoteka spremljena kao HTML.

Napravite skriptu snimanjem

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.

Napravite skriptu snimanjem

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

  • tvrditi. Kada naredba "assert" ne uspije, test se odmah zaustavlja.
  • Provjeriti. Kada naredba "potvrdi" ne uspije, Selenium IDE bilježi ovu pogrešku i nastavlja s izvođenjem testa.
  • Čekati. Prije prelaska na sljedeću naredbu, naredbe “waitFor” prvo će pričekati da određeni uvjet postane istinit.
    • Ako uvjet postane istinit unutar razdoblja čekanja, korak prolazi.
    • Ako uvjet ne postane istinit, korak ne uspijeva. Neuspjeh se bilježi, a izvođenje testa nastavlja se na sljedeću naredbu.
    • Prema zadanim postavkama vrijednost vremenskog ograničenja postavljena je na 30 sekundi. Ovo možete promijeniti u Selenium Dijaloški okvir IDE Options pod karticom General.

Tvrdnja u odnosu na potvrdu Selenium

Tvrdnja u odnosu na potvrdu Selenium

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

Stvorite skriptu ručno pomoću Firebuga

Korak 2: Kliknite najviši prazan redak u uređivaču.

Stvorite skriptu ručno pomoću Firebuga

Upišite "otvori" u tekstni okvir naredbe i pritisnite Enter.

Stvorite skriptu ručno pomoću Firebuga

Korak 3

  • Pokreni navigaciju Firefox na naš osnovni URL i aktivirajte Firebug
  • u Selenium Okno uređivača IDE, odaberite drugi redak (redak ispod naredbe “otvori”) i kreirajte drugu naredbu upisivanjem “assertTitle” u okvir za naredbe.
  • Slobodno upotrijebite značajku samodovršavanja.

Stvorite skriptu ručno pomoću Firebuga

Korak 4

  • U Firebugu proširite oznaku za prikaz označiti.
  • Kliknite na vrijednost oznaku (koja je "Dobrodošli: Mercury Tours”) i zalijepite ga na Target polje u uređivaču.

Stvorite skriptu ručno pomoću Firebuga

Korak 5

  • Da biste kreirali treću naredbu, kliknite na treći prazan redak u uređivaču i unesite "type" u tekstualni okvir Naredba.
  • U Firebugu kliknite gumb "Provjeri".

Stvorite skriptu ručno pomoću Firebuga

Kliknite tekstni okvir Korisničko ime. Primijetite da vam Firebug automatski prikazuje HTML kod za taj element.

Stvorite skriptu ručno pomoću Firebuga

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.

Stvorite skriptu ručno pomoću Firebuga

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."

Stvorite skriptu ručno pomoću Firebuga

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.

Stvorite skriptu ručno pomoću Firebuga

Korak 7

  • Da biste stvorili četvrtu naredbu, unesite "type" u tekstni okvir Naredba.
  • Opet, upotrijebite Firebugov gumb “Provjeri” da dobijete lokator za tekstualni okvir “Lozinka”.

Stvorite skriptu ručno pomoću Firebuga

  • Zalijepite atribut NAME ("lozinka") na Target polje i ispred njega dodajte "name="
  • Upišite "invalidPW" u polje Vrijednost Selenium IDE. Vaša testna skripta sada bi trebala izgledati kao na slici ispod.

Stvorite skriptu ručno pomoću Firebuga

Korak 8

  • Za petu naredbu upišite "clickAndWait" u tekstualni okvir Naredba Selenium SDI.
  • Upotrijebite Firebugov gumb “Provjeri” da dobijete lokator za gumb “Prijava”.

Stvorite skriptu ručno pomoću Firebuga

  • Zalijepite vrijednost atributa NAME ("prijava") na Target tekstualni okvir i ispred njega dodajte “name=”.
  • Vaša testna skripta sada bi trebala izgledati kao na slici ispod.

Stvorite skriptu ručno pomoću Firebuga

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.

Korištenje gumba Pronađi

Pritisnite gumb Pronađi. Primijetite da tekstualni okvir Korisničko ime unutar Mercury Stranica obilaska na sekundu postaje istaknuta.

Korištenje gumba Pronađi

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”.

Izvrši naredbu

Korak 2) Pritisnite "X" na tipkovnici.

Korak 3) Primijetite da se tekstni okvir za korisničko ime popunjava tekstom "invalidUN"

Izvrši naredbu

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".

Početna točka

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".

Točke prijeloma

Ž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".

Korak

Prije klika na "Korak".

Testni slučaj se zaustavlja na retku “clickAndWait | prijaviti se".

Korak Nakon klika na "Korak".

"ClickAndWait | login” izvodi se i zaustavlja do sljedeće naredbe (verifyTitle | Prijava: Mercury Ture).

Primijetite da je sljedeći redak pauziran iako tamo nema prijelomne točke. Ovo je glavna svrha značajke Korak – izvršava sljedeće naredbe jednu po jednu kako bi vam dalo više vremena da provjerite ishod nakon svakog koraka.

Važne stvari koje treba imati na umu kada koristite druge formate u prikazu izvora

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