qtp frameworks test automation frameworks keyword driven
Klik hier voor de serie QTP-trainingen
beste gratis back-upsoftware voor mac
Wat is Test Automation Framework en wat is QTP Framework?
In het kader van een succesvolle implementatie van QTP bij een softwaretestproject komen we vaak het concept van frameworks tegen. Het raamwerk is niets anders dan de aanpak die we consequent volgen tijdens het automatiseringsproces - een set richtlijnen.
Persoonlijk vind ik het niet leuk om namen te geven en te zeggen dat de een beter werkt dan de ander. De selectie van een bepaald raamwerk is niet het begin van een project. Het omgekeerde is waar. Tijdens het bedenken van een teststrategie bouwt u de regels op die van toepassing zijn op de huidige situatie van de tester en dat is uw raamwerk.
Dat gezegd hebbende, zijn de volgende enkele van de belangrijke punten die we in overweging moeten nemen:
- Herbruikbaarheid
- Eenvoudig onderhoud van het script
- Leesbaarheid van scripts
- Goed werkbare mappenstructuur voor alle testmiddelen
- Geen harde coderingswaarden
- Geen cascade van storingen. (d.w.z. als een test mislukt, mag dit niet leiden tot het falen of stoppen van de andere)
Dit is de basislijst en er kunnen er meer worden toegevoegd op basis van de vereiste.
Elke teststrategie die enkele of al deze bovenstaande punten probeert op te nemen, is uw Test Automation Framework.
Er zijn verschillende namen en soorten frameworks. Het volgende is de lijst met frameworks volgens mij:
Wat je leert:
- Typen automatiseringsframeworks: (van toepassing op QTP-framework)
- Lineair kader
- Zoekwoordgestuurd framework
- Aanbevolen literatuur
Typen automatiseringsframeworks: (van toepassing op QTP-framework)
- Lineair - Eenvoudigste vorm van het maken van een toets. Schrijf gewoon een enkel programma zonder modulariteit in opeenvolgende stappen
- Zoekwoordgestuurd - Maak verschillende trefwoorden voor een andere reeks bewerkingen en in het hoofdscript kunnen we gewoon naar deze trefwoorden verwijzen.
- Datagestuurd - Om dezelfde reeks bewerkingen uit te voeren op meerdere sets gegevens die in afzonderlijke bestanden worden bewaard, meestal Excel-bladen.
- Hybride - Een combinatieframework dat deels datagedreven en deels trefwoordgestuurd kan zijn
- BPT - Dit betekent alleen dat programma's worden opgesplitst in bedrijfscomponenten en worden gebruikt met een van de bovenstaande typen frameworks
Lineair kader
Zoals besproken, houdt deze aanpak in dat je gewoon de code schrijft terwijl we opnemen en doorgaan.
Bijvoorbeeld, als de bewerking die u moet verifiëren het maken van een nieuw account in Gmail is, zijn de volgende stappen:
- Open gmail.com
- Klik op ‘Account aanmaken’
- Voer de details in
- Controleer de details
- Maak het account aan
Het bovenstaande is een voorbeeld van hoe een programma dat de lineaire methode gebruikt eruit ziet. Op dit punt is het duidelijk wat de voor- en nadelen van deze methode zijn.
Voordelen
- Eenvoud. Voor de beginnende programmeur is deze methode geschikt
- Tijd - Het kost niet veel tijd om de test te maken
- Er is heel weinig planning nodig
Nadelen
- Helemaal niet herbruikbaar
- Als er een ander script is dat een bepaald aspect van de ‘Google Accounts’ -pagina verifieert, moet je de code herschrijven om ook de gmail.com-pagina te openen. Dus veel herhaling.
- Alle gegevens zijn direct in code ingebed. Door de hardcoding kan de code niet worden gebruikt voor andere gegevenssets.
- Foutgevoelig en onderhoud is moeilijk
Hoewel de nadelen zwaarder wegen dan de voordelen, kan deze methode worden gebruikt wanneer uw doel strikt is om een taak zonder validatie uit te voeren.
De componenten van testmiddelen in dit soort frameworks zijn:
- Testscript
- Objectrepository (dit kan worden vermeden door indien nodig beschrijvende programmering te gebruiken)
Zoekwoordgestuurd framework
Hoe kunnen we de bovenstaande lineaire raamwerktest verbeteren? Hoe kunnen we de nadelen overwinnen?
https www google comyoutube naar mp3
Het is duidelijk dat we herbruikbaarheid, modulariteit en leesbaarheid nodig hebben. Deze functies proberen te integreren en tot een optimale oplossing komen, is niets anders dan een poging om een nieuw, beter kader te creëren.
Wat zijn de herbruikbare componenten?
- Lancering van Gmail en aankomst op de pagina ‘Google Accounts’. Dit is een gegeven, aangezien het valideren van deze pagina betekent dat u eerst hier moet komen. ‘GoTo Google-account’ - kan worden omgezet in een aparte functie die keer op keer kan worden aangeroepen.
- Voer de details in en valideer ze - U kunt dit verder opdelen in positieve en negatieve blokken om meer modulariteit te krijgen
- Account maken - Het laatste niveau van validatie en het voltooien van de taak die voorhanden is
Als je hier eenmaal bent aangekomen, heb je niet alleen componenten geïdentificeerd die keer op keer kunnen worden aangeroepen, maar heb je ook je lineaire programma in modules opgedeeld.
Functies:
Tot dusver hebben we in onze serie nog geen functies behandeld. Functies zijn niets anders dan een stukje code dat bepaalde bewerkingen uitvoert. Het accepteert invoerparameters van het programma dat het aanroept en retourneert er waarde aan.
Over het algemeen worden alle herbruikbare stukjes code gegroepeerd in een bestand dat alle herbruikbare functies bevat. Dit bestand is gekoppeld aan een bron voor uw QTP-test. Een functiebibliotheek kan typisch een bestand zijn van het type: .vbs, .txt of .qfl
Terug naar ons voorbeeld- Dit is hoe het functiebibliotheekbestand kan zijn:
Nu zal uw werkelijke script zijn:
Uit het bovenstaande programma is nu duidelijk dat we leesbaarheid, modulariteit hebben bereikt en als een ander programma de login-functie wil gebruiken, kunnen we deze zeker hergebruiken. Het enige dat u hoeft te doen, is de functiebibliotheek ook aan die nieuwe test koppelen en u bent klaar om te gaan.
U kunt ook zien dat in uw script de functienamen functioneren alsof ze dat zijn VBScript's keywords en vandaar de naam voor dit framework.
De componenten van testmiddelen in dit soort frameworks zijn:
- Testscripts
- Gedeelde OF
- Bibliotheek met gedeelde functies
Wat zou dit programma nog beter maken? Als we de EnterDetails () -functie zouden kunnen maken om verschillende sets gegevens te nemen en verschillende accounts aan te maken en niet beperkt te blijven tot de gegevens die we hard in het programma hebben gecodeerd. Dat is precies de volgende stap. Gegevens die uw tests aansturen en de aanpak waar we dit doen, is het datagestuurde raamwerk.
We zullen bespreken Datagestuurde en hybride frameworks in detail in de komende tutorial.
beste plek om gratis anime online te kijken
Bezoek hier voor de QTP Training Tutorials-serie
Laat het ons weten als u problemen heeft met het QTP-raamwerk waarmee u wordt geconfronteerd en die niet in deze artikelen worden behandeld. We zullen zeker proberen uw vragen te beantwoorden.
Aanbevolen literatuur
- Meest populaire testautomatiseringsraamwerken met voor- en nadelen van elk - Selenium Tutorial # 20
- Testautomatisering - Is het een gespecialiseerde carrière? Kunnen normale testers ook automatiseren?
- Waarom hebben we framework nodig voor testautomatisering?
- QTP Tutorial # 18 - Datagestuurde en hybride frameworks uitgelegd met QTP-voorbeelden
- Hoe verschilt de testplanning voor handmatige en automatiseringsprojecten?
- Hoe datagestuurd testen werkt (voorbeelden van QTP en selenium)
- Hoe u de beste tool voor het testen van automatisering kiest (een complete gids)
- Data Driven Framework in Selenium WebDriver met Apache POI