Geautomatiseerd testen met Selenium: Een eerste stap

Al een tijdje wilde ik mijzelf verder verdiepen in Selenium als testautomatiseringstool. Eerder had ik al een cursusje gehad om de Selenium IDE te gebruiken, maar dit is niet de oplossing die je voor tests zou willen gebruiken, plus je bent behoorlijk browser afhankelijk. Up-to-date handleidingen voor het opzetten van een Selenium project zijn wat lastig te vinden en doen verschillenden zaken vaak op hun eigen manier. Om een goede start voor mensen te geven die ook onbekend zijn met Selenium wilde ik deze handleiding schrijven.

In deze handleiding wil ik stapsgewijs uitleggen hoe jij je eigen Selenium project opzet, aan de hand daarvan zijn vaak al andere handleidingen te vinden hoe je verder kan gaan. Ik zal gebruik maken van Selenium in combinatie met de NetBeans IDE voor Java en de Maven repository (maakt het makkelijk om Java Libraries toe te voegen).

We starten met de installatie van NetBeans met de Java Development Kit. Deze is hier te vinden:
http://www.oracle.com/technetwork/java/javase/downloads/jdk-netbeans-jsp-142931.html

Zodra je de installatie voltooid hebt, start je NetBeans op. Vervolgens ga je naar “New Project” (het bruine icoontje met het plusje). We kiezen als categorie “Maven” en daarin als project “Java Application”.

Klik op “Next”, geef je project een naam en verander eventueel de locatie waar je jouw project wil opslaan. Vervolgens klik je op “Finish” en je project zal aangemaakt worden.

Zodra het project gemaakt is gaan we de pom.xml aanpassen. In dit bestand is het de bedoeling dat we de nodige dependencies toevoegen voor Maven. Voor dit project hebben we twee dependencies nodig, dat zijn JUnit en natuurlijk Selenium. In onderstaande screenshot kun je zien hoe je deze kan toevoegen, daaronder heb ik de code staan zodat je deze makkelijk kan kopiëren. De versies die erin staan zijn op het moment van schrijven de nieuwste, voor de zekerheid kun je de laatste versie altijd opzoeken op: https://search.maven.org/.

<dependencies>
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>3.12.0</version>
    </dependency>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
    </dependency>
</dependencies>

Zodra bovenstaande in je pom.xml is opgenomen gaan we onze eerste testcase aanmaken.

Klik met je rechtermuisknop op je project, ga voor “New” en klik vervolgens op “Other”. Onder categorie vind je “Selenium Tests”, klik deze aan en kies vervolgens voor “Selenium Test Case” onder “File Types”.

In het volgende scherm geef je jouw test case een logische naam en maak je de test case aan door op “Finish” te klikken. Bij het aanmaken zal het java bestand automatisch openen.

Het eerste wat je ziet bovenaan de pagina zijn een aantal regels met “import”, dit zijn de libraries die in het basisscript al gebruikt worden. Zodra je andere (Selenium) functies gaat gebruiken zal dit uitbreiden.

Wat we nu gaan doen is een driver downloaden die de browser aan kan sturen. In dit geval starten we met de Firefox driver. De Firefox (Gecko) driver kun je hier vinden: https://github.com/mozilla/geckodriver/releases. Download de laatste versie die geschikt is voor jouw systeem en pak deze uit op een handig te bereiken locatie.

De libraries voor de Firefox driver worden standaard opgenomen in de testcase, dus daar hoeft niks aan gedaan te worden. Wel moeten we nu de locatie van de Firefox driver aangeven. We gaan voor dit voorbeeld voor een snelle oplossing, dus we stoppen dit stukje code in de test zelf. Hieronder is te zien hoe ik het stukje code toegevoegd heb, onder de screenshot het stukje code zelf om het makkelijk te kunnen kopiëren.

System.setProperty("webdriver.gecko.driver", "C:\\drivers\\geckodriver.exe");

Zodra je deze regel toegevoegd hebt, met het juiste pad naar je geckodriver.exe, is de testcase klaar voor uitvoer. Nu is het enige wat je nog te doen staat het weer rechtermuisknop klikken op je project en vervolgens op “Build with Dependencies” te klikken. Zodra NetBeans klaar is met deze opdracht klik je weer met de rechtermuisknop op je project en kies je voor “Run Selenium Tests”.

Als het goed zou de testcase goed moeten draaien en zie je vanzelf een Firefox scherm opgestart worden. Als de stappen goed doorlopen worden zal de driver ook weer de browser sluiten.

In deze standaard testcase wordt de NetBeans website geopend en zal het de titel van de website checken op het woord “NetBeans”.

Gefeliciteerd, je hebt jouw eerst testcase draaiende en kan nu verder spelen met de mogelijkheden die Selenium biedt. Misschien dat ik in de (nabije) toekomst nog verder in ga op dit onderwerp, maar voor nu verwijs ik je graag door naar de documentatie van Selenium waar veel van de mogelijkheden beschreven staan: https://www.seleniumhq.org/docs/.

Geef een reactie

This site uses Akismet to reduce spam. Learn how your comment data is processed.