Parametrering in QTP/UFT met Voorbeeld
⚡ Slimme samenvatting
Parametrering in QTP/UFT Vervangt vastgelegde waarden door variabele invoer, zodat één testscript kan worden uitgevoerd met veel verschillende datacombinaties, omgevingsinstellingen en aanroepende acties zonder dat er ook maar één stap hoeft te worden herschreven.
Wat is QTP Parameterisering?
QTP/UFT parameterisatie Hiermee kunt u tijdens de uitvoering verschillende testinvoerwaarden kiezen in plaats van één vaste waarde in een script te coderen. Dit proces waarbij een test wordt gevoed met externe parameterwaarden in plaats van één vaste waarde, wordt parameterisering genoemd.
Zonder parameterisering betekent het testen van hetzelfde inlogscherm met drie verschillende agentnaam- en wachtwoordcombinaties dat er drie vrijwel identieke scripts moeten worden opgenomen of onderhouden. Parameterisering zorgt ervoor dat er slechts één script overblijft dat bij elke uitvoering een nieuwe rij gegevens bevat. Daarom is datagestuurd testen ervan afhankelijk.
Soorten parameterisering in QTP
UFT (voorheen QTP) ondersteunt vier parametertypen, elk geschikt voor een ander soort variabele gegevens:
- Gegevenstabelparameters
- Test-/actieparameters
- Parameters van omgevingsvariabelen
- Willekeurige getalparameters
De onderstaande tabel vergelijkt waarvoor elk type het best gebruikt kan worden, voordat we een praktijkvoorbeeld bekijken.
| Parametertype: | Waar komt de waarde vandaan? | Typisch gebruiksscenario |
|---|---|---|
| data Table | Globale of lokale (actie) spreadsheet meegeleverd met de test | Dezelfde stappen uitvoeren met veel rijen testgegevens. |
| Omgevingsvariabele | Ingebouwde waarden, waarden die binnen de test zijn ingesteld, of een extern XML-bestand. | Het delen van één constante waarde, zoals een URL, bij elke actie |
| Test/Actie | Een invoer- of uitvoerwaarde die tussen acties wordt doorgegeven. | Een waarde die in de ene actie is gegenereerd, doorgeven aan een andere actie. |
| Willekeurig nummer | Een automatisch gegenereerd getal binnen een gedefinieerd bereik. | Het creëren van een unieke waarde, zoals een order-ID, bij elke uitvoeringssessie. |
De rest van deze handleiding doorloopt de parameterisering van gegevenstabellen van begin tot eind en legt vervolgens uit hoe de andere drie typen geconfigureerd kunnen worden met behulp van werkende VBScript-voorbeelden.
Parameterisering van een gegevenstabel: stapsgewijs voorbeeld
In deze Micro Focus UFT zelfstudie Dit voorbeeld laat zien hoe je een inlogtest voor de vluchtreserveringsapplicatie kunt parameteriseren met behulp van de gegevenstabel. Je vraagt je misschien af waarom er zoveel moeite wordt gestoken in het automatiseren van een simpele login. De meerwaarde wordt duidelijk zodra het scenario controleert of een gebruiker succesvol kan inloggen met een combinatie van een geldige alfanumerieke agentnaam en wachtwoord waarden. De teststappen blijven hetzelfde, maar de hoeveelheid te testen data neemt toe. Dit voorbeeld beperkt de doorloop tot 3 van de 8 mogelijke combinaties.
| Testscenario | Teststappen | Testgegevens |
|---|---|---|
| Controleer of de gebruiker succesvol inlogt bij de applicatie na het invoeren van een COMBINATIE VAN geldige ALFANUMERIEKE agentnaam en wachtwoord | Stap 1) Open de vluchtreserveringsaanvraag Stap 2) Voer een geldige agentnaam in Stap 3) Voer een geldig wachtwoord in Stap 4) Druk op Ok Stap 5) Sluit de applicatie na succesvol inloggen. |
Agentnaam = Guru Wachtwoord = Mercury Agentnaam = Guru99 Wachtwoord = MERCURIUS Agentnaam = 9999 Wachtwoord = kwik |
Je kunt dezelfde zes stappen herhaaldelijk uitvoeren met verschillende gegevenswaarden, wat je handmatig zou doen, of je kunt parameterisering gebruiken.
De eenvoudigste manier om een argument te parameteriseren, in dit voorbeeld. Guruis:
- Klik op Trefwoordweergave.
- Klik op het parameteriseringspictogram.
Het dialoogvenster Waardeconfiguratie wordt geopend met de waarde momenteel ingesteld op Constante. Klik op het keuzeradiobutton Parameter. QTP Hiermee wordt een standaardnaam aan de parameter toegewezen, die u kunt wijzigen voordat u op 'OK' klikt. Standaard wordt de nieuwe kolom toegevoegd aan het tabblad 'Globale gegevenstabel', waardoor de waarde beschikbaar komt voor elke actie in de test; als u in plaats daarvan het tabblad 'Actie (lokaal)' kiest, wordt de waarde beperkt tot slechts één actie.
In het tabblad 'Global' bevindt zich een kolom met de koptekst 'Agentnaam' en de waarde Guru wordt aangemaakt. Je kunt meer rijen met waarden voor deze parameter toevoegen.
Overschakelen naar deskundig standpunt geeft aan dat "Agentnaam" is vervangen door de parameterreferentie "Guru”, samen met het type vel dat gebruikt is.
Je kunt het argument 'Wachtwoord' op dezelfde manier parameteriseren en een andere set testgegevens invoeren.
Deze gegevenstabel betekent QTP zal dezelfde zes herhalen opgenomen De stappen worden drie keer herhaald. De eerste iteratie gebruikt de gegevens in rij één, de tweede iteratie gebruikt rij twee, enzovoort. De statusbalk geeft aan welke rij momenteel in gebruik is en markeert de bijbehorende rij in het gegevensblad. De resultaten vatten alle drie de iteraties samen.
Omgevingsvariabele parameters in UFT
Omgevingsvariabelen leveren een waarde die constant blijft tijdens elke iteratie van een run, waardoor ze nuttig zijn voor configuratiegegevens, zoals een basiswaarde. URL of de naam van de omgeving die elke actie nodig heeft. UFT onderscheidt drie soorten omgevingsvariabelen:
- Ingebouwd: Vooraf gedefinieerde waarden, zoals de testnaam, actienaam of versie van het besturingssysteem, die UFT Wordt automatisch ingevuld.
- Door de gebruiker gedefinieerde interne instellingen: Waarden die je binnen de test instelt met een script, bestaan alleen voor de huidige testuitvoering en worden niet opgeslagen met de test.
- Door de gebruiker gedefinieerde externe: Naam-waardeparen worden opgeslagen in een extern XML-bestand dat u laadt voordat de uitvoering begint.
Om een omgevingsvariabele binnen een stap te gebruiken, opent u het dialoogvenster Waardeconfiguratie voor de cel, selecteert u Omgeving als parametertype en kiest u de variabelenaam. Het onderstaande VBScript toont alle drie de soorten variabelen binnen één actie:
' 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")
Om het hierboven genoemde externe bestand te maken, creëert u een XML-document met een root-bestand. <Environment> element en één <Variable> element per naam-waardepaar, laad het vervolgens via Bestand > Instellingen > Omgeving in UFT Voordat je de test uitvoert. Externe variabelen zijn na het laden alleen-lezen, dus werk het bron-XML-bestand bij wanneer een waarde moet worden gewijzigd.
Omgevingsvariabelen verschillen van test-/actieparameters in hun reikwijdte: een omgevingsvariabele is beschikbaar voor elke actie in de test, terwijl een test-/actieparameter expliciet wordt doorgegeven tussen twee specifieke acties, en dat laatste type wordt hierna besproken.
Test- en actieparameters in UFT
Test-/actieparameters stellen een actie in staat een waarde als invoerparameter door te geven aan een andere actie, en de aangeroepen actie een waarde als uitvoerparameter terug te geven. In tegenstelling tot omgevingsvariabelen, die zichtbaar zijn voor de hele test, bestaat een test-/actieparameter alleen voor de specifieke aanroep die deze definieert. Hierdoor blijven acties herbruikbaar in verschillende tests.
Om er een te maken, klikt u met de rechtermuisknop op de actie in de testflow, kiest u Actie-eigenschappen en voegt u een parameter toe onder het tabblad Invoerparameters of Uitvoerparameters met een naam en gegevenstype. De actie kan vervolgens rechtstreeks naar de parameter verwijzen in de stappen. Wanneer een andere actie deze actie aanroept, bijvoorbeeld met RunAction "VerifyLogin", oneIteration, "Guru99", "Mercury"De waarden die in de aanroep worden doorgegeven, vullen de invoerparameters voor die uitvoering in.
Omdat de waarden met de aanroep meereizen in plaats van in de gegevenstabel te blijven staan, werken test-/actieparameters goed voor herbruikbare toepassingen. acties die verschillende invoer nodig hebben, afhankelijk van welke test ze aanroept, zoals een gedeelde inlogactie die door meerdere testflows wordt gebruikt.
Parameters voor willekeurige getallen in UFT
Parameters voor willekeurige getallen genereren automatisch een numerieke waarde binnen een door u gedefinieerd bereik. Dit is handig wanneer een test een waarde nodig heeft die bij elke uitvoering uniek moet zijn, zoals een nieuw klant-ID, een ordernummer of een boekingsreferentie die de applicatie niet twee keer accepteert.
Om er een te configureren, opent u het dialoogvenster Waardeconfiguratie voor de cel en selecteert u Willekeurig getal als parametertype. UFT Er wordt gevraagd om het numerieke bereik, een optionele naam voor de parameter en hoe vaak er een nieuwe waarde moet worden gegenereerd:
- Voor elke actie-iteratie – genereert een nieuw getal elke keer dat de actie wordt uitgevoerd.
- Voor elke testiteratie – genereert een nieuw getal eenmaal per testiteratie.
- Eenmaal per volledige testrun – behoudt hetzelfde nummer gedurende de hele run.
Parameters voor willekeurige getallen bieden dezelfde flexibiliteit tijdens de uitvoering als parameters voor gegevenstabellen en omgevingsvariabelen, maar ze maken het overbodig om handmatig unieke testgegevens te schrijven naarmate het aantal datagestuurde iteraties toeneemt.
Voordelen van parameterisatie
Parameterisering loont gedurende de hele automatiseringscyclus, van het eerste script tot een volledige regressietestsuite:
- Hiermee kunt u tijdens de uitvoering verschillende waarden selecteren in plaats van het script voor elke gegevenscombinatie aan te passen.
- Het vermindert de tijd en moeite die nodig zijn om meerdere combinaties van testgegevens te behandelen.
- Datastuurprogramma's, een UFT Deze functie toont in één venster alle constanten in een script die geschikt zijn voor parameterisering, wat het parameteriseren van grote scripts vereenvoudigt.
- Het houdt testgegevens buiten het script, zodat een tester nieuwe rijen, omgevingswaarden of willekeurige bereiken kan toevoegen zonder de automatiseringslogica aan te raken.
Klik hier als de video niet toegankelijk is








