QTP/UFT Automatiseringsframework: datagestuurd, op zoekwoorden gebaseerd en hybride.
⚡ Slimme samenvatting
Automatiseringsframeworks in QTP/UFT Organiseer testscripts, data en herbruikbare functies zodanig dat één test meerdere gevallen kan afdekken. Datagestuurde, keywordgestuurde en hybride ontwerpen zijn elk geschikt voor een andere mix van inputs en herbruikbare logica.

Datagestuurd raamwerk
Een datagestuurd framework is een framework dat wordt aangestuurd door verschillende combinaties van input- en outputgegevens.
Een manier om verschillende combinaties van gegevens door te geven is door parametreringBij deze methode maken we gebruik van verschillende kenmerken van QTP.
In DDF worden echter scripts geschreven om parametrering uit te voeren. Dit soort raamwerk is handig wanneer de functionaliteit van de AUT moet worden getest met verschillende inputs en de respectieve outputs moet vastleggen. Deze invoer kan worden gelezen uit een extern bestand zoals Database, Excel, OutlookTekstbestanden, enzovoort, en de bijbehorende uitvoer wordt teruggeschreven naar de corresponderende externe bron, zoals hieronder wordt geïllustreerd.
De algemene stappen die bij het datagestuurde raamwerk betrokken zijn, zijn:
- Bereid de Testgeval voor de applicatie die wordt getest
- Voeg de objecten toe van AUT tot OR
- Schrijf de scripts op basis van de testcase
In deze UFT zelfstudieWe zullen een datagestuurd framework ontwerpen voor een voorbeeldtestcase, waarbij we Excel als externe bron voor de testgegevens gebruiken.
Stap 1) Bereid de testcase voor de te testen applicatie voor.
Testgeval: Open het ordernummer en krijg de klantnaam voor die order. Herhaal hetzelfde proces voor verschillende ordernummers
Externe bron: Excel bestand
De externe bron voor dit voorbeeld is een Excel-bestand. Het VB-script in OpenText Functionele testen (UFT One, voorheen Micro Focus UFTEr moet een script worden geschreven om een Excel-bestand te openen, zodat de testgegevens kunnen worden ingelezen. Dit kan op een hiërarchische manier worden bereikt.
1. Een Excel-bestand wordt eerst geopend als Applicatie
2. Vervolgens moet de werkmap vanaf de opgegeven locatie worden geopend
3. Het blad waarop de testgegevens staan.
4. Ten slotte moet de cel worden gelezen.
Stap 2) Voeg de objecten van AUT toe aan OR
Zodra de testcase klaar is, begint u met het toevoegen van alle vereiste objecten aan de repository. In onze testcase zijn de objecten die moeten worden toegevoegd als volgt
1. “Map openen”-pictogram in het Vluchtreserveringsaanvraag:
2. Het selectievakje "Bestelnummer" verschijnt wanneer u op het pictogram "Map openen" klikt:
3. Het WinEdit-vak van het ordernummer (waar de nummers worden ingevoerd):
4. De OK-knop:
5. Het veld "Naam" is een WinEdit-vak. Dit veld wordt gevuld met een naam zodra er op de knop OK wordt geklikt voor een specifiek ordernummer.
Zodra alle benodigde objecten zijn toegevoegd, ziet de objectrepository er als volgt uit:
Stap 3) Schrijf de scripts op basis van de testcase.
Voordat u het script uitvoert, moet u ervoor zorgen dat het Excel-bestand met de testgegevens is opgeslagen en gesloten.
Het onderstaande script is om het ordernummer uit Excel te lezen en toe te wijzen aan de applicatie via de variabele “vOrder” en de klantnaam vanuit de applicatie te schrijven via de variabele “vName”.
Excel-naam: VluchtDDF.xlsx
Bladnaam: Blad1
uitgang
Zodra het bovenstaande script is uitgevoerd, kan de uitvoer als volgt uit Excel worden verkregen:
Het datagestuurde raamwerk kan ook worden ontwikkeld door te schrijven beschrijvende programmering.
Database gebruiken als externe bron voor DDF
Dezelfde testcase kan worden uitgevoerd als de externe bron een database is, met behulp van de volgende stappen
- Schrijf VBScript om de databaseverbinding tot stand te brengen
- VBScript om een recordset of tabel te openen.
- VBScript om het gewenste veld te openen
- De betreffende cel wordt uit het veld gelezen.
Script
To Establish a Microsoft Database connection
Bestuurder = {Microsoft Toegangsstuurprogramma (*.mdb)}; DBQ =
Naam recordset: OpenOrder
Veldnaam: Bestelnr, klantnaam
PS: Microsoft Access 2010 kan niet worden verbonden met het onderstaande script.
uitgang
Voordelen van DDF
- In één test kan een groot aantal testgegevens worden gelezen en naar het externe bestand worden geschreven
- Loop-instructie wordt gebruikt om dezelfde stappen voor verschillende iteraties te herhalen. Daarom worden de codeerinspanningen verminderd
- Omdat de gegevens rechtstreeks in het externe bestand worden gelezen en geschreven, is het niet nodig om gegevens te kopiëren, plakken of exporteren om ze te gebruiken
- Testgegevens kunnen uit een extern bestand worden gelezen en de uitvoer kan naar elk ander extern bestand worden geschreven
Nadelen van DDF
- Om dit raamwerk te ontwikkelen is kennis van scripting vereist
- Soms kan een bepaald aantal of een combinatie van gegevens uit een externe bron, zoals een database, de prestaties vertragen of zelfs laten vastlopen. QTP
Trefwoordgestuurd raamwerk
Een keyword-driven framework is een framework waarbij zoekwoorden de test bepalen. Het sleutelwoord verwijst naar de door de gebruiker gedefinieerde functies. In dit raamwerk worden trefwoorden aangemaakt om een bepaalde teststap of een testcase uit te voeren. Deze trefwoorden worden vervolgens in de chauffeurstest gebruikt om meerdere testgevallen in dezelfde test uit te voeren.
Over het algemeen kunnen de raamwerken op drie manieren worden ontwikkeld om op de proef te worden gesteld.
- Opnemen en uitvoeren de test
- Voeg objecten toe aan de lokale repository en schrijf de scripts voor alle teststappen
- Schrijf beschrijvende programmering voor alle teststappen
In deze zelfstudie wordt The KDF ontwikkeld door de test op te nemen en uit te voeren.
Ons doel is om één test uit te voeren voor vijf verschillende testgevallen, zoals inloggen op de applicatie, een bestelling plaatsen, een bestelling openen, een bestelling verwijderen en de applicatie sluiten. Daarom zullen we de teststappen voor deze testgevallen vastleggen en de functies creëren met respectievelijk de trefwoorden Login, InsertOrder, OpenOrder, DeleteOrder en CloseApp.
Testcase1: Log in op de applicatie
trefwoord: Log in ()
Opgenomen script:
Testcase2: Voer de bestelling in
trefwoord:Volgorde invoegen()
Opgenomen script:
Testcase3: Open de bestelling
trefwoord:Open bestelling()
Opgenomen script:
Testcase4: Verwijder de bestelling
trefwoord:Order verwijderen()
Opgenomen script:
Testcase5: Sluit de applicatie
trefwoord:SluitApp()
Opgenomen script:
De functies die voor verschillende testgevallen worden aangemaakt, worden opgeslagen in een functiebibliotheek en gekoppeld aan de hoofdtest. Het volstaat om de trefwoorden voor de benodigde testgevallen in de hoofdtest aan te roepen, waardoor de omvang van het stuurprogrammascript in de hoofdtest wordt verkleind.
Het driverscript voor dit eenvoudige raamwerk ziet er als volgt uit:
Door het bovenstaande script uit te voeren, kan het daadwerkelijke resultaat voor alle vijf testgevallen uit één enkele test worden verkregen.
Voordelen
- Een willekeurig aantal testgevallen kan op één test worden uitgevoerd door simpelweg de betreffende trefwoorden aan te roepen
- Het schrijven van algemene beschrijvende programmering voor alle web-/Windows-objecten en het aanroepen ervan als sleutelwoorden zal helpen bij het uitvoeren van dezelfde test voor verschillende dynamische toepassingen.
- Verkleint de grootte van het stuurprogrammascript
Nadelen
- De tijd die nodig is om deze frameworks te ontwikkelen is erg lang als er maar een klein aantal testcases uitgevoerd hoeft te worden
- Het vastleggen van de stappen wordt niet altijd gebruikt bij het ontwerpen van KDF voor veel toepassingen op dezelfde test.
Hybride raamwerk
Een hybride framework is een combinatie van een datagestuurd framework (Data-Driven Framework, DDF) en een zoekwoordgestuurd framework (Keyword-Driven Framework, KDF), waarbij meerdere testgevallen met verschillende invoerwaarden in dezelfde test kunnen worden uitgevoerd.
In dit artikel worden dezelfde testgevallen die in KDF worden gebruikt, in één test uitgevoerd. De trefwoorden en scripts voor alle testgevallen zijn hetzelfde als in KDF. Testgeval TC3: Open de bestelling is echter geparametriseerd. Het script voor dit testgeval is daarom zo geschreven dat het het ordernummer uit een Excel-bestand ontvangt en de klantnaam in het Excel-bestand schrijft.
Testcase1: Log in op de applicatie
trefwoord: Log in ()
Testcase2: Voer de bestelling in
trefwoord:Volgorde invoegen()
Testgeval 3: Open de order voor meerdere ordernummers
trefwoord:Open bestelling()
Description: Hier wordt hetzelfde script gebruikt dat wordt gebruikt om een DDF te ontwikkelen, waardoor de testcase voor verschillende iteraties wordt bereikt.
script:
Testcase4: Verwijder de bestelling
trefwoord:Order verwijderen()
Testcase5: Sluit de applicatie
trefwoord:SluitApp()
Door deze eenvoudige methode te volgen, wordt de parametrisering van TC3 bereikt. Indien van toepassing, kunnen alle andere testcases ook in dezelfde test worden geparametriseerd.
Het bovenstaande voorbeeld is een zeer eenvoudige manier om een hybride framework te ontwerpen. Hetzelfde framework kan ook worden gerealiseerd met beschrijvend programmeren.
Voordelen
- De tijd die nodig is om de test uit te voeren die is ontworpen met een hybride raamwerk is relatief korter vergeleken met andere raamwerken
- Dit kan worden gebruikt wanneer we alle testgevallen en invoer nodig hebben die aan een bepaalde testcase zijn gekoppeld, in dezelfde testsuite.
Nadeel
- Er is duidelijke kennis nodig over het combineren van verschillende raamwerken.




















