parameterization qtp explained with examples qtp tutorial 19
=> Kliknite ovdje za seriju QTP Tutorials Training Tutorials
Što ćete naučiti:
- Što je QTP parametrizacija?
- Vrste parametrizacije u QTP-u
- Parametriranje u QTP-u pomoću tablice podataka s primjerom
- Preporučena literatura
Što je QTP parametrizacija?
Aplikacija ponekad ne prihvaća dvostruke zapise podataka. U ovom slučaju, ako pokrenete istu testnu skriptu s fiksnim skupom ulaznih podataka, aplikacija može izbaciti pogrešku zbog dupliciranja podataka. Da bi se izbjegao ovaj problem, QTP nudi načine za prihvaćanje različitih testnih unosa u testnu skriptu.
Ovaj postupak pružanja različitih ulaznih vrijednosti putem vanjskih parametara naziva se parametarizacija
koji je najbolji besplatni program za preuzimanje glazbe
Vrste parametrizacije u QTP-u
Vrijednost varijable može biti ili vrste parametara mogu biti:
- Parametri tablice podataka
- Parametri ispitivanja / djelovanja
- Varijabilni parametri okoline
- Parametri slučajnih brojeva
U ovom QTP tutorialu usredotočit ćemo se uglavnom na parametriranje pomoću Datatable-a. U sljedećem uputstvu objasnit ćemo druge vrste metoda parametarizacije.
Parametriranje u QTP-u
Recimo da pokušavate napisati program koji provjerava vrijednosti prijave za nekoliko korisnika na gmail.com. Slijedi kôd koji imate za jednog korisnika, ali želite da isti svaki put poprimi različite vrijednosti. Kako se to radi?
Kôd za prijavu na Gmail za jednog korisnika:
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
Sada idite na prikaz ključnih riječi i kliknite stupac vrijednosti za izjave o postavljenim ID-ovima e-pošte i lozinki.
Tipični zaslon koji se pojavljuje kada pokušavate parameterizirati:
java vs c ++ što je bolje
Kao što vidite, vrijednost u ovom slučaju može biti konstanta, 'swatiseela', ID za prijavu.
Ili ako odaberete opciju parameterizacije, tada će se aktivirati odgovarajuća polja na zaslonu.
Na ovom zaslonu možete odabrati parameterizaciju odabrane vrijednosti bilo vrijednošću tablice podataka, varijablom okoline ili slučajnim brojem. Budući da je najčešće korišteni izvor tablica podataka, prvo ćemo o tome razgovarati.
Osim njih, ulazne i izlazne vrijednosti određene radnje mogli biste koristiti kao parametar za vrijednost. I o tome ćemo razgovarati za neko vrijeme.
Parametriranje u QTP-u pomoću tablice podataka s primjerom
Parametriranje u QTP-u pomoću programa Excel
Provjerio sam vrijednost parametra UKLJUČENO, a zatim postoji mjesto u polju Datatable nakon imena.
Ime Odgovarajući naziv stupca u tablici podataka odakle podatke treba uzimati. Prema zadanim postavkama, QTP će predložiti ime. Imate mogućnost zadržati ga kako je predloženo ili ga promijeniti po potrebi.
Globalno List: Ovaj je list podataka dostupan za sve radnje u testu.
Trenutni akcijski list ili lokalni list: kao što i samo ime govori, to je list podataka koji je dostupan određenoj radnji.
Idem na više redaka podataka u Globalnu tablicu podataka. Tu dobro dolazi alat za kodiranje lozinki. U tablicu podataka možete unijeti šifrirane vrijednosti koje dobivate pomoću ovog alata.
Ovako izgleda moj tehnički list:
Nakon parametrizacije ovako izgleda kôd:
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
U gornjem kodu vidjet ćete da su vrijednosti za ID e-pošte i lozinku preuzete iz podatkovne tablice.
Ovaj će se kôd izvoditi za sva 4 retka podataka u globalnom listu ako na sljedećem zaslonu postavim opciju 'Pokreni na svim redovima' UKLJUČENO:
kako otvoriti .apk datoteku u sustavu Windows
Za svaki slučaj, ako ne želite koristiti gornji zaslon da biste odlučili koliko redaka treba izvršiti kôd, to možete učiniti programski. Za to trebate odabrati opciju 'Pokreni samo jednu iteraciju' na gornjem ekranu i napisati kod na sljedeći način:
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
Pri izvršavanju testa koji se izvodi za 2 ponavljanja, ovako će izgledati zaslon rezultata testa:
Volio bih potrošiti neko vrijeme istražujući kôd i pokušavajući shvatiti zašto je svaki redak i njegov redoslijed važan za uspješno izvršavanje testa:
- Zašto otvaram preglednik unutar petlje 'for'?
- Zašto svugdje postoje izjave o sinkronizaciji?
- Zašto programski na kraju zatvaramo preglednik, umjesto da dopustimo da se za to pobrine opcija 'Snimanje i pokretanje postavki - Zatvori preglednik kada se test zatvori'?
- Opet, zašto je bliska izjava unutar petlje 'for'?
Imajte na umu da u gornjem dijelu koda nisam deklarirao varijable u ovom testu, uvlačio izjave ili davao komentare. Ovo je namjerno jer nisam želio razvodnjavati suštinu izjava. Sljedeći koncept odgovorit će na ova pitanja:
Stanje vašeg AUT:
Osnovno pravilo je - Svaka iteracija treba započeti tako da AUT bude isto stanje i završi u istom stanju.
- Da je izjava za otvaranje stranice gmail.com izvan petlje for, test bi se izvrsno pokrenuo za prvu iteraciju, ali za sljedeću stranica gmail.com ne bi bila otvorena, a test ne bi uspio.
- Ako izjava o zatvaranju preglednika nije uključena u test, tada bi test otvorio preglednik sa svakom iteracijom, a vi biste na kraju imali što više primjeraka preglednika otvorenih prema broju redaka u tablici podataka.
- Zamislite da je naredba close izvan petlje for, tada ćete također imati previše preglednika.
- Izjava o sinkronizaciji: ovo prisiljava QTP test da pričeka dok se određena stranica u potpunosti ne učita prije nego što počne izvoditi određenu operaciju na njoj.
Uvijek pokušajte vratiti prijavu u stanje u kojem je započeo. To će osigurati da pružite isto sučelje za svaku od vaših iteracija za interakciju.
Slijedi komad koda kada koristite lokalni list umjesto globalnog:
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
U QTP-u možete parameterizirati vrijednosti:
- Kontrolne točke.
- Svojstva objekta za odabrani korak.
- Argumenti operacije definirani za odabrani korak.
- Jedno ili više svojstava objekta pohranjenih u lokalnom spremištu objekata u dijaloškom okviru Svojstva objekta ili prozoru Spremište objekata.
Gore navedeno također je primjer podataka koji provode određeni test. Vidjet ćemo kako se parameterizira pomoću ostale vrste parametara u sljedećem članku.
=> Posjetite ovdje za seriju QTP Tutorials Training Tutorials
Preporučena literatura
- Parametriranje u QTP-u (2. dio) - QTP vodič # 20
- QTP tutoriali - 25+ vodiča za stručno osposobljavanje za brzi test Micro Focus (QTP)
- Selen Pronađi element pomoću udžbenika teksta s primjerima
- Dubinski vodiči za pomračenje za početnike
- QTP vodič # 18 - Hibridni okviri vođeni podacima i objašnjeni primjerima QTP-a
- QTP vodič # 6 - Razumijevanje postavki QTP snimanja i pokretanja za naš prvi test
- QTP vodič # 24 - Korištenje virtualnih objekata i scenarija oporavka u QTP testovima
- Opisno programiranje u QTP-u i povezivanje baze podataka u QTP-u - Tutorial # 25