Trefwoordgestuurd testframework met voorbeeld
⚡ Slimme samenvatting
Keyword Driven Testing scheidt de testlogica van de automatiseringscode door middel van mapping.ping Door trefwoorden in eenvoudige taal te koppelen aan herbruikbare functies, kunnen testers geautomatiseerde testsuites ontwerpen, onderhouden en schalen via spreadsheets in plaats van scripts te schrijven voor elk afzonderlijk testgeval.

Wat is trefwoordgestuurd testen?
Zoekwoordgestuurd testen is een scripttechniek die gegevensbestanden gebruikt om de trefwoorden te bevatten die betrekking hebben op de applicatie die wordt getest. Deze trefwoorden beschrijven de reeks acties die nodig zijn om een specifieke stap uit te voeren.
Een trefwoordgestuurde test bestaat uit trefwoorden op hoog en laag niveau, inclusief de trefwoordargumenten, die is samengesteld om de actie van een testcase te beschrijven. Het wordt ook wel tabelgestuurd testen of op actiewoorden gebaseerd testen genoemd.
De Zoekwoordgestuurd raamwerk Het framework voor functioneel geautomatiseerd testen is gebouwd rond die techniek. Het verdeelt testgevallen in vier verschillende onderdelen om de code te scheiden van de testgevallen en teststappen voor betere automatisering: de teststappen zelf, de objecten waarop die stappen betrekking hebben, de acties die op die objecten worden uitgevoerd en de gegevens die eraan worden verstrekt.
Bij Keyword Driven Testing identificeert u eerst een reeks trefwoorden en koppelt u vervolgens een actie (of functie) die verband houdt met deze trefwoorden. Hier wordt elke testactie, zoals het openen of sluiten van de browser, muisklikken, toetsaanslagen, enz., beschreven door een trefwoord zoals openbrowser, klik, Typtekst enzovoort.
Het onderstaande diagram laat zien hoe twee alledaagse bedrijfsactiviteiten kunnen worden omgezet in herbruikbare zoekwoorden. Bijvoorbeeld:
- Log in naar de “guru99” website – Het trefwoord “login” zal worden gebruikt in ons automatiseringsframework, om de login-functie of bijbehorende actie te testen.
- uitloggen naar de website "guru99" - Het trefwoord "logout" zal worden gebruikt in ons automatiseringsframework om de uitlogfunctie of bijbehorende actie te testen.
Verderop in het artikel vind je meer voorbeelden. Het patroon blijft hetzelfde: één bedrijfsactie, één zoekwoord, één functie.
Voorbeeld van trefwoorden
De onderstaande woordenlijst bevat typische trefwoorden voor een bankapplicatie en de bedrijfsactie die elk trefwoord activeert.
| Trefwoorden | Beschrijving |
|---|---|
| Inloggen | Log in op de guru99 bank demosite |
| Emails | STUUR E-MAIL |
| uitloggen | Meld u af bij de demosite van de bank guru99 |
| Meldingen | Vind ongelezen meldingen |
💡Tip: Geef trefwoorden de naam die ze aanduiden met de bedrijfsactie, niet met de technische stap. "Inloggen" blijft behouden na een pagina-herontwerp; "Klik op de blauwe knop" niet.
Onderdelen van een op trefwoorden gebaseerd framework
Weten wat een zoekwoord is, is slechts de helft van het verhaal. Om een zoekwoordgestuurd framework te creëren, stel je een kleine set bestanden samen, waarbij elk bestand één specifiek aandachtspunt vertegenwoordigt.
- Excel blad – Identificeer de trefwoorden en sla ze op in een Excel-bestand, één rij per teststap.
- Functiebibliotheek – Bevat de functies voor de bedrijfsprocessen (de inlogknop voor elke website). Wanneer een test wordt uitgevoerd, leest deze het trefwoord uit het Excel-bestand en roept de bijbehorende functies aan.
- Datasheets – Sla de testgegevens op die in de applicatie worden gebruikt, zodat één trefwoord op meerdere invoerwaarden wordt uitgevoerd.
- Object-opslagplaats – Bevat de locators voor elk element waarop de zoekwoorden betrekking hebben, zodat een gewijzigde locator op één plek kan worden bewerkt.
- Testscripts – Je kunt hebben testscripts voor elke handleiding Testgeval of een enkel driverscript.
- Bestuurdersscript – Doorloopt het Excel-bestand rij voor rij, vergelijkt elk trefwoord met de functiebibliotheek en registreert het resultaat.
- Automatiseringstool – Voert de opgeloste opdrachten uit op de applicatie en levert de rapportagelaag.
Samen vormen deze zeven stukken een compleet geheel. testautomatiseringsframeworkWaarom voor dit ontwerp kiezen?
Waarom trefwoordgestuurd testen?
In software engineering wordt Keyword Driven Testing om de volgende reden uitgevoerd
- Algemene componenten afgehandeld door de standaardbibliotheek
- Met deze aanpak kunnen tests op een meer abstracte manier worden geschreven.tracmanier
- Hoge mate van herbruikbaarheid
- De details van het script zijn verborgen voor de gebruikers
- Gebruikers hoeven de scripttalen niet te gebruiken
- De test is beknopt, onderhoudbaar en flexibel
Omdat de trefwoordlaag applicatiewijzigingen absorbeert, is een groot deel regressietesten De suite blijft groen door een handvol functies aan te passen in plaats van honderden scripts. Die redenering bepaalt hoe de aanpak wordt toegepast.
Hoe u trefwoordgestuurde tests kunt uitvoeren
Keyword-driven testen kan zowel handmatig als geautomatiseerd worden uitgevoerd. Meestal wordt het echter gebruikt in combinatie met geautomatiseerd testen.
Het doel van het automatiseren van Keyword Driven Testing is
- Het helpt de onderhoudskosten te verlagen
- Voorkomt dubbele specificaties
- Groter hergebruik van functiescripting
- Betere testondersteuning en draagbaarheid
- Bereik meer testen met minder of dezelfde inspanning
Met Keyword Driven Testing kunt u eenvoudig eenvoudige resultaten creëren. functionele tests In de beginfase van de ontwikkeling wordt de applicatie stukje voor stukje getest. De eenvoudigste manier om een keyword-driven test op te stellen, is door deze op te nemen. Na de opname kan de test worden aangepast en gepersonaliseerd naar behoefte.
Elk trefwoord moet gekoppeld zijn aan ten minste één commando, testscript of functie die de acties uitvoert die bij dat trefwoord horen.
Wanneer testgevallen worden uitgevoerd, worden trefwoorden geïnterpreteerd door een testbibliotheek, die wordt aangeroepen door een testautomatiseringsframework.
De belangrijkste activiteiten die bij Keyword Driven Testing horen, zijn:
- Stap 1) Identificatie van zoekwoorden op laag en hoog niveau
- Stap 2) Implementatie van de trefwoorden als uitvoerbaar bestand
- Stap 3) Testcases maken
- Stap 4) Het maken van de stuurprogrammascripts
- Stap 5) Uitvoeren van de automatiseringstestscripts
Stappen 1 en 2 zijn eenmalige ontwerptaken; stappen 3 tot en met 5 worden in elke sprint herhaald, zoals de onderstaande voorbeelden laten zien.
Voorbeeld testgevallen
Deze drie scenario's hergebruiken dezelfde trefwoorden die eerder zijn gedefinieerd.
- TC_01: Log in op de demosite van guru99 en ontdek hoeveel transacties er vandaag zijn uitgevoerd
- TC_02: Meld u aan bij de guru99 demosite, stuur een e-mail naar een van uw klanten en meld u vervolgens af
- TC_03: Log in op de guru99-demosite en controleer of er meldingen zijn ontvangen
Als trefwoordtabel geschreven, bestaat TC_02 uit zes rijen die elke tester kan lezen of herschikken zonder de code te openen:
| Stap voor | Keyword | Argument | Verwacht resultaat |
|---|---|---|---|
| 1 | openbrowser | Chroom | Browsersessie start |
| 2 | Inloggen | mgr123 / demopass | Startpagina van de manager weergegeven |
| 3 | Emails | klant@voorbeeld.com | Het venster voor het opstellen van een nieuw document wordt geopend. |
| 4 | Klik | Verstuur | "Mail "verzonden" verschijnt |
| 5 | uitloggen | - | Sessie gesloten |
| 6 | browser sluiten | - | Browser uitgebracht |
Ruilenping Het argument in stap 3 verandert dezelfde zes rijen in een andere test, en dat is waar testgegevens Goed management loont.
Voordelen van trefwoordgestuurd testen
- Hiermee kunnen functionele testers testautomatisering plannen voordat de applicatie gereed is
- Tests kunnen worden ontwikkeld zonder programmeerkennis
- Het is niet afhankelijk van een specifieke programmeertaal of tool
- Compatibel met alle automatiseringstools die op de markt verkrijgbaar zijn
Deze voordelen verklaren waarom Keyword Driven Testing geschikt is voor langlevende systemen. geautomatiseerd testen suites. De kosten spelen ook een rol.
Beperkingen van zoekwoordgestuurd testen
De buikspierentracDe complexiteit die keyword-driven tests leesbaar maakt, maakt ze ook duur om te ontwikkelen. Voordat de eerste test wordt uitgevoerd, moet iemand de keywords identificeren, elk keyword als een functie implementeren, de objectrepository koppelen en het driver-script schrijven. Bij een klein project kost die opzet meer dan het direct schrijven van de tests.
Onderhoud is de tweede kostenpost. De bibliotheek wordt door elke test gedeeld, dus één onzorgvuldige bewerking kan de hele testsuite onbruikbaar maken. Bibliotheken groeien bovendien snel: teams voegen bijna identieke bibliotheken toe, zoals "Login", "SignIn" en "DoLogin".
- Hoge initiële investering Het frameworkontwerp en de implementatie van trefwoorden gaan vooraf aan elke testrun.
- Verminderde flexibiliteit – testers kunnen alleen uitdrukken wat de bestaande trefwoorden toelaten, dus ongebruikelijke scenario's moeten nog worden ontwikkeld.
- Lastig voor complexe logica – Vertakkingen en lussen verzetten zich tegen platte tabelrijen.
- Vaardigheden zijn nog steeds vereist. – De trefwoordenlaag is codevrij, de functiebibliotheek niet.
⚠️ Waarschuwing: RevBekijk de trefwoordenbibliotheek bij elke release en verwijder ongebruikte items. Een ongecontroleerde woordenschat is de meest voorkomende reden waarom frameworks die op trefwoorden gebaseerd zijn, worden verlaten.
Deze afwegingen bepalen de onderstaande vergelijking.
Trefwoordgestuurd versus datagestuurd versus hybride framework
Op zoekwoorden gebaseerd en datagedreven testen Los verschillende problemen op. Een datagestuurd framework varieert de invoer van een vast script; een keywordgestuurd framework varieert de stappen. De tabel toont het hybride model dat de meeste bedrijfsteams hanteren.
| Aspect | Zoekwoordgestuurd raamwerk | Datagedreven raamwerk | Hybride raamwerk |
|---|---|---|---|
| Wat wordt geëxternaliseerd? | Teststappen en -acties | Alleen testgegevens | Zowel stappen als gegevens |
| Planningsinspanning | Uitgebreid en nauwkeurig | Beperkt tot data en scripts. | Hoogst |
| Onderhoud | Makkelijker, meer buikspierentractie lagen | Harder, buikspierentractie is dunner | Het gemakkelijkst op grote schaal |
| Programmeervaardigheden vereist | Alleen voor de functiebibliotheek | Vereist voor elk script | Vereist voor de kernlaag |
| Kan al vóór de bouw beginnen. | Ja | Nee | Ja |
In de praktijk worden de stijlen gecombineerd. Een hybride framework slaat stappen op als trefwoorden en invoer in gegevensbladen, vaak over een Pagina-objectmodelKies voor een op trefwoorden gebaseerde aanpak wanneer veel testers tests schrijven, een op data gebaseerde aanpak wanneer één workflow veel inputs vereist, en een hybride aanpak wanneer beide van toepassing zijn.
Tools die worden gebruikt voor trefwoordgestuurd testen
Voor Keyword Driven Testing worden diverse tools veelvuldig gebruikt, die elk de zoekwoordtabel op een andere manier interpreteren.
- HP QTP – wordt geleverd met een ingebouwde trefwoordweergave, waardoor het spreadsheet en de uitvoerbare test één artefact vormen.
- Selenium – heeft geen ingebouwde trefwoordlaag, dus teams bouwen de functiebibliotheek en het driverscript zelf.
- Robot-kader – een open-source zoekmachine ontworpen rond trefwoorden, met een tabelstructuur en veel kant-en-klare trefwoorden.
- TestNG – vaak gebruikt in combinatie met Selenium om methoden te ordenen die aan trefwoorden zijn gekoppeld en rapporten te genereren.
Onze lijst van geautomatiseerde testtools Dit omvat de licenties en platformondersteuning voor elke optie.

