Omgevingsvariabele in QTP (UFT) met voorbeeld
โก Slimme samenvatting
Omgevingsvariabelen in QTP en UFT Eรฉn opslagplaats voor waarden die door elke actie, functiebibliotheek en herstelscenario kunnen worden gelezen, waardoor รฉรฉn test volstaat. URLs, inloggegevens, paden en taalstrings zonder ze ergens hard te coderen.
Wat is omgevingsvariabele?
Omgevingsvariabelen zijn dynamische "objecten" op een computer die een waarde kunnen opslaan, waarnaar vervolgens door een of meer softwareprogramma's kan worden verwezen. Windows.
Omgevingsvariabelen zijn dynamisch van aard en kunnen worden gewijzigd. Er zijn een aantal omgevingsvariabelen waarnaar programma's kunnen verwijzen en die nuttig kunnen zijn bij het verkrijgen van informatie over hun computeromgeving. De testtool houdt naast deze variabelen ook een eigen lijst bij. Windows biedt.
UFT Eรฉn omgevingsvariabele
Micro Focus UFT Omgevingsvariabelen zijn toegankelijk voor alle acties, de functiebibliotheek en herstelscenario's.
โ ๏ธ Versie-opmerking: Dit product, dat oorspronkelijk werd uitgebracht onder de naam HP QuickTest Professional, werd hernoemd naar Unified Functional Testing en wordt tegenwoordig verkocht onder de naam... OpenText Functionele testen (UFT Een)Het Environment-object en de onderstaande schermen zijn ongewijzigd gebleven; alleen de productnaam is gewijzigd. officiรซle referentie voor het milieuobject behoudt de huidige syntaxis.
Types van QTP omgevingsvariabelen
Omgevingsvariabelen zijn die variabelen die globaal in de tests kunnen worden gebruikt. Er zijn twee soorten omgevingsvariabelen
- Ingebouwde variabelen
- Door de gebruiker gedefinieerde variabelen (heeft 2 subtypen)
- Intern
- Extern
Ingebouwde variabelen beschrijven de machine en de testuitvoering en zijn alleen-lezen. Gebruikersgedefinieerde variabelen bevatten uw eigen gegevens, en alleen de interne variabelen kunnen vanuit een script worden beschreven.
Ingebouwde variabelen
In QTP, ingebouwde variabelen zijn vooraf gedefinieerde variabelen. Hiermee kan de gebruiker informatie ophalen over de test die wordt uitgevoerd en informatie krijgen over het besturingssysteem (Operating Systems) waarop de test wordt uitgevoerd. Enkele van de ingebouwde variabelen zijn Actie-iteratie, Operating-systeem, testdirectory, lokale hostnamen, Operasysteemversie enz.
Ga naar Bestand -> settings -> Ga naar het tabblad Omgeving om het gedeelte met omgevingsvariabelen te bekijken en de lijst met omgevingsvariabelen te zien. Het venster wordt geopend met de ingebouwde lijst, zoals hieronder weergegeven.
De waarden uit omgevingsvariabelen kunnen tijdens de uitvoeringssessie worden opgehaald en waar nodig gebruikt. Dit zijn de namen waar testers het vaakst naar grijpen.
| Ingebouwde variabele | Wat het oplevert |
|---|---|
| OS | Operating systeemfamilie van de machine die de test uitvoert |
| OS-versie | Operating systeemversie |
| Test naam | Naam van de test die momenteel wordt uitgevoerd |
| TestDir | In welke map wordt de test opgeslagen? |
| Actienaam | Naam van de actie die momenteel wordt uitgevoerd |
| Actie-iteratie | Iteratienummer van de huidige actie |
| LokaleHostNaam | Hostnaam van de lokale machine |
| ResultaatDir | Map waarnaar de resultaten van de run worden geschreven |
Voorbeeld:
MsgBox Environment.Value("OSVersion")
Die ene regel geeft de versie van het besturingssysteem direct weer vanuit de uitvoeringssessie.
Door de gebruiker gedefinieerde variabelen
Vรณรณr uitvoering van de test zijn dit de variabelen die door de gebruiker zijn gedefinieerd. Het kan globaal worden gebruikt voor verschillende tests, maar het kan ook worden beperkt tot รฉรฉn test.
Door de gebruiker gedefinieerde variabelen werden in twee typen ingedeeld
- Intern
- Extern
- Door gebruiker gedefinieerd โ Interne variabelenDeze variabelen worden door de gebruiker gedefinieerd voordat de test wordt uitgevoerd en zijn alleen beschikbaar voor een specifieke test.
- Door de gebruiker gedefinieerde externe variabelen: Deze variabelen worden door de gebruiker gedefinieerd en kunnen globaal voor verschillende tests worden gebruikt.
Externe variabelen kunnen op twee manieren worden geladen. Dit kan handmatig vรณรณr het uitvoeren van de test via het tabblad Omgeving of een door de gebruiker gedefinieerd scherm door het selectievakje 'Variabelen laden' aan te vinken en vervolgens het XML-bestand te selecteren. De tweede manier is via een scriptopdracht, die verderop op deze pagina wordt beschreven.
Je kunt als volgt een door de gebruiker gedefinieerde variabele aanmaken. Wijzig het variabeletype naar 'door de gebruiker gedefinieerd' en voeg een naam- en waardeveld toe.
De voltooide rij verschijnt vervolgens in de door de gebruiker gedefinieerde lijst.
U kunt als volgt toegang krijgen tot de variabele
MsgBox Environment.Value("Guru99")
Het berichtvenster geeft de waarde weer die is opgeslagen bij die variabelenaam.
Methoden en eigenschappen van omgevingsobjecten
Beide lijsten zijn via รฉรฉn weg te bereiken. VBScript Een object genaamd Environment. Het bevat รฉรฉn eigenschap, รฉรฉn methode en รฉรฉn alleen-lezen eigenschap, en dat is de volledige API-interface.
| Lid | Type | Wat het doet |
|---|---|---|
| Waarde | Eigendom | Haalt alle omgevingsvariabelen op en stelt door de gebruiker gedefinieerde variabelen in. |
| LadenVanUitBestand | Methode | Laadt een extern XML-bestand met omgevingsvariabelen tijdens de uitvoering. |
| Externe bestandsnaam | Eigendom | Retourneert het externe bestand dat is geselecteerd in het deelvenster Omgeving, of een lege tekenreeks. |
Lezen is overal toegestaan. Schrijven werkt alleen met door de gebruiker gedefinieerde interne variabelen, omdat ingebouwde variabelen en variabelen die uit een bestand worden geladen, alleen-lezen zijn.
' Read any variable strVersion = Environment.Value("OSVersion") ' Write a user-defined internal variable Environment.Value("Guru99") = "SecondValue" ' Check which external file is active If Environment.ExternalFileName = "" Then MsgBox "No external environment file is loaded" End If
Dezelfde instructie gedraagt โโzich identiek in een actie, een functiebibliotheek of een herstelscenario.
Hoe maak je een XML-bestand voor externe omgevingsvariabelen aan en laad je dit?
Een extern bestand maakt van de variabelenlijst een deelbaar bestand, waardoor รฉรฉn test kan worden uitgevoerd op ontwikkel-, test- en productieomgevingen zonder dat er een aanpassingsstap nodig is.
- Definieer de waarden eerst als interne, door de gebruiker gedefinieerde variabelen in het paneel Omgeving.
- Gebruik de Exporteren knop op dat paneel, waarmee de juiste tekst wordt geschreven XML structuur voor jou.
- Sla per omgeving een apart bestand op, bijvoorbeeld EnvDev.xml en EnvProd.xml.
- Laat de test verwijzen naar een bestand met het selectievakje 'Variabelen laden' aangevinkt, of laad het bestand vanuit het script.
Het bestand is een platte lijst van variabele-waardeparen in de onderstaande syntaxis.
<Environment>
<Variable>
<Name>This is the first variable name</Name>
<Value>This is the first variable value</Value>
</Variable>
</Environment>
Het laden vanuit de code is een tweeledige beveiliging: controleer of een bestand al actief is en laad er alleen een als dat niet het geval is.
fileName = Environment.ExternalFileName If fileName = "" Then Environment.LoadFromFile "C:\testEnv.xml" End If
Beste werkwijzen en veelvoorkomende fouten
De meeste problemen komen voort uit de reikwijdte en spelling, niet uit de syntaxis. De tabel toont de fouten die testers het vaakst tegenkomen.
| Symptoom | Veroorzaken | Bepalen |
|---|---|---|
| De variabele retourneert een lege waarde. | De naam is verkeerd gespeld of is nooit aan deze test toegevoegd. | De namen komen exact overeen; controleer de spelling nogmaals in het deelvenster Omgeving. |
| Er is een uitvoeringsfout opgetreden bij een toewijzingsregel. | Het script schrijft naar een ingebouwde of extern geladen variabele. | Alleen door de gebruiker gedefinieerde interne variabelen kunnen worden toegewezen. |
| Het externe bestand wordt genegeerd. | Het selectievakje is niet aangevinkt en LoadFromFile is nooit aangeroepen. | Vink het vakje aan of laad het bestand vanuit het script. |
| Een gedeelde variabele ontbreekt elders. | De variabele werd gedefinieerd als intern. | Verplaats het naar een extern XML-bestand, zodat elke test het kan laden. |
- Hanteer รฉรฉn naamgevingsconventie, zodat het venster leesbaar blijft naarmate de lijst groeit.
- Houd de XML-bestanden onder versiebeheer en sla er nooit echte wachtwoorden in op.
- Reserveer omgevingsvariabelen voor waarden die constant blijven gedurende een run, en laat de rij-voor-rij-gegevens over aan de data Table.





