Sökordsdriven testram med exempel

⚡ Smart sammanfattning

Nyckelordsdriven testning separerar testlogik från automatiseringskod med hjälp av mappningping enkeltspråkiga nyckelord till återanvändbara funktioner, så att testare designar, underhåller och skalar automatiserade sviter genom kalkylblad istället för att skriva skript för varje enskilt testfall.

  • 🔑 Grunderna i sökord: Varje handling som openbrowser, click eller Typtext blir ett självbeskrivande nyckelord som backas upp av exakt en funktion.
  • 🧩 Fyra byggstenar: Excel-ark, ett funktionsbibliotek, datablad och ett objektarkiv håller steg, objekt, åtgärder och data separerade.
  • 📊 Borddriven design: Testare skriver fall som nyckelordsrader med parametrar, så inga kunskaper i skriptspråk krävs för att skapa ett test.
  • ⚙️ Utförande av drivrutinsskript: Ett drivrutinsskript läser varje nyckelord, anropar den mappade funktionen och skriver resultatet tillbaka till arket.
  • 🧪 Verktygsval: HP QTP, Seleniumoch Robot Framework tolkar alla nyckelordstabeller utan anpassad parsning.
  • ⚖️ Ramverkspassform: Hybridinställningar parar ihop nyckelord med datadrivna indata för att bredda täckningen utan att duplicera ett enda teststeg.
  • 🚧 Planera för omkostnader: Nyckelordsdesign och biblioteksunderhåll kostar i realtid, så håll ordförrådet litet och granska det vid varje utgåva.

Vad är sökordsdriven testning?

Sökordsdriven testning är en skriptteknik som använder datafiler för att innehålla nyckelord relaterade till applikationen som testas. Dessa nyckelord beskriver den uppsättning åtgärder som krävs för att utföra ett specifikt steg.

Ett nyckelordsdrivet test består av nyckelord på hög och låg nivå, inklusive nyckelordsargumenten, som är sammansatt för att beskriva åtgärden i ett testfall. Det kallas också för tabelldriven testning eller handlingsordsbaserad testning.

Ocuco-landskapet Sökordsdrivet ramverk är ramverket för funktionell automatiseringstestning som är byggt kring den tekniken. Det delar upp testfall i fyra olika delar för att separera kodning från testfall och teststeg för bättre automatisering: själva teststegen, de objekt som dessa steg påverkar, de åtgärder som utförs på dessa objekt och de data som tillhandahålls dem.

I nyckelordsdriven testning identifierar du först en uppsättning nyckelord och associerar sedan en åtgärd (eller funktion) relaterad till dessa sökord. Här beskrivs varje teståtgärd som öppning eller stängning av webbläsare, musklick, tangenttryckningar etc. med ett nyckelord som t.ex. öppna webbläsaren, klicka, Typtext och så vidare.

Diagrammet nedan visar två vanliga affärsåtgärder som förvandlas till återanvändbara sökord. Till exempel:

  1. logga in till "guru99"-webbplatsen – Nyckelordet "inloggning" kommer att användas i vårt automationsramverk, för att testa inloggningsfunktionen eller åtgärden som är kopplad till den.
  2. logout till "guru99"-webbplatsen— Nyckelordet "logga ut" kommer att användas i vårt automationsramverk för att testa utloggningsfunktionen eller åtgärden som är associerad med den.

Du kommer att se fler exempel längre fram i artikeln. Mönstret förändras aldrig: en affärsåtgärd, ett sökord, en funktion.

Exempel på nyckelord

Ordlistan nedan listar typiska nyckelord för en bankapplikation och den affärsåtgärd som varje sökord utlöser.

Nyckelord BESKRIVNING
Logga in Logga in på guru99 banks demosida
E-post Skicka epost
loggar ut Logga ut från guru99 banks demosida
Meddelanden Hitta olästa aviseringar

💡 Tips: Namnge sökorden efter affärsåtgärden, inte det tekniska steget. ”Login” överlever en omdesign av sidan, medan ”ClickBlueButton” inte gör det.

Komponenter i ett sökordsdrivet ramverk

Att veta vad ett nyckelord är tar bara halvvägs. För att skapa ett nyckelordsdrivet ramverk sätter du ihop en liten uppsättning filer, där var och en äger ett visst intresse.

  1. Exelblad – Identifiera nyckelorden och lagra dem i ett Excel-ark, en rad per teststeg.
  2. Funktionsbibliotek – Består av funktionerna för affärsflödena (inloggningsknappen för valfri webbplats). När ett test körs läser det nyckelordet från Excel-arket och anropar funktionerna därefter.
  3. Datablad – Lagra testdata som används i applikationen, så att ett nyckelord körs mot många indata.
  4. Objektförråd – Lagrar lokaliseringspunkterna för varje element som nyckelorden berör, så att en ändrad lokaliseringspunkt redigeras på ett ställe.
  5. Testa skript – Du kan ha testskript för varje manual Testfall eller ett enda drivrutinsskript.
  6. Drivrutinsskript – Går igenom Excel-arket rad för rad, jämför varje nyckelord mot funktionsbiblioteket och registrerar resultatet.
  7. Automationsverktyg – Kör de lösta kommandona mot applikationen och tillhandahåller rapporteringslagret.

Tillsammans bildar dessa sju delar en komplett ramverk för testautomatiseringVarför välja den här designen?

Varför testa sökord

Inom mjukvaruteknik görs nyckelordsdriven testning av följande skäl

  • Vanliga komponenter som hanteras av standardbibliotek
  • Med hjälp av denna metod kan tester skrivas på ett mer abstrakt sätttract-sätt
  • Hög grad av återanvändbarhet
  • Detaljerna i skriptet är dold för användarna
  • Användare behöver inte använda skriptspråken
  • Testet är kortfattat, underhållbart och flexibelt

Eftersom nyckelordslagret absorberar applikationsändringar, en stor regressionstestning sviten förblir grön genom att redigera en handfull funktioner istället för hundratals skript. Det resonemanget formar hur tillvägagångssättet tillämpas.

Hur man utför sökordsdriven testning

Nyckelordsdriven testning kan göras på båda sätt, manuellt såväl som automatiserat. Men vanligtvis används det tillsammans med automatiserad testning.

Målet bakom automatisering av sökordsdriven testning är

  • Det hjälper till att minska underhållskostnaderna
  • Undviker duplicerade specifikationer
  • Större återanvändning av funktionsskript
  • Bättre teststöd och portabilitet
  • Uppnå fler tester med mindre eller samma ansträngning

Med sökordsdriven testning kan du skapa enkla funktionstester I de tidigare utvecklingsstadierna testar man applikationen bit för bit. Det enklaste sättet att skapa ett nyckelordsdrivet test är att spela in det. Efter inspelningen kan testet modifieras och anpassas efter behov.

Varje nyckelord måste vara länkat till minst ett kommando, testskript eller funktion, som implementerar de åtgärder som är relaterade till det nyckelordet.

När testfall exekveras tolkas nyckelord av ett testbibliotek, som anropas av ett testautomationsramverk.

De viktigaste aktiviteterna som ingår i sökordsdriven testning är

  • Steg 1) Identifiera sökord på låg nivå och hög nivå
  • Steg 2) Implementera nyckelorden som körbara
  • Steg 3) Skapa testfall
  • Steg 4) Skapa drivrutinsskript
  • Steg 5) Exekvera automationstestskripten

Steg 1 och 2 är engångsdesignarbete; steg 3 till 5 upprepas varje sprint, vilket exemplen nedan visar.

Exempel på testfall

Dessa tre scenarier återanvänder samma nyckelord som definierats tidigare.

  1. TC_01: Logga in på guru99-demosidan, ta reda på hur många transaktioner som utförs idag
  2. TC_02: Logga in på guru99-demosidan, skicka ett e-postmeddelande till en av dina kunder och logga sedan ut
  3. TC_03: Logga in på guru99s demosida och kontrollera om det finns några meddelanden

Skrivet som en nyckelordstabell blir TC_02 sex rader som alla testare kan läsa eller ändra ordning utan att öppna koden:

Steg Nyckelord Argument Förväntat resultat
1 öppen webbläsare krom Webbläsarsessionen startar
2 Logga in mngr123 / demopass Chefens hemsida visas
3 E-post kund@exampel.com Skrivfönstret öppnas
4 klick Skicka "Mail skickat” visas
5 loggar ut - Sessionen avslutad
6 stäng webbläsaren - Webbläsaren släpptes

Swapping argumentet i steg 3 omvandlar samma sex rader till ett annat test, vilket är där testdata ledningen lönar sig.

Fördelar med sökordsdriven testning

  • Det tillåter funktionella testare att planera testautomatisering innan applikationen är klar
  • Tester kan utvecklas utan programmeringskunskaper
  • Det är inte beroende av ett specifikt programmeringsspråk eller verktyg
  • Kompatibel med alla automationsverktyg som finns på marknaden

Dessa fördelar förklarar varför sökordsdriven testning passar långsiktigt automatiserad testning sviter. Kostnaderna spelar också roll.

Begränsningar med sökordsdriven testning

MagmusklernatracEn funktion som gör nyckelordsdrivna tester läsbara gör dem också dyra att bygga. Innan de första testkörningarna måste någon identifiera nyckelorden, implementera varje funktion, koppla in objektförrådet och skriva drivrutinsskriptet. I ett litet projekt kostar den installationen mer än att skripta testerna direkt.

Underhåll är den andra kostnaden. Biblioteket delas av varje test, så en slarvig redigering förstör hela sviten. Biblioteken sprider sig också: team lägger till nästan dubbletter som "Login", "SignIn" och "DoLogin".

  • Hög initial investering – ramverksdesign och nyckelordsimplementering föregår varje testkörning.
  • Minskad flexibilitet – testare uttrycker bara vad befintliga sökord tillåter, så ovanliga scenarier behöver utvecklas.
  • Obekvämt för komplex logik – förgreningar och öglor motstår plana bordsrader.
  • Färdigheter krävs fortfarande – nyckelordslagret är kodfritt, funktionsbiblioteket är det inte.

⚠️ Varning: RevVisa nyckelordsbiblioteket varje utgåva och ta bort oanvända poster. En okontrollerad vokabulär är den enskilt vanligaste anledningen till att nyckelordsdrivna ramverk överges.

Dessa avvägningar formar jämförelsen nedan.

Nyckelordsdrivet vs. datadrivet vs. hybridramverk

Nyckelordsdriven och datadrivna tester lösa olika problem. Ett datadrivet ramverk varierar indata från ett fast skript; ett nyckelordsdrivet ramverk varierar stegen. Tabellen lägger till den hybridmodell som de flesta företagsteam använder.

Aspect Sökordsdrivet ramverk Datadrivet ramverk Hybrid ramverk
Vad är externaliserat Teststeg och åtgärder Endast testdata Både steg och data
Planeringsinsats Omfattande och precis Begränsat till data och skript Högsta
Underhåll Enklare, mer magmusklertractionlager Hårdare magmusklertractionen är tunnare Enklast i stor skala
Kodningskunskaper behövs Endast för funktionsbiblioteket Krävs för varje skript Krävs för kärnlagret
Kan börja innan bygget Ja Nej Ja

I praktiken kombineras stilarna. Ett hybridramverk lagrar steg som nyckelord och indata i datablad, ofta över en SidobjektmodellVälj nyckelordsdrivet när många testare skriver tester, datadrivet när ett flöde behöver många indata och hybrid när båda gäller.

Verktyg som används för sökordsdrivna tester

Flera verktyg används i stor utsträckning för sökordsdriven testning, och vart och ett tolkar sökordstabellen på olika sätt.

  • HP QTP – levereras med en inbyggd nyckelordsvy, så arket och det körbara testet är en artefakt.
  • Selenium – har inget inbyggt nyckelordslager, så teamen bygger funktionsbiblioteket och drivrutinsskriptet själva.
  • Robotramverk – en motor med öppen källkod utformad kring nyckelord, med tabellformad syntax och många färdiga nyckelord.
  • TestNG – används ofta tillsammans med Selenium för att sekvensera nyckelordsmappade metoder och generera rapporter.

Vår lista över automatiserade testverktyg täcker licenser och plattformssupport för varje alternativ.

Vanliga frågor

AI-assistenter kan utarbeta sökordsnamn från användarberättelser och bygga upp matchningen Selenium metoder, vilket tar bort det mesta av installationstidenpingEn människa måste fortfarande bekräfta affärsvokabulären och validera varje genererad lokaliseringsfunktion innan sviten är betrodd.

Den minskar den snarare än tar bort den. Självläkande motorer identifierar om ett element från omgivande attribut när en lokaliseringsenhet går sönder, vilket minskar behovet av rutinmässiga reparationer. Styrning av arkivet behövs fortfarande, eftersom en läkt lokaliseringsenhet som i tysthet matchar fel element döljer en verklig defekt.

Nej. Båda döljer kod bakom läsbara steg, men BDD-verktyg som Cucumber Använd meningar i form av given-när-sedan-tester skrivna för samarbete kring krav. Nyckelordsdrivna tester använder tabellformade handlingsord skrivna för återanvändning i automatiseringssviten.

Håll ordförrådet så litet som applikationen tillåter, vanligtvis några dussin lågnivååtgärder plus ett nyckelord på hög nivå per affärsflöde. Om två nyckelord beskriver samma åtgärd, slå samman dem omedelbart; det är dubbletter som gör biblioteken ounderhållbara.

Ja. Lägg nyckelordsbladen till versionskontroll tillsammans med funktionsbiblioteket och låt sedan byggservern anropa drivrutinsskriptet. Körare som TestNG handtagsgrowping och rapportering, så fel dyker upp i samma byggrapport som enhetstester.

Sammanfatta detta inlägg med: