Parametrering in QTP/UFT med exempel
⚡ Smart sammanfattning
Parametrering in QTP/UFT ersätter hårdkodade värden med variabla indata så att ett enda testskript kan köras mot många datakombinationer, miljöinställningar och anropsåtgärder utan att skriva om ett enda steg.
Vad är QTP Parametrisering?
QTP/UFT parametrisering låter dig välja olika testindata vid körning istället för att hårdkoda ett enda värde i ett skript. Denna process att mata ett test med externa parametervärden, snarare än ett fast värde, kallas parametrisering.
Utan parameterisering innebär det att testa samma inloggningsskärm med tre olika kombinationer av agentnamn och lösenord att registrera eller underhålla tre nästan identiska skript. Parameterisering behåller ett skript och matar det helt enkelt med en ny rad med data för varje körning, vilket är anledningen till att datadriven testning är beroende av det.
Typer av parametrisering i QTP
UFT (förr QTP) stöder fyra parametertyper, som var och en är lämpad för en annan typ av variabeldata:
- Datatabellparametrar
- Test-/åtgärdsparametrar
- Miljövariabelparametrar
- Slumptalsparametrar
Tabellen nedan jämför vad varje typ bäst används till innan vi går igenom ett liveexempel.
| Parametertyp | Varifrån kommer värdet | Typiskt användningsfall |
|---|---|---|
| data~~POS=TRUNC | Globalt eller åtgärds- (lokalt) kalkylblad som ingår i testet | Kör samma steg med många rader med testdata |
| Miljöfaktor | Inbyggda värden, värden som anges i testet eller en extern XML-fil | Dela ett konstant värde, såsom en URL, i varje handling |
| Test/Åtgärd | Ett in- eller utdatavärde som skickas mellan åtgärder | Vidarebefordra ett värde som producerats i en åtgärd till en annan åtgärd |
| Slumpmässigt nummer | Ett tal som genereras automatiskt inom ett definierat intervall | Skapa ett unikt värde, till exempel ett order-ID, vid varje körning |
Resten av den här handledningen går igenom parametriseringen av datatabeller från början till slut och förklarar sedan hur man konfigurerar de andra tre typerna med fungerande VBScript-exempel.
Parametrisering av datatabell: Steg-för-steg-exempel
Detta Mikrofokus UFT handledning visar hur man parametriserar ett inloggningstest för flygbokningsapplikationen med hjälp av datatabellen. Du kanske undrar varför så mycket arbete läggs ner på att automatisera en enkel inloggning. Värdet blir tydligt när scenariot kontrollerar att en användare kan logga in korrekt med en kombination av giltigt alfanumeriskt agentnamn och lösenord värden. Teststegen förblir desamma, men mängden data som ska testas ökar. Detta exempel begränsar genomgången till 3 av de 8 möjliga kombinationerna.
| Testscenario | Teststeg | Testdata |
|---|---|---|
| Kontrollera att användaren lyckats logga in på applikationen när han matar in en KOMBINATION AV giltigt ALFANUMERISKt agentnamn och lösenord | Steg 1) Öppna ansökan om flygbokning Steg 2) Ange ett giltigt agentnamn Steg 3) Ange ett giltigt lösenord Steg 4) Tryck på Ok Steg 5) Stäng programmet efter lyckad inloggning. |
Agentnamn = Guru Lösenord = Mercury Agentnamn = Guru99 Lösenord = MERCURY Agentnamn = 9999 Lösenord = kvicksilver |
Du kan kopiera samma sex steg upprepade gånger med olika datavärden, vilket är vad du skulle göra manuellt, eller så kan du använda parametrisering.
Det enklaste sättet att parametrisera ett argument, i det här exemplet Guru, är:
- Klicka på Nyckelordsvy.
- Klicka på ikonen Parameterisering.
Dialogrutan Värdekonfiguration öppnas med det aktuella värdet inställt på en konstant. Klicka på alternativknappen Parameter. QTP tilldelar ett standardnamn till parametern, som du kan byta namn på innan du klickar på "OK". Som standard läggs den nya kolumnen till i arket Global datatabell, så värdet blir tillgängligt för varje åtgärd i testet; om du väljer arket Åtgärd (lokal) begränsas det till endast en enda åtgärd.
I det globala arket, en kolumn med rubriken "Agentnamn" och värdet Guru skapas. Du kan lägga till fler rader med värden för den här parametern.
Byter till expertsyn visar att ”Agentnamn” har ersatts av parameterreferensen ”Guru”, tillsammans med vilken typ av ark som används.
Du kan parametrisera argumentet Lösenord på samma sätt och ange en annan uppsättning testdata.
Denna datatabell betyder QTP kommer att upprepa samma sex registreras steg tre gånger. Den första iterationen använder data i rad ett, den andra iterationen använder rad två, och så vidare. Statusfältet visar vilken rad som för närvarande används och markerar motsvarande rad i databladet. Resultaten sammanfattar alla tre iterationerna.
Miljövariabelparametrar i UFT
Miljövariabelparametrar ger ett värde som förblir konstant under varje iteration av en körning, vilket gör dem användbara för konfigurationsdata, till exempel en bas URL eller miljönamn, som varje åtgärd behöver. UFT känner igen tre typer av miljövariabler:
- Inbyggt: Fördefinierade värden, såsom testnamn, åtgärdsnamn eller operativsystemversion, som UFT fylls i automatiskt.
- Användardefinierad intern: Värden som du anger i testet med ett skript; de finns bara för den aktuella körningen och sparas inte med testet.
- Användardefinierad extern: Namn-värde-par lagras i en extern XML-fil som du läser in innan körningen startar.
För att använda en miljövariabel i ett steg, öppna dialogrutan Värdekonfiguration för cellen, välj Miljö som parametertyp och välj variabelnamnet. VBScriptet nedan visar alla tre variabeltyper i en enda åtgärd:
' Read a Built-in environment variable MsgBox Environment.Value("OS") ' Set and read a User-Defined Internal environment variable Environment.Value("AppURL") = "https://demo.guru99.com/V4/" MsgBox Environment.Value("AppURL") ' Load a User-Defined External XML file, then read a value from it Environment.LoadFromFile "C:\Guru99\EnvConfig.xml" MsgBox Environment.Value("Address")
För att bygga den externa filen som refereras ovan, skapa ett XML-dokument med en rotfil. <Environment> element och ett <Variable> element per namn-värdepar, ladda sedan det från Arkiv > Inställningar > Miljö i UFT innan testet körs. Externa variabler är skrivskyddade när de väl har laddats, så uppdatera käll-XML-filen när ett värde behöver ändras.
Miljövariabler skiljer sig från Test/Action-parametrar i omfattning: en miljövariabel är tillgänglig för varje åtgärd i testet, medan en Test/Action-parameter skickas explicit mellan två specifika åtgärder, vilket är den typ som behandlas härnäst.
Test- och åtgärdsparametrar i UFT
Test/Action-parametrar låter en åtgärd skicka ett värde till en annan åtgärd som en inparameter, och låter den anropade åtgärden returnera ett värde tillbaka som en utdataparameter. Till skillnad från miljövariabler, som är synliga för hela testet, finns en Test/Action-parameter bara för det specifika anrop som definierar den, vilket gör att åtgärder kan återanvändas över olika tester.
För att skapa en, högerklicka på åtgärden i testflödet, välj Åtgärdsegenskaper och lägg till en parameter under fliken Inparametrar eller Utparametrar med ett namn och en datatyp. Åtgärden kan sedan referera till parametern direkt i sina steg. När en annan åtgärd anropar denna åtgärd, till exempel med RunAction "VerifyLogin", oneIteration, "Guru99", "Mercury", värdena som anges i anropet fyller i inparametrarna för den körningen.
Eftersom värdena följer med anropet snarare än att finnas i datatabellen, fungerar Test/Action-parametrar bra för återanvändbara åtgärder som behöver olika indata beroende på vilket test som anropar dem, till exempel en delad inloggningsåtgärd som används av flera testflöden.
Slumptalsparametrar i UFT
Slumptalsparametrar genererar automatiskt ett numeriskt värde inom ett intervall som du definierar, vilket är användbart när ett test behöver ett värde som måste vara unikt vid varje körning, till exempel ett nytt kund-ID, ett ordernummer eller en bokningsreferens som applikationen inte accepterar två gånger.
För att konfigurera en, öppna dialogrutan Värdekonfiguration för cellen och välj Slumptal som parametertyp. UFT frågar efter det numeriska intervallet, ett valfritt namn för parametern och hur ofta den ska generera ett nytt värde:
- För varje åtgärdsiteration – genererar ett nytt nummer varje gång åtgärden körs.
- För varje testiteration – genererar ett nytt nummer en gång per testiteration.
- En gång per hel testkörning – behåller samma nummer under hela körningen.
Slumptalsparametrar delar körtidsflexibiliteten hos datatabell- och miljövariabelparametrar, men de eliminerar behovet av att manuellt redigera unika testdata allt eftersom volymen av datadrivna iterationer växer.
Fördelar med parametrering
Parameterisering lönar sig under hela automatiseringslivscykeln, från det första skriptet till en komplett regressionssvit:
- Det låter dig välja olika värden vid körning istället för att redigera skriptet för varje datakombination.
- Det minskar den tid och ansträngning som krävs för att täcka flera kombinationer av testdata.
- Datadrivare, en UFT funktionen listar alla konstanter i ett skript som är berättigade till parametrisering i ett enda fönster, vilket förenklar parametrisering av stora skript.
- Den håller testdata utanför skriptet, så en testare kan lägga till nya rader, miljövärden eller slumpmässiga intervall utan att vidröra automatiseringslogiken.
Klicka här. om videon inte är tillgänglig








