Korte online workshop voor Selenium IDE

Een korte online workshop voor Selenium IDE

Selenium IDE is de “instap-versie” van Selenium, naast z’n grotere broer Selenium Web Driver.

Met Selenium IDE is het betrekkelijk eenvoudig om repeterende UI testen (denk aan regressietesten) te automatiseren. Met deze instructie helpen we jou als testspecialist op weg.

We behandelen achtereenvolgens de volgende stappen:

  1. Selenium IDE installeren
  2. Flow control installeren
  3. Opnemen testscript
  4. Testscripts aanvullen met commando’s
  5. Afspelen en uitvoeren
  6. Resultaat interpreteren
  7. De naam van een knopje aanpassen
  8. Testdata aanpassen

1. We beginnen bij het begin: de installatie van Selenium en wat daar voor nodig is.

Systeem vereisten:

  • OS: Windows / MacOS
  • Browser: Firefox

Installeren Selenium IDE:

  • Open deze link en klik op de button [+ Toevoegen aan Firefox]
  • Bevestig met de blauwe button [Toevoegen]
  • Sluit af met [Nu herstarten]

Selenium IDE Plugins

    1. Ga naar menu van Firefox via 
    2. Klik op ‘Aanpassen’        
    3. Sleep Selenium IDE naar menu-venster

7.  Klik op Aanpassen afsluiten”

Klaar! Selenium is nu geïnstalleerd.

 

2. Flow control installeren

Met de installatie van Selenium IDE zijn we er nog niet! Om foutmeldingen te voorkomen tijdens het afspelen van de gemaakte scripts moeten we ook nog Selenium Flow Control installeren. En dat gaat zo:

Systeem vereisten:

  • OS: Windows / MacOS
  • Browser: Firefox

Installeren Selenium Flow Control:

  • Gebruik de zoekterm ‘selenium Flow control’ in google.
  • Open eerste zoekresultaat

Selenium IDE: Flow Control :: Add-ons voor Firefox

          https://addons.mozilla.org/nl/firefox/addon/flow-control/
  • Klik op Toevoegen aan Firefox
  • Klik op Installeren (Firefox start opnieuw op)

Simpel toch?

 

3. Opnemen van het testscript

Daar gaan we dan, klaar om te beginnen met het automatiseren van je regressietesten? Let’s go!

Elk Selenium IDE script begint met een opname van de stappen precies zoals je die handmatig zou uitvoeren en zometeen geautomatiseerd wilt hebben.

  1. Open selenium IDE door op de button  te klikken (Let op! Selenium opent direct in record mode.)
  2. Voer in de browser de gewenste acties uit voor het opnemen van de test.
  3. Wanneer alle acties zijn opgenomen, klik je op de rode knop  om het opnemen te stoppen
  4. Je kunt het script nog aanpassen en opslaan.

 

  • Om een volgende test op te nemen klik je op de rode knop om te starten met opnemen.

4. Zelf testscripts aanvullen met commando’s

Ben je er nog steeds? Goed zo!
Om het Selenium script slimmer te maken gaan we het verrijken met commando’s zoals validaties dat bepaalde tekst aanwezig is op een specifieke pagina in een webapplicatie (“assertions”).

  1. Open het gewenste testscript
  2. Klik rechts in het venster onder de laatste regel om een nieuwe te openen
  3. Voer een commando in (bijv: “verifyTextPresent” voor het controleren op aanwezigheid van o.a. een foutmelding)
  4. Voer een target in of selecteer (m.b.v. de select knop) een element op de pagina Let op! deze functie werkt niet op een Mac
  5. Controleer of je het juiste target hebt geselecteerd met behulp van de ‘find’ knop (het target wordt geel gearceerd in het browser)
  6. Voer vervolgens de waarde in die zichtbaar moet zijn

  • Het is mogelijk om de volgorde aan te passen door de commando’s rechts in het venster naar de juiste plaats te slepen

Probeer dit maar eens voor jouw specifieke web-app met verschillende ‘Selenium IDE assertions‘  en kijk dan eens hoeveel tijdswinst een Selenium IDE testscript je kan gaan opleveren. En uiteindelijk beter geteste software.

5. Afspelen en uitvoeren

Je bent al over de helft! Nu is het tijd om je testscript af te spelen (en dus te testen of het het goed hebt gedaan :-).

  1. Open selenium IDE door op de button te klikken (Let op! Selenium opent in record mode. Dit kun je uitzetten door op het rode knopje  te drukken)
  2. Ga naar ‘Bestand’
  3. Klik op ‘Open test suite’
  4. Browse naar het pad waarin de testcases en testsuite zijn opgeslagen
  5. Selecteer de testsuite en klik op ‘openen’
  • Je kunt nu de gehele testsuite afspelen door op  te klikken
  • Je kunt een enkele testcase afspelen door de gewenste testcase te selecteren en op  te klikken

Easy does it, right?

 

6. Resultaat interpreteren

Een test uitvoeren is één, maar je moet natuurlijk wel iets kunnen met de resultaten.

Wanneer je één of meerdere testcases hebt afgespeeld kun je, aan de regels in elke testcase, zien of het mogelijk is om de actie (commando) uit te voeren. De regel is dan op dat moment groen of rood gekleurd.

Rood (failed) lijkt altijd een fout te tonen, echter kan het zijn dat dit juist het goede resultaat is.

Elke testcase moet zo zijn opgebouwd, dat je weet welk resultaat het juiste gedrag laat zien.

‘Na inloggen met foutief password op “mijn gegevens” klikken moet niet mogelijk zijn.’ Deze testcase zou dus een rood commando weergeven na afspelen van de testcase. (Dit is dus het juiste gedrag!)

Daarnaast is in het log te zien welke acties zijn uitgevoerd en welke acties mislukt zijn (met de reden waarom)

Tip: Druk bij iedere nieuwe poging in het log op “clear”, zodat je niet in een eindeloze lijst met acties hoeft te zoeken naar het resultaat van de laatste run.

De volgende redenen laten o.a. zien waarom een commando “failed” kan zijn:

  • Target is niet te vinden in de pagina (dit kan komen doordat de pagina nog niet is ingeladen òf het target bestaat niet)
  • Value is niet aanwezig op de pagina (of verkeerde spelling)

In sommige gevallen is het nodig om het testscript aan te passen, in andere gevallen laat dit juist een correcte/foutieve werking van de software zien.

7. Aanpassen: wat als de naam van een object veranderd is?

Nadat een testscript gemaakt is dient het onderhouden te worden. Immers zullen de developers in de loop der tijd wel eens de naam van een button, image, link o.i.d. wijzigen. Als in testscripts verwijzingen staan naar deze oude naam, zal het script falen. Dus moet het script worden aangepast aan de nieuwe object-naam.

  1. Selecteer de gewenste testcase (dubbelklik)
  2. In het rechter overzicht zie je alle targets en waarden (value) staan
  3. Selecteer een commando en pas onder aan het venster het target aan. (dit kan ook d.m.v. de select button) Let op! de select button werkt niet i.c.m. MacOS!

Vergeet niet de testcase en testsuite op te slaan door deze te vervangen.

8. Aanpassen: wat te doen als de ingevoerde waarden veranderd moeten worden

Nog vaker dan objecten wijzigt (test)data. Dus data die onderdeel is van je testen. Ook hierop kan je test uiteindelijk een keer falen. Dus wederom moet je onderhoud plegen, maar dan nu op het data-vlak:

  1. Selecteer de gewenste testcase (dubbelklik)
  2. In het rechter overzicht zie je alle commando’s en waarden (value) staan
  3. Selecteer een commando en pas onder aan het venster de waarden aan.

Vergeet niet de testcase en testsuite op te slaan door deze te vervangen

Okay, dit was de laatste van 8 stappen in deze korte online basis Selenium IDE workshop voor jou als testspecialist.

Heb je toch nog vragen lees hier dan eens verder. Heb je behoefte aan deelname aan een echte workshop neem dan contact met ons op.