parameterization qtp explained with examples qtp tutorial 19
=> Klepnutím sem zobrazíte sérii výukových programů QTP
Co se naučíte:
- Co je parametrizace QTP?
- Typy parametrizace v QTP
- Parametrizace v QTP pomocí datové tabulky s příkladem
- Doporučené čtení
Co je parametrizace QTP?
Někdy aplikace nepřijímá duplicitní datové záznamy. V tomto případě, pokud spustíte stejný testovací skript s pevnou sadou vstupních dat, může aplikace vyvolat chybu kvůli duplikaci dat. Aby se tomuto problému zabránilo, poskytuje QTP způsoby, jak přijímat různé testovací vstupy do testovacího skriptu.
Tento proces poskytování různých vstupních hodnot prostřednictvím externích parametrů se nazývá parametrizace
Typy parametrizace v QTP
Hodnota proměnné může být nebo typy parametrů mohou být:
- Parametry datové tabulky
- Parametry testu / akce
- Proměnné parametry prostředí
- Parametry náhodného čísla
V tomto výukovém programu QTP se zaměříme hlavně na parametrizaci pomocí Datatable. V dalším kurzu vysvětlíme další typy parametrů parametrizace.
Parametrizace v QTP
Řekněme, že se pokoušíte napsat program, který kontroluje přihlašovací hodnoty pro několik uživatelů na gmail.com. Následuje kód, který máte pro jednoho uživatele, ale chcete, aby stejný pokaždé získal různé hodnoty. Jak to děláš?
Kód pro přihlášení do Gmailu pro jednoho uživatele:
SystemUtil.Run 'iexplore.exe', 'http://www.gmail.com' Browser('Gmail: Email from Google').page('Gmail: Email from Google').Sync Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebEdit('Email').Set 'swatiseela' Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebEdit('Passwd').SetSecure 'sfgs686898' Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebButton('Sign in').Click Browser('Gmail: Email from Google').Page('Gmail - Inbox').Link('Sign out').Click
Nyní přejděte do zobrazení Klíčové slovo a klikněte na sloupec hodnoty pro výpisy nastavení e-mailu a hesla.
Typická obrazovka, která se objeví, když se pokoušíte parametrizovat:
Jak vidíte, hodnota může být buď konstantní, v tomto případě „swatiseela“, přihlašovací ID.
Nebo pokud zvolíte možnost parametrizace, aktivují se příslušná pole na obrazovce.
Na této obrazovce můžete zvolit parametrizaci vybrané hodnoty buď hodnotou datové tabulky, proměnné prostředí nebo náhodným číslem. Protože nejčastěji používaným zdrojem je datová tabulka, probereme to jako první.
Kromě toho můžete použít vstupní a výstupní hodnoty určité akce jako parametr hodnoty. O tom si za chvíli také promluvíme.
Parametrizace v QTP pomocí datové tabulky s příkladem
Parametrizace v QTP pomocí aplikace Excel
Zkontroloval jsem hodnotu parametru ZAPNUTO a poté je v poli Datatable za jménem umístění.
název Odpovídající název sloupce v tabulce dat, odkud je třeba data převzít. Ve výchozím nastavení navrhne QTP název. Máte možnost ponechat jej podle návrhu nebo změnit podle potřeby.
Globální Prostěradlo: Tento datový list je k dispozici pro všechny akce v testu.
Aktuální list akce nebo místní list: jak název napovídá, je to list dat, který je k dispozici pro určitou akci.
kód třídění bublin c ++
Chystám se do více řádků dat do globálního datového listu. Zde se hodí nástroj pro kódování hesel. Do datového listu, který získáte z tohoto nástroje, můžete vložit zašifrované hodnoty.
Takto vypadá můj datový list:
Po parametrizaci vypadá kód takto:
SystemUtil.Run 'iexplore.exe', 'http://www.gmail.com' Browser('Gmail: Email from Google').page('Gmail: Email from Google').Sync Browser('Gmail: Email from Google').page('Gmail: Email from Google').WebEdit('Email').Set DataTable('SignInName', dtGlobalSheet) Browser('Gmail: Email from Google').page('Gmail: Email from Google').WebEdit('Passwd').SetSecure DataTable('GPassword', dtGlobalSheet) Browser('Gmail: Email from Google').page('Gmail: Email from Google').WebButton('Sign in').Click Browser('Gmail: Email from Google').Page('Gmail - Inbox').Link('Sign out').Click Browser('Gmail: Email from Google').page('Gmail: Email from Google').Sync Browser('Gmail: Email from Google').Close
Ve výše uvedeném kódu uvidíte, že hodnoty pro ID e-mailu a heslo jsou převzaty z datové tabulky.
Tento kód bude spuštěn pro všechny 4 řádky dat v globálním listu, pokud na následující obrazovce nastavím možnost „Spustit na všech řádcích“ ZAPNUTO:
Pro případ, že nechcete použít výše uvedenou obrazovku k rozhodnutí, kolik řádků musí být kód spuštěn, můžete tak učinit programově. K tomu musíte na výše uvedené obrazovce vybrat možnost „Spustit pouze jednu iteraci“ a napsat kód následujícím způsobem:
for i=1 to datatable.GetRowCount SystemUtil.Run 'iexplore.exe', 'http://www.gmail.com' Browser('Gmail: Email from Google').page('Gmail: Email from Google').Sync datatable.SetCurrentRow(i) varName=datatable.value('SignInName') varPwd=datatable.Value('GPassword') Browser('Gmail: Email from Google').page('Gmail: Email from Google').WebEdit('Email').Set varName Browser('Gmail: Email from Google').page('Gmail: Email from Google').WebEdit('Passwd').SetSecure varPwd Browser('Gmail: Email from Google').page('Gmail: Email from Google').WebButton('Sign in').Click Browser('Gmail: Email from Google').Page('Gmail - Inbox').Link('Sign out').Click Browser('Gmail: Email from Google').page('Gmail: Email from Google').Sync Browser('Gmail: Email from Google').Close next
Při provádění testu, který běží pro 2 iterace, bude takto vypadat obrazovka s výsledky testu:
Rád bych strávil nějaký čas zkoumáním kódu a pokusem se pochopit, proč je každý řádek a jeho pořadí důležité pro úspěšné provedení testu:
- Proč otevírám prohlížeč ve smyčce „pro“?
- Proč jsou všude synchronizační příkazy?
- Proč programově zavíráme prohlížeč na konci, místo aby se o to postarala možnost „Zaznamenat a spustit nastavení - zavřít prohlížeč, když se test zavře“?
- Proč je opět zavírací příkaz uvnitř smyčky „pro“?
Vezměte prosím na vědomí, že ve výše uvedeném kódu jsem nedeklaroval proměnné v tomto testu, neodsadil prohlášení ani neposkytl komentáře. To je záměrné, protože jsem nechtěl zředit podstatu tvrzení. Na tyto otázky odpoví následující koncept:
Stav vašeho AUT:
Základní pravidlo je - Každá iterace by měla začínat tím, že AUT je ve stejném stavu a končí ve stejném stavu.
- Pokud by příkaz k otevření stránky gmail.com byl mimo smyčku for, test by běžel dobře pro první iteraci, ale pro další by se stránka gmail.com neotevřela a test by selhal.
- Pokud příkaz k zavření prohlížeče není v testu zahrnut, pak by test otevřel prohlížeč s každou iterací a vy byste skončili s tím, že bude mít tolik instancí prohlížeče otevřeno, kolik je řádků v tabulce dat.
- Představte si, že kdyby příkaz close byl mimo smyčku for, pak také skončíte s příliš mnoha prohlížeči.
- Synchronizační příkaz: toto vynutí test QTP, aby počkal, dokud se určitá stránka úplně nenačte, než na ní začne provádět určitou operaci.
Vždy se snažte vrátit svou aplikaci do stavu, ve kterém začala. Tím zajistíte, že poskytnete stejné rozhraní pro každou vaši iteraci, se kterou budete komunikovat.
Toto je část kódu, když používáte místní list namísto globálního:
Browser('Gmail: Email from Google').page('Gmail: Email from Google').WebEdit('Email').Set DataTable('Name', dtLocalSheet) Browser('Gmail: Email from Google').page('Gmail: Email from Google').WebEdit('Passwd').SetSecure DataTable('Pwd', dtLocalSheet) Browser('Gmail: Email from Google').page('Gmail: Email from Google').WebButton('Sign in').Click
V QTP můžete parametrizovat hodnoty:
- Kontrolní body.
- Vlastnosti objektu pro vybraný krok.
- Argumenty operace definované pro vybraný krok.
- Jedna nebo více vlastností objektu uložených v místním úložišti objektů v dialogovém okně Vlastnosti objektu nebo v okně Úložiště objektů.
Výše uvedené je také příkladem dat řídících určitý test. Uvidíme, jak parametrizovat pomocí další typy parametrů v dalším článku.
=> Navštivte zde sérii školení QTP Training Tutorials
Doporučené čtení
- Parametrizace v QTP (část 2) - Výukový program QTP # 20
- Výukové programy QTP - 25+ výcvikových kurzů pro rychlé testování profesionálů s rychlým testem (QTP)
- Výukový program pro vyhledání prvku selen pomocí textu s příklady
- Výukové programy pro zatmění do hloubky pro začátečníky
- Výukový program QTP č. 18 - Data řízená a hybridní rozhraní vysvětlena na příkladech QTP
- Výukový program QTP č. 6 - Porozumění nastavení záznamu a spuštění QTP pro náš první test
- Výukový program QTP č. 24 - Používání virtuálních objektů a scénářů obnovy v testech QTP
- Popisné programování v QTP a připojení k databázi v QTP - výukový program č. 25