Selenium IDE Webdriver Introductie
Het Wielsem 10, 5231 BW ‘s-‐Hertogenbosch, telefoon 073-‐6409311 e-‐mail
[email protected] internet http://www.testwork.nl
Selenium IDE
Introductie
1
Inhoudsopgave
1
Inhoudsopgave ................................................................................................................................ 2
2
Introductie Selenium IDE ................................................................................................................ 3
3
Vereiste vooraf ................................................................................................................................ 3
4
3.1
Firefox ..................................................................................................................................... 3
3.2
Selenium IDE ........................................................................................................................... 3
3.3
Firebug .................................................................................................................................... 3
Aan de slag ...................................................................................................................................... 4 4.1
Openen Selenium IDE .............................................................................................................. 4
4.2
IDE features ............................................................................................................................. 4
4.2.1
Menu Bar ......................................................................................................................... 4
4.2.2
Toolbar ............................................................................................................................ 4
Versie 0.2
© testwork.nl
Pagina 2 / 8
Selenium IDE
2
Introductie
Introductie Selenium IDE
Selenium-‐IDE (Integrated Development Environment) is het tool, welke je kunt gebruiken voor het ontwikkelen van je Selenium test cases. Het is een gemakkelijk te gebruiken Firefox plug-‐in. Selenium bevat ook een context menu waarmee je eerst een UI element uit de actuele pagina in de web browser kunt selecteren om daarna uit een lijst met Selenium commando’s met voor gedefinieerde parameters het voor het geselecteerde UI element relevante Selenium commando te selecteren. Dit bespaart niet alleen tijd, maar is ook een uitstekende manier om de Selenium script syntax te leren.
3 3.1
Vereiste vooraf Firefox
Selenium IDE is een Firefox add-‐on, dus voordat je Selenium IDE kunt gebruiken moet eerst Mozilla Firefox worden geïnstalleerd. Firefox (17.0.1) kan worden gedownload vanaf de volgende locatie: http://www.getfirefox.com.
3.2
Selenium IDE
Selenium IDE bezit functionaliteit die conflicteert met Mozilla’s add-‐on policy, daarom is het niet via de Mozilla website te downloaden. Selenium IDE kan worden gedownload vanaf de volgende website: http://seleniumhq.org/download. Bij het opstellen van dit document was/is actueel de download version 1.9.0 released op 24 juli 2012. Firefox beschermt je tegen het installeren van add-‐ons van onbekende locaties, dus zul je op ‘Allow’ moeten klikken om de installatie te starten en/of te vervolgen. Herstart Firefox na de installatie van Selenium IDE. Na herstart tref je Selenium IDE aan onder het Firefox webontwikkelaar menu (zie ook het onderstaande screenshot).
3.3
Firebug
Met Firebug is het mogelijk om de elementen van het testobject te identificeren. Deze zogenaamde locators kunnen worden gebruikt in de testscripts. Firebug kan worden gedownload vanaf de volgende locatie: http://getfirebug.com/. Versie 0.2
© testwork.nl
Pagina 3 / 8
Selenium IDE
4
Introductie
Aan de slag
4.1 Openen Selenium IDE Je start het test tool eenvoudigweg op door Selenium IDE te selecteren in het Firefox webontwikkelaar menu. Er verschijnt dan een leeg script-‐editing window en een menu voor het laden of creëren van nieuwe test cases.
4.2 IDE features 4.2.1 Menu Bar Het menu Bestand (F) heeft opties voor Test Case en Test Suite (een set van test cases). Door gebruik van deze menukeuze kun je een nieuwe test case toevoegen, een test case openen, een test case opslaan, een test case exporteren in een programmeertaal (C#, Java, …) van je keuze. Je kunt ook een gebruikte test case openen. Al deze opties zijn ook beschikbaar voor Test Suite. Met het menu Bewerken kun je kopiëren, plakken, verwijderen, ongedaan maken en alle bewerkingen voor het bewerken van de commando's in je test case selecteren. Via het menu Opties kun je instellingen veranderen . Je kunt de time-‐outwaarde instellen voor bepaalde opdrachten, gebruiker gedefinieerde extensies toevoegen aan de basis set van Selenium opdrachten en definiëren van de indeling (taal) welke moet worden gebruikt bij het opslaan van uw test cases. Het menu Help is het standaard Firefox Help menu. Slechts één item in dit menu (UI-‐Element Documentation) heeft betrekking op Selenium IDE. 4.2.2 Toolbar De toolbar bevat knoppen voor de controle op de uitvoering van je test gevallen, met inbegrip van een stap-‐ voor-‐stap functie (Step) voor het debuggen van je test cases. De meest rechtse knop (de ‘red-‐dot’) is de record-‐ knop.
Speed control. Hiermee bepaal je hoe snel je testcase wordt uitgevoerd. Versie 0.2
© testwork.nl
Pagina 4 / 8
Selenium IDE
Introductie
Run All. Een test suite met meerdere test cases wordt geladen en uitgevoerd. Run. Hiermee wordt de geselecteerde test case uitgevoerd. Wanneer slechts een enkele test is geladen hebben deze knop (Run) en de knop alles uitvoeren (Run All) hetzelfde effect. Pause/Resume. Hiermee kun je een test case in uitvoering stoppen en her-‐starten. Step. Hiermee kun je door een test case ‘stappen’ door commando voor commando uit te voeren. Te gebruiken voor het debuggen van test cases. Apply Rollup Rules. Deze geavanceerde functie maakt het mogelijk om repetitieve sequenties van Selenium opdrachten te groeperen in één actie. Gedetailleerde documentatie over Rollup Rules kan worden gevonden in de documentatie van de UI-‐Element in het menu Help. Record: Neemt browser acties van de gebruiker op. 4.2.3 Test Case Venster Je test script wordt weergegeven in het deelvenster test case. Het heeft twee tabbladen, een voor het weergeven van de opdracht en zijn parameters in een leesbaar tabel formaat.
Het andere tabblad Source geeft de test case weer in het formaat zoals het bestand moet worden opgeslagen. Dit is standaard HTML hoewel het kan worden gewijzigd in een programmeertaal zoals Java of C# of een scripting taal als Python. Zie het menu Opties voor meer informatie. Het tabblad Source maakt het ook mogelijk de test case in zijn ruwe vorm te bewerken, met inbegrip van kopiëren, knippen en plakken bewerkingen. De invoervelden Command, Target en Value geven de geselecteerde opdracht weer samen met bijbehorende parameters. Dit zijn de invoervelden waar je de geselecteerde opdracht kunt wijzigen. De eerste parameter die je hebt opgegeven voor een commando in de Reference tab van het onderste deelvenster gaat altijd naar het Target veld. Als een tweede parameter is opgegeven in de Reference tab gaat het altijd in het veld Value.
Versie 0.2
© testwork.nl
Pagina 5 / 8
Selenium IDE
Introductie
4.2.4 Log/Reference/UI-‐Element/Rollup Venster Het onderste deelvenster wordt gebruikt voor vier verschillende functies: Log, Verwijzingen, UI-‐Element en Rollup afhankelijk van welk tabblad is geselecteerd. Log Wanneer je jouw testcase uitvoert, geven foutberichten en informatieberichten de vorderingen in dit deelvenster automatisch weer, zelfs als je niet eerst de tab Log hebt geselecteerd. Deze berichten zijn vaak nuttig voor debugging van de testcase. Met de Clear knop kun je het logboek wissen. De Info knop is een drop-‐ down, waarmee verschillende soorten informatie kunnen worden geselecteerd en getoond.
Reference 1 De Reference tab is standaard geselecteerd wanneer je Selenium opdrachten en parameters invoert of wijzigt in het Table venster. In de Table modus zal het deelvenster Reference de documentatie over de huidige opdracht weergeven. Als commando’s worden ingevoerd of gewijzigd in het Table of Source venster is het van cruciaal belang ervoor te zorgen dat de parameters die zijn opgegeven in de Value en Target velden overeenkomen met de lijst met parameters in het deelvenster Reference. Het aantal parameters dat wordt ingegeven moet overeenkomen met het aantal dat wordt gespecificeerd, de volgorde van parameters moet overeenkomen met de gespecificeerde volgorde en het type van de opgegeven parameters moet overeenkomen met het type dat is gespecificeerd in het Reference venster. Als er een verschil wordt gevonden in een van deze drie gebieden, wordt de opdracht niet correct uitgevoerd.
Terwijl de Reference tab van onschatbare waarde is als een snelle referentie, is het nog steeds vaak noodzakelijk om Selenium referentiedocument (zie http://release.seleniumhq.org/selenium-‐ core/1.0/reference.html) te raadplegen. UI-‐Element Gedetailleerde informatie over deze twee deelvensters (die betrekking hebben op geavanceerde functies) vindt u in de documentatie van de UI-‐Element in het menu Help van Selenium IDE.
1
Ook wel Selense opdrachten genoemd
Versie 0.2
© testwork.nl
Pagina 6 / 8
Selenium IDE
5
Introductie
Opdracht: Maak uw eerste testcase
We gaan de eerste testcase opnemen door Selenium IDE te gebruiken. Hiervoor is het nodig om Mozilla Firefox en Selenium IDE op te starten. Als beide zijn opgestart verschijnt een scherm welke lijkt op het volgende screenshot :
Merk op, dat de record-‐knop op ‘aan’ staat. Start het opnemen van uw test door het uitvoeren van de volgende handelingen: 1. Indien in ‘record mode’, navigeer naar http://book.theautomatedtester.co.uk/chapter1. 2. Doe op de web applicatie het volgende: a. Klik op de radio button. b. Selecteer een andere waarde uit de drop-‐down box, bijvoorbeeld, Selenium RC. c. Klik op de Home Page link.
Versie 0.2
© testwork.nl
Pagina 7 / 8
Selenium IDE 3. 4.
Uw test is nu opgenomen en zou moeten lijken op het vorige screenshot. Klik op de play button ( Als uw test is uitgevoerd, dan zal deze er ongeveer als volgt uit zien:
Versie 0.2
).
Introductie
© testwork.nl
Pagina 8 / 8