Användning Selenium IDE med skript och kommandon (bekräfta, verifiera)
Vi kommer att använda Mercury Tours hemsida som vår webbapplikation under test. Det är ett onlineflygbokningssystem som innehåller alla element vi behöver för denna handledning. Dess URL är https://demo.guru99.com/test/newtours/, och detta kommer att vara vår basadress.
Låt oss nu skapa vårt första testskript i Selenium IDE med den vanligaste metoden – genom att spela in. Efteråt kommer vi att köra vårt skript med hjälp av uppspelningsfunktionen.
Skapa ett skript genom att spela in
steg 1
- Starta Firefox och Selenium ID.
- Ange värdet för vår basadress: https://demo.guru99.com/test/newtours/.
- Toggle Spela in-knappen på (om den ännu inte är aktiverad som standard).
steg 2
In Firefox, navigera till https://demo.guru99.com/test/newtours/. Firefox bör ta dig till sidan som liknar den som visas nedan. |
|
steg 3
|
|
steg 4
|
|
steg 5
|
|
steg 6
Toggle inspelningsknappen av för att stoppa inspelningen. Ditt skript ska nu se ut som det som visas nedan. |
|
steg 7
Nu när vi är klara med vårt testskript ska vi spara det i ett testfall. I Arkiv-menyn, välj "Spara testfall". Alternativt kan du helt enkelt trycka på Ctrl+S. |
|
steg 8
|
|
steg 9
Observera att filen sparades som HTML. |
Steg 10) Gå tillbaka till Selenium IDE och klicka på Playback-knappen för att köra hela skriptet. Selenium IDE ska kunna replikera allt felfritt.
Introduktion till Selenium Kommandon – Selenesiska
- Selenesiska kommandon kan ha upp till maximalt två parametrar: mål och värde.
- Parametrar krävs inte hela tiden. Det beror på hur många kommandot behöver.
Typer av kommandon
Actions | Dessa är kommandon som direkt interagerar med sidelement.
Exempel: kommandot "klicka" är en åtgärd eftersom du direkt interagerar med elementet du klickar på. Kommandot "typ" är också en åtgärd eftersom du lägger in värden i en textruta, och textrutan visar dem i gengäld. Det finns en tvåvägsinteraktion mellan dig och textrutan. |
---|---|
Tillbehör | De är kommandon som låter dig lagra värden till en variabel.
Exempel: kommandot "storeTitle" är en accessor eftersom det bara "läser" sidtiteln och sparar den i en variabel. Den interagerar inte med något element på sidan. |
Påståenden | De är kommandon som verifierar om ett visst villkor är uppfyllt.
3 typer av påståenden
|
Påstå vs. Verifiera in Selenium
Gemensamma kommandon
Kommando | Antal parametrar | Description |
---|---|---|
öppet | 0 - 2 | Öppnar en sida med en URL. |
klicka/klicka och vänta | 1 | Klickar på ett specificerat element. |
typ/typKeys | 2 | Skriver en sekvens av tecken. |
verifyTitle/assertTitle | 1 | Jämför den faktiska sidtiteln med ett förväntat värde. |
verifieraTextPresent | 1 | Kontrollerar om en viss text finns på sidan. |
verifyElementPresent | 1 | Kontrollerar närvaron av ett visst element. |
verifieratabell | 2 | Jämför innehållet i en tabell med förväntade värden. |
waitForPageToLoad | 1 | Pausar körningen tills sidan laddas helt. |
waitForElementPresent | 1 | Pausar körningen tills det angivna elementet blir närvarande. |
Skapa ett skript manuellt med Firebug
Nu ska vi återskapa samma testfall manuellt genom att skriva in kommandona. Den här gången måste vi använda Firebug.
steg 1
|
Steg 2: Klicka på den översta tomma raden i editorn. |
Skriv "öppna" i kommandotextrutan och tryck på Enter. |
steg 3
|
steg 4
|
steg 5
|
Klicka på textrutan Användarnamn. Observera att Firebug automatiskt visar HTML-koden för det elementet. |
steg 6 Observera att textrutan Användarnamn inte har ett ID, men det har ett NAME-attribut. Vi kommer därför att använda dess NAMN som lokaliserare. Kopiera NAME-värdet och klistra in det på Target fält i Selenium ID.
Fortfarande i Target textrutan, prefixet "användarnamn" med "namn =", vilket indikerar det Selenium IDE bör rikta in sig på ett element vars NAME-attribut är "userName". Skriv "invalidUN" i textrutan Värde för Selenium ID. Ditt testskript ska nu se ut som bilden nedan. Vi är klara med det tredje kommandot. Obs: Istället för invalidUN kan du ange vilken annan textsträng som helst. Men Selenium IDE är skiftlägeskänslig och du skriver värden/attribut precis som i applikationen. |
steg 7
|
steg 8
|
Steg 9: Spara testfallet på samma sätt som vi gjorde i föregående avsnitt.
Använda Sök-knappen
Hitta-knappen in Selenium IDE används för att verifiera om det vi hade lagt i Target textrutan är verkligen det korrekta UI-elementet.
Låt oss använda testfallet Invalid_login som vi skapade i föregående avsnitt. Klicka på valfritt kommando med a Target ingång, säg, det tredje kommandot.
Klicka på knappen Sök. Observera att textrutan Användarnamn i Mercury Tours-sidan blir markerad för en sekund.
Detta indikerar det Selenium IDE kunde detektera och komma åt det förväntade elementet korrekt. Om sökknappen markerade ett annat element eller inget element alls, måste det vara något fel med ditt skript.
Utför kommando
Detta gör att du kan köra vilket enskilt kommando som helst utan att köra hela testfallet. Klicka bara på raden du vill köra och klicka sedan antingen på "Actions > Execute this command" från menyraden eller tryck helt enkelt på "X" på ditt tangentbord.
Steg 1) Se till att din webbläsare är på Mercury Tours hemsida. Klicka på kommandot du vill utföra. I det här exemplet klickar du på "typ | användarnamn | invalidUN”-raden.
Steg 2) Tryck på "X" på ditt tangentbord.
Steg 3) Observera att textrutan för användarnamn fylls med texten "invalidUN"
Att utföra kommandon på det här sättet är mycket beroende av sidan som Firefox visas för närvarande. Det betyder att om du provar exemplet ovan med Googles startsida visas istället för Mercury Tours', kommer ditt steg att misslyckas eftersom det inte finns någon textruta med ett "userName"-attribut på Googles hemsida.
Startpunkt
En startpunkt är en indikator som talar om Selenium IDE vilka rader körningen kommer att starta. Dess kortkommando är "S".
I exemplet ovan kommer uppspelningen att starta på den tredje raden (skriv | lösenord | invalidPW). Du kan bara ha en startpunkt i ett enda testskript.
Startpunkten liknar Execute Command på så sätt att de är beroende av den sida som för närvarande visas. Startpunkten kommer att misslyckas om du är på fel sida.
brytpunkter
Brytpunkter är indikatorer som talar om Selenium IDE där testet ska pausas automatiskt. Genvägstangenten är "B".
Den gula markeringen betyder att det aktuella steget väntar. Detta bevisar det Selenium IDE har pausat körningen på det steget. Du kan ha flera brytpunkter i ett testfall.
Steg
Det låter dig utföra efterföljande kommandon ett i taget efter att ha pausat testfallet. Låt oss använda scenariot i föregående avsnitt "Bräckpunkter."
Viktiga saker att notera när du använder andra format i källvyn
Selenium IDE fungerar bara bra med HTML – andra format är fortfarande i experimentläge. Det är INTE tillrådligt att skapa eller redigera tester med andra format i källvyn eftersom det fortfarande krävs mycket arbete för att göra det stabilt. Nedan är de kända buggarna från och med version 1.9.1.
- Du kommer inte att kunna utföra uppspelning eller växla tillbaka till tabellvyn om du inte återgår till HTML.
- Det enda sättet att lägga till kommandon säkert på källkoden är genom att spela in dem.
- När du ändrar källkoden manuellt kommer allt att gå förlorat när du byter till ett annat format.
- Även om du kan spara ditt testfall i källvyn, Selenium IDE kommer inte att kunna öppna den.
Det rekommenderade sättet att konvertera Selenese-tester är att använda alternativet "Exportera testfall som..." under Arkiv-menyn, och inte via källvyn.
Sammanfattning
- Testskript kan skapas antingen genom att spela in eller skriva kommandona och parametrarna manuellt.
- När man skapar skript manuellt, används Firebug för att hämta lokaliseringen.
- Sökknappen används för att kontrollera att kommandot kan komma åt rätt element.
- Tabellvy visar ett testskript i tabellform medan källvy visar det i HTML-format.
- Att ändra källvyn till ett icke-HTML-format är fortfarande experimentellt.
- Använd inte källvyn när du skapar tester i andra format. Använd exportfunktionerna istället.
- Parametrar krävs inte hela tiden. Det beror på kommandot.
- Det finns tre typer av kommandon:
- Åtgärder – interagerar direkt med sidelement
- Accessorer – "läser" en elementegenskap och lagrar den i en variabel
- Påståenden – jämför ett verkligt värde med ett förväntat
- Påståenden har tre typer:
- Påstå – vid misslyckande utförs inte längre efterföljande steg
- Verifiera – vid misslyckande utförs de efterföljande stegen fortfarande.
- WaitFor – går över om det angivna villkoret blir sant inom timeoutperioden; annars kommer det att misslyckas
- De vanligaste kommandona är:
- öppet
- klicka/klicka och vänta
- typ/typKeys
- verifyTitle/assertTitle
- verifieraTextPresent
- verifyElementPresent
- verifieratabell
- waitForPageToLoad
- waitForElementPresent