qtp frameworks test automation frameworks keyword driven
=> Klikk her for QTP Training Tutorials Series
hva er en god mp3 downloader for android
Hva er Test Automation Framework og hva er QTP Framework?
I sammenheng med en vellykket implementering av QTP for et programvaretestprosjekt kommer vi ofte over begrepet rammer. Rammeverket er ingenting annet enn tilnærmingen som vi konsekvent følger under automatiseringsprosessen - et sett med retningslinjer.
Personlig liker jeg ikke å gi navn og si at den ene fungerer bedre enn den andre. Valget av et bestemt rammeverk er ikke begynnelsen på et prosjekt. Det er motsatt som er sant. I prosessen med å utarbeide en teststrategi bygger du reglene som er gjeldende for testers nåværende situasjon, og at akkurat der er ditt rammeverk.
Når det er sagt, er følgende noen av de viktige punktene vi må vurdere:
- Gjenbrukbarhet
- Skriptets enkle vedlikehold
- Lesbarhet av skript
- God brukbar mappestruktur for alle testmidlene
- Ingen harde kodingsverdier
- Ingen kaskade av feil. (dvs. hvis en test mislykkes, bør den ikke forårsake svikt eller stopp av de andre)
Dette er den grunnleggende listen, og flere kan legges til basert på kravet.
Enhver teststrategi som prøver å innlemme noen eller alle disse punktene ovenfor, er Test Automation Framework.
Det er forskjellige navn og typer rammer. Følgende er listen over rammer i følge meg:
Hva du vil lære:
- Typer av automatiseringsrammer: (Gjelder for QTP Framework)
- Lineær ramme
- Søkeorddrevet rammeverk
- Anbefalt lesing
Typer av automatiseringsrammer: (Gjelder for QTP Framework)
- Lineær - Enkleste form for å lage en test. Bare skriv ett enkelt program uten modularitet i sekvensielle trinn
- Søkeorddrevet - Lag forskjellige nøkkelord for et annet sett med operasjoner, og i hovedskriptet kan vi bare referere til disse nøkkelordene.
- Data drevet - Å kjøre det samme settet med operasjoner på flere datasett som holdes i separate filer, for det meste excel-ark.
- Hybrid - Et kombinasjonsrammeverk som kan være datadrevet og delvis søkeorddrevet
- BPT - Dette betyr bare at programmene er delt inn i forretningskomponenter og brukes sammen med den ene eller den andre av de ovennevnte typer rammer
Lineær ramme
Som diskutert innebærer denne tilnærmingen bare å skrive koden mens vi registrerer og fortsetter.
For eksempel, Hvis operasjonen du må bekrefte, er opprettelsen av en ny konto i Gmail, vil følgende være trinnene:
- Åpne gmail.com
- Klikk på 'Opprett konto'
- Skriv inn detaljene
- Bekreft detaljene
- Opprett kontoen
'Open GMail SystemUtil.Run 'iexplore.exe', 'http://www.gmail.com' 'Page Sync Browser('Gmail').Page('Gmail').Sync ‘Click on create account Browser('Gmail').Page('Gmail').WebLink(“Create Account”).Click ‘Enter the details Browser('Gmail').Page('Google Accounts').WebEdit(“First Name”).Set “Swati” Browser('Gmail').Page('Google Accounts').WebEdit(“Last Name”).Set “test” ‘Fill in several other details ‘Submit Browser('Gmail').Page('Google Accounts').WebButton(“Next Step”).click
Ovenstående er et eksempel på hvordan et program som bruker den lineære metoden ser ut. Det er åpenbart på dette punktet hva fordelene og ulempene med denne metoden er.
Fordeler:
- Enkelhet. For nybegynnerprogrammereren er denne metoden passende
- Tid - Det tar ikke mye tid å lage testen
- Svært lite planlegging kreves
Ulemper:
- Ingen gjenbrukbarhet i det hele tatt
- Hvis det er et annet skript som bekrefter et visst aspekt av siden 'Google-kontoer', må du omskrive koden for å starte gmail.com-siden også. Så mye repetisjon.
- All data er direkte innebygd i kode. Hardkodingen lar ikke koden brukes til andre datasett.
- Feilutsatt og vedlikehold er vanskelig
Mens ulempene oppveier proffene, kan denne metoden brukes når målet ditt er strengt å utføre en oppgave uten validering.
Komponentene av testmidler i denne typen rammer er:
- Testmanus
- Objektregister (Dette kan unngås ved å bruke beskrivende programmering om nødvendig)
Søkeorddrevet rammeverk
Hvordan kan vi gjøre den ovennevnte lineære rammetesten bedre? Hvordan kan vi overvinne ulempene?
lag en rekke strenger java
Tydeligvis trenger vi gjenbrukbarhet, modularitet og lesbarhet. Å prøve å innlemme disse funksjonene og komme frem til en optimal løsning er bare et forsøk på å skape et nytt, mer forbedret rammeverk.
Hva er de gjenbrukbare komponentene?
- Lansering av Gmail og ankomst til 'Google-kontoer' -siden. Dette er gitt, siden validering av denne siden betyr å først komme hit. ‘GoTo Google Account” - kan gjøres om til en egen funksjon som kan kalles om og om igjen.
- Skriv inn detaljene og valider dem - Du kan videre dele dette opp i positive og negative blokker for å inkludere mer nivå av modularitet
- Kontoopprettelse - Det endelige valideringsnivået og utførelsen av oppgaven
Når du har kommet hit, har du ikke bare identifisert komponenter som kan kalles om og om igjen, men du har også brutt det lineære programmet ditt i moduler.
Funksjoner:
Så langt i serien har vi ikke håndtert funksjoner. Funksjoner er bare et stykke kode som gjør visse operasjoner. Den godtar inndataparametere fra programmet som kaller det og returnerer verdi til det.
Som en generell praksis er alle gjenbrukbare kodestykker gruppert i en fil som inneholder alle de gjenbrukbare funksjonene. Denne filen er tilknyttet en ressurs til QTP-testen. Vanligvis kan et funksjonsbibliotek være en fil av typen: .vbs, .txt eller .qfl
Tilbake til vårt eksempel- Slik kan funksjonsbiblioteksfilen være:
Function gotoGoogleAccount() 'Open Gmail SystemUtil.Run 'iexplore.exe', 'http://www.gmail.com' 'Page Sync Browser('Gmail').Page('Gmail').Sync ‘Click on create account Browser('Gmail').Page('Gmail').WebLink(“Create Account”).Click ‘Enter the details End Function Function EnterDetails() Browser('Gmail').Page('Google Accounts').WebEdit(“First Name”).Set “Swati” Browser('Gmail').Page('Google Accounts').WebEdit(“Last Name”).Set “test” ‘Fill in several other details End Function Function SubmitToCreate() ‘Submit Browser('Gmail').Page('Google Accounts').WebButton(“Next Step”).click End Function
Nå vil ditt faktiske skript være:
'Open GMail gotoGoogleAccount() ‘Enter the details EnterDetails() ‘Submit SubmitToCreate()
Fra det ovennevnte programmet er det nå klart at vi har oppnådd lesbarhet, modularitet, og hvis et annet program ønsker å bruke påloggingsfunksjonen, kan vi sikkert bruke det på nytt. Alt du trenger å gjøre er å knytte funksjonsbiblioteket til den nye testen også, og du er god å gå.
Du kan også se at funksjonsnavnene i skriptet fungerer som om de er det VBScript’s nøkkelord og derav navnet på dette rammeverket.
Komponentene av testmidler i denne typen rammer er:
- Test skript
- Delt ELLER
- Delt funksjonsbibliotek
Nå, hva annet vil gjøre dette programmet enda bedre? Hvis vi kunne få EnterDetails () -funksjonen til å ta forskjellige datasett og opprette forskjellige kontoer og ikke være begrenset til dataene vi hardkodet inn i programmet. Det er akkurat neste trinn. Data som driver testene dine og tilnærmingen der vi gjør dette er det datadrevne rammeverket.
Vi vil diskutere Datadrevne og hybride rammer i detalj i den kommende opplæringen.
=> Besøk her for QTP Training Tutorials Series
beste gratis youtube nedlasting for Windows 10
Gi oss beskjed hvis du har problemer knyttet til QTP-rammeverk som du står overfor, og som ikke dekkes av disse artiklene. Vi vil absolutt prøve å svare på spørsmålene dine.
Anbefalt lesing
- De mest populære testautomatiseringsrammene med fordeler og ulemper med hver - Selenium Tutorial # 20
- Testautomatisering - er det en spesialisert karriere? Kan normale testere gjøre automatisering også?
- Hvorfor trenger vi rammeverk for testautomatisering?
- QTP Opplæring # 18 - Datadrevne og hybridrammer forklart med QTP-eksempler
- Hvordan er testplanlegging forskjellig for manuelle og automatiseringsprosjekter?
- Hvordan datadrevet testing fungerer (eksempler på QTP og selen)
- Hvordan velge det beste verktøyet for automatiseringstesting (en komplett guide)
- Datadrevet rammeverk i Selenium WebDriver ved hjelp av Apache POI