parameterization qtp explained with examples qtp tutorial 19
=> Klikk her for QTP Training Tutorials Series
bredde første søk c ++
Hva du vil lære:
- Hva er QTP-parametrisering?
- Typer parametrisering i QTP
- Parameterisering i QTP ved bruk av datatabel med eksempel
- Anbefalt lesing
Hva er QTP-parametrisering?
Noen ganger godtar ikke applikasjonen dupliserte dataposter. I dette tilfellet, hvis du kjører det samme testskriptet med et fast sett med inndata, kan et program kaste en feil på grunn av dataduplisering. For å unngå dette problemet, gir QTP måter å godta forskjellige testinnganger til testskriptet.
Denne prosessen med å gi forskjellige inngangsverdier gjennom eksterne parametere kalles Parameterization
Typer parametrisering i QTP
Variabelverdien kan være eller parametertypene kan være:
- Datatabellparametere
- Test / handling parametere
- Parametere for miljøvariabler
- Tilfeldige tallparametere
I denne QTP-opplæringen vil vi hovedsakelig fokusere på parametrisering ved hjelp av Datatable. Vi vil forklare andre typer parametreringsmetoder i neste opplæring.
Parameterisering i QTP
Si at du prøver å skrive et program som sjekker innloggingsverdiene for et par brukere på gmail.com. Følgende er koden du har for en bruker, men du vil at den samme skal ta forskjellige verdier hver gang. Hvordan gjør du dette?
Kode for å logge på Gmail for en bruker:
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
Gå nå til nøkkelordvisningen og klikk på verdikolonnen for e-post-ID og passordsett.
Den typiske skjermen som dukker opp når du prøver å parametere:
Som du kan se, kan verdien enten være en konstant, 'swatiseela' i dette tilfellet påloggings-ID-en.
Eller hvis du velger parameteriseringsalternativet, blir de tilsvarende feltene på skjermen aktivert.
Fra dette skjermbildet kan du velge å parameterisere den valgte verdien med enten en verdi av datatabellen, miljøvariabelen eller et tilfeldig tall. Siden den mest brukte kilden er datatabellen, vil vi diskutere det først.
Bortsett fra disse, kan du bruke inngangs- og utgangsverdiene til en bestemt handling som parameter for en verdi. Vi vil diskutere det også om en stund.
Parameterisering i QTP ved bruk av datatabel med eksempel
Parameterisering i QTP ved hjelp av Excel
Jeg sjekket parameterverdien PÅ, og så er det en plassering i Datatable-feltet som følger navnet.
Navn Tilsvarende kolonnenavn i datatabellen hvorfra dataene må tas. Som standard vil QTP foreslå et navn. Du har muligheten til å beholde den som foreslått, eller endre den etter behov.
hvordan ser en nettverkssikkerhetsnøkkel ut
Global Ark: Dette databladet er tilgjengelig for alle handlingene i en test.
Gjeldende handlingsark eller lokalt ark: som navnet antyder, er det databladet som er tilgjengelig for en bestemt handling.
Jeg skal til flere rader med data til det globale databladet. Dette er hvor passordkoderverktøyet kommer til nytte. Du kan legge inn krypterte verdier i databladet du får fra dette verktøyet.
Slik ser databladet ut:
Etter parameterisering ser dette slik koden ut:
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
Du vil se i koden ovenfor at verdiene for e-post-ID og passord er hentet fra datatabellen.
Denne koden vil kjøre for alle de 4 radene med data i det globale arket hvis jeg i følgende skjermbilde setter alternativet 'Kjør på alle rader' PÅ:
Bare i tilfelle, hvis du ikke vil bruke skjermbildet ovenfor for å bestemme hvor mange rader koden må utføres for, kan du gjøre det programmatisk. For det må du velge alternativet 'Kjør bare en iterasjon' på skjermbildet ovenfor og skrive koden på følgende måte:
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
Når du utfører en test som kjører i to iterasjoner, vil testresultatskjermen se ut slik:
Jeg vil gjerne bruke litt tid på å undersøke koden og prøve å forstå hvorfor hver linje og dens rekkefølge er viktig for vellykket gjennomføring av testen:
- Hvorfor åpner jeg nettleseren i for-sløyfen?
- Hvorfor er det synkroniseringsuttalelser overalt?
- Hvorfor lukker vi nettleseren på slutten i stedet for å la alternativet “Registrer og kjør innstillinger - Lukk nettleseren når testen lukkes” ta vare på det for oss?
- Igjen, hvorfor er den nære utsagnet inne i ‘for’ sløyfen?
Vær oppmerksom på at i den ovennevnte koden, erklærte jeg ikke variablene i denne testen, innrykk uttalelsene eller ga kommentarer. Dette er bevisst da jeg ikke ønsket å fortynne essensen av uttalelsene. Følgende konsept vil svare på disse spørsmålene:
Tilstand til AUT:
Den grunnleggende regelen er - Hver iterasjon skal begynne med at AUT er den samme tilstanden og slutter i samme tilstand.
- Hvis utsagnet om å åpne gmail.com-siden var utenfor for loop, ville testen gått bra for den første iterasjonen, men for den neste ville gmail.com-siden ikke blitt åpnet og testen mislyktes.
- Hvis uttalelsen om å lukke nettleseren ikke er inkludert i testen, vil testen åpne en nettleser med hver iterasjon, og du vil ende opp med å ha så mange forekomster av nettleseren åpen for antall rader i datatabellen.
- Tenk deg om nærhetsuttalelsen var utenfor for loop, så vil du også ende opp med for mange nettlesere.
- Synkroniseringsuttalelse: dette tvinger QTP-testen til å vente til en bestemt side lastes opp helt før den begynner å utføre en bestemt operasjon på den.
Forsøk alltid å returnere søknaden din til staten der den startet. Dette vil sørge for at du gir det samme grensesnittet for hver av iterasjonene dine å samhandle med.
Følgende er kodebiten når du bruker et lokalt ark i stedet for det globale:
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
I QTP kan du parametere verdiene for:
- Kontrollpunkter.
- Objektegenskaper for et valgt trinn.
- Operasjonsargumenter definert for et valgt trinn.
- Én eller flere egenskaper til et objekt som er lagret i det lokale objektlageret i dialogboksen Objektegenskaper eller vinduet Objektlager.
Ovenstående er også et eksempel på data som driver en bestemt test. Vi får se hvordan vi kan parameterisere ved hjelp av andre parametertyper i neste artikkel.
=> Besøk her for QTP Training Tutorials Series
Anbefalt lesing
- Parameterisering i QTP (del 2) - QTP opplæring # 20
- QTP Tutorials - 25+ Micro Focus Quick Test Professional (QTP) Training Tutorials
- Selen Find Element By Text Tutorial med eksempler
- In-Depth Eclipse Tutorials For Beginners
- QTP Opplæring # 18 - Datadrevne og hybridrammer forklart med QTP-eksempler
- QTP Opplæring # 6 - Forstå innstillinger for QTP Record og Run for vår første test
- QTP Opplæring # 24 - Bruk av virtuelle objekter og gjenopprettingsscenarier i QTP-tester
- Beskrivende programmering i QTP og databaseforbindelse i QTP - Opplæring # 25