Snel prototypen met HP QTP. Het kan!

3.6 (72%) 10 votes

3 belangrijke aspecten van prototypen in QTP

In de snelle wereld van Agile zijn we wellicht geneigd om aan kleinere opensource tools te denken als het om prototypen gaat voor test automatisering. Het moet snel resultaat opleveren, quick and dirty. Een grote tool als HP’s Quick Test Professional wordt dan over het hoofd gezien, maar dit is naar mijns inziens onterecht. Met de juiste kennis en gebruik van de toolset kun je wel degelijk snel prototypen met QTP.

Voor snel prototypen zijn 3 aspecten zeer belangrijk:

  1. Kennis van VBscripten.
  2. De Object Spy
  3. De Object Repository.

Met een redelijke begrip van VBscripten kan in QTP de “expert view” gebruikt worden. Dit geeft de gebruiker de mogelijkheid om in QTP direct de stappen van de test case te scripten in plaats van op te nemen. De Object Spy en Object Repository worden gebruikt om elementen van het test object niet alleen te identificeren maar ook om op te slaan in een databank (inderdaad een repository) voor verder gebruik. Knoppen, tekst velden, radio buttons en plaatjes. Alle webelementen kunnen in dit geval worden weg geschreven naar deze databank. Willen wij dus op een knop drukken, dan is descriptive scripting, elementen benoemen aan de hand hun HTML kenmerken, niet meer nodig maar is een referentie naar de knop in de Object Repostory (OR) al voldoende om de knop in te drukken. Dit scheelt tijd, code tikken en maakt het geheel ook nog eens herbruikbaar voor als de knop onder de motorkap verandert. We hoeven dan de knop alleen in de OR aan te passen, niet in onze code.

OS OR

Nu dan even naar de praktijk. De happy flow van een test website is bekend. Hoe nu te werk?

Identificeer allereerst de elementen die gebruikt worden in de flow. Welke knoppen worden ingedrukt? Welke velden worden ingevuld met data? We doen dit met Object Spy. Klik simpel weg op het object met de spy-mode actief en zie vervolgens de data verschijnen in QTP. Na deze procedure wordt het element weggeschreven naar de OR met een logische (korte) naam. Nadat alle element zijn opgeslagen richten je je op de expert view in QTP en beginnen te scripten:

De happy flow wordt gevolgd van A tot Z. Inlog gegevens invullen? Scripten in QTP:

code1

Moeten we op de inlog knop drukken? Scripten in QTP:

code2

Zoeken naar een product en klikken op zoeken? Scripten in QTP:

code3

Na de hele flow gescript te hebben, save je de file, druk je op de run knop met als conclusie dat het geautomatiseerde prototype af is.

Omdat dit een prototype is zijn er geen parameters gebruikt, de datatable met rust gelaten, geen aparte actions gebruikt en de validatie tussen de stappen niet gescript. Met dit prototype is aangetoond dat de elementen geïdentificeerd konden worden en de website te automatiseren is met QTP. In een agile omgeving kan dit al snel duidelijk verschaffen hoe verder te gaan met automatiseren, sprint planning indelen enz.

Door middel van de datatable functionaliteit in QTP kunnen we dit prototype uitbreiden naar een volwaardige test case waarin meerdere parameters mogelijk zijn. Hier over meer in een volgende QTP blog post.

Leave a Reply

Your email address will not be published. Required fields are marked *

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