I denne veiledningen vil du lære
- Hva er et rammeverk?
- Hva er et TEST Automation Framework?
- Typer av automatiseringsrammer
- 1) Lineær skripting - Record & Playback
- 2) Testbiblioteket Arkitektur Framework.
- 3) Datadrevet testrammeverk.
- 4) Søkeorddrevet eller borddrevet testramme.
- 5) Hybrid Test Automation Framework.
Hva er et rammeverk?
I stedet for å gi en boksk definisjon av et rammeverk, la oss vurdere et eksempel.
Jeg er sikker på at du har deltatt på et seminar / forelesning / konferanse der deltakerne ble bedt om å følge følgende retningslinjer -
- Deltakerne bør ta plass 5 minutter før forelesningen starter
- Ta med en notatbok og penn for notater.
- Les sammendraget slik at du får en ide om hva presentasjonen vil handle om.
- Mobiltelefoner skal være stille
- Bruk utgangsportene i motsatt ende av høyttaleren hvis du trenger å dra midt i forelesningen.
- Spørsmål vil bli tatt på slutten av økten
Tror du at du kan gjennomføre et seminar UTEN å følge disse retningslinjene ????
Svaret er et stort JA! Du kan absolutt gjennomføre et seminar / forelesning / konferanse / demonstrasjon uten de ovennevnte retningslinjene (faktisk vil noen av oss ikke følge dem selv om det er lagt ... :-)
Men hvis retningslinjene følges, vil det resultere i et gunstig utfall som redusert distraksjon av publikum under forelesning og økt deltakerbevaring og forståelse av emnet.
Basert på ovenstående kan et rammeverk defineres som et sett med retningslinjer som når de følges gir gunstige resultater.
Hva er et TEST Automation Framework?
Et sett med retningslinjer som kodingsstandarder, håndtering av testdata, behandling av objekter, arkiv osv ... som når de følges under automatiseringsskript gir gunstige resultater som å øke kodebruk, høyere bærbarhet, reduserte skriptvedlikeholdskostnader etc. Husk at dette bare er retningslinjer og ikke regler; de er ikke obligatoriske, og du kan fortsatt skripte uten å følge retningslinjene. Men du vil gå glipp av fordelene med å ha et rammeverk.
Typer av automatiseringsrammer
1) Lineær skripting
2) Testbibliotekets rammeverk.
3) Datadrevet testrammeverk.
4) Søkeorddrevet eller borddrevet testramme.
5) Hybrid Test Automation Framework.
La oss se på dem i detalj -
1) Lineær skripting - Record & Playback
Det er det enkleste av alle rammeverk og også kjent som "Record & Playback" . I dette rammeverket registrerer Tester hvert trinn manuelt (Navigasjon og brukerinnganger), setter inn kontrollpunkter (valideringstrinn) i første runde. Deretter spiller han av det innspilte manuset i de påfølgende rundene.
Eks: Vurder å logge på Flight Reservation Application og sjekke om applikasjonen er lastet inn etter vellykket pålogging. Her vil testeren bare registrere trinnene og legge til valideringstrinn.
SystemUtil.Run "flight4a.exe", "", "", "open"Dialog ("Login"). WinEdit ("Agent Name:"). Sett "Guru99"Dialog ("Logg inn"). WinEdit ("Passord:"). Sett "Merkur"Dialog ("Logg inn"). WinButton ("OK"). Klikk'Kontroller at flyreservasjonsvinduet er lastet inn etter vellykket påloggingVindu ("Flight Reservation"). Sjekk CheckPoint ("Flight Reservation")
Fordeler
- Raskeste måten å generere et skript på
- Automatiseringskompetanse er ikke nødvendig
- Den enkleste måten å lære seg funksjonene i testverktøyet
Ulemper
- Lite gjenbruk av manus
- Testdata er hardkodet i skriptet
- Vedlikehold Mareritt
2) Testbiblioteket Arkitektur Framework.
Det er også kjent som "Structured Scripting" eller "Functional Decomposition".
I dette rammeverket blir testskript opprinnelig spilt inn etter "Record & Playback" -metoden. Senere blir vanlige oppgaver i skriptene identifisert og gruppert i Funksjoner. Disse funksjonene kalles av hovedtestskriptet kalt Driver på forskjellige måter for å lage testsaker.
Eks: Ved å bruke det samme eksemplet som ovenfor, vil funksjonen for å logge på Flight Reservation se ut.
Funksjon pålogging ()SystemUtil.Run "flight4a.exe", "", "", "open"Dialog ("Login"). WinEdit ("Agent Name:"). Sett "Guru99"Dialog ("Logg inn"). WinEdit ("Passord:"). Sett "Merkur"Dialog ("Logg inn"). WinButton ("OK"). KlikkSluttfunksjon
Nå vil du kalle denne funksjonen i hovedskriptet som følger
Ring innlogging ()---------------------------Andre funksjonssamtaler / teststrinn.---------------------------
Fordeler
- Høyere nivå av kode gjenbruk oppnås i Structured Scripting sammenlignet med "Record & Playback"
- Automatiseringsskriptene er mindre kostbare å utvikle på grunn av høyere kodebruk
- Enklere vedlikehold av skript
Ulemper
- Teknisk ekspertise er nødvendig for å skrive skript ved hjelp av Test Library Framework.
- Mer tid er nødvendig for å planlegge og utarbeide testmanus.
- Testdata er hardkodet i skriptene
3) Datadrevet testrammeverk.
I dette rammeverket, mens Test Case-logikken ligger i testskripter, skilles testdataene og holdes utenfor testskriptene. Testdata blir lest fra de eksterne filene (Excel-filer, tekstfiler, CSV-filer, ODBC-kilder, DAO-objekter, ADO-objekter) og lastes inn i variablene i testskriptet. Variabler brukes både for inngangsverdier og for verifiseringsverdier. Testskriptene i seg selv blir utarbeidet enten ved hjelp av Linear Scripting eller Test Library Framework.
Eks: Utvikling av Flight Reservation-påloggingsskript ved hjelp av denne metoden vil innebære to trinn.
Trinn 1) Opprett en test - datafil som kan være Excel, CSV eller en hvilken som helst annen databasekilde.
Agentnavn |
Passord |
---|---|
Jimmy |
Kvikksølv |
Tina |
KVIKSEL |
Regning |
MerCURY |
Trinn 2) Utvikle testskript og referere til testdatakilden.
SystemUtil.Run "flight4a.exe", "", "", "open"Dialog ("Logg inn"). WinEdit ("Agentnavn:"). Sett datatabell ("Agentnavn", dtGlobalSheet)Dialog ("Logg inn"). WinEdit ("Passord:"). Sett datatabell ("Passord", dtGlobalSheet)Dialog ("Logg inn"). WinButton ("OK"). Klikk'Sjekk at flyreservasjonsvinduet er lastetVindu ("Flight Reservation"). Sjekk CheckPoint ("Flight Reservation")** Merk "dtGlobalSheet" er standard Excel-ark levert av QTP.
Fordeler
- Endringer i testskriptene påvirker ikke testdataene
- Testtilfeller kan utføres med flere datasett
- En rekke testscenarier kan utføres ved å bare variere testdataene i den eksterne datafilen
Ulemper
- Mer tid er nødvendig for å planlegge og forberede både testskript og testdata
4) Søkeorddrevet eller borddrevet testramme.
Det søkeorddrevne eller borddrevne rammeverket krever utvikling av datatabeller og nøkkelord, uavhengig av testautomatiseringsverktøyet som brukes til å utføre dem. Tester kan utformes med eller uten applikasjonen. I en søkeorddrevet test er funksjonaliteten til applikasjonen under testen dokumentert i en tabell, samt i trinnvise instruksjoner for hver test.
Det er tre grunnleggende komponenter i et Keyword Driven Framework nemlig. Nøkkelord, applikasjonskart, komponentfunksjon.
Hva er et nøkkelord?
Keyword er en handling som kan utføres på en GUI-komponent. Eks. For GUI Component Textbox vil noen nøkkelord (handling) være InputText, VerifyValue, VerifyProperty og så videre.
Hva er applikasjonskartet?
Et applikasjonskart gir navngitte referanser for GUI-komponenter. Applikasjonskart er bare " Object Repositry "
Hva er komponentfunksjon?
Komponentfunksjoner er de funksjonene som aktivt manipulerer eller forhører GUI-komponenten. Et eksempel på en funksjon vil være å klikke på web-knappen med all feilhåndtering, legge inn data i en nettredigering med all feilhåndtering. Komponentfunksjoner kan være applikasjonsavhengige eller uavhengige.
Eks : For å forstå søkeordvisning kan vi ta det samme eksemplet. Den inneholder to trinn
Trinn 1 : Opprette datatabell (forskjellig fra testdatatabellen opprettet i datadrevet rammeverk). Denne datatabellen inneholder handlinger som skal utføres på GUI-objekter og eventuelle argumenter. Hver rad representerer ett teststrinn.
Gjenstand (Søknadskart) |
Handling (Nøkkelord) |
Argument |
---|---|---|
WinEdit (agentnavn) | Sett | Guru99 |
WinEdit (passord) | Sett | Kvikksølv |
WinButton (OK) | Klikk | |
Vindu (flyreservasjon) | Bekrefte | Eksisterer |
Trinn 2 : Skrive kode i form av komponentfunksjoner.
Når du har opprettet datatabellen (e), skriver du ganske enkelt et program eller et sett med skript som leser i hvert trinn, utfører trinnet basert på nøkkelordet som inneholder handlingsfeltet, utfører feilkontroll og logger relevant informasjon. Dette programmet eller settet med skript ser ut som pseudokoden nedenfor:
Funksjon hoved (){Call ConnectTable (navn på tabellen) {// Calling Function for tilkobling til tabellen.mens (Call TableParser ()! = -1) // Calling-funksjon for analyse og utvinning av verdier fra tabellen.{Gi verdiene til passende KOMPONENTfunksjoner. Som Set (Object Name, Argument) ex.Set (Agent Name, Guru99).}}Call CloseConnection () // Funksjon for å lukke tilkoblingen etter at all operasjonen er utført.} // End of main
Alt dette til Keyword Driven Framework.
Fordelen med Keyword Driven Framework er at søkeordene kan brukes på nytt. For å forstå dette, bør du kontrollere påloggingsoperasjonen for et nettsted, si YAHOO MAIL. Tabellen vil se slik ut -
Objekt (APPLICATION MAP) | Handling (Nøkkelord) | Argument |
---|---|---|
WebEdit (brukernavn) | Sett | Denne e-postadressen er beskyttet mot programmer som samler e-postadresser. Du må aktivere JavaScript for å kunne se den. |
WebEdit (passord) | Sett | xxxxx |
WebButton (OK) | Klikk | |
Vindu (Yahoo Mail) | Bekrefte | Laster |
Hvis du i dette tilfellet ser nøkkelordene Set, Click, Verify forblir de samme som tilsvarende komponentfunksjoner allerede er utviklet for. Alt du trenger å gjøre er å endre Application Mapping (Object Repository) fra tidligere Flight Reservation til Yahoo Mail, med en endring i argumentverdier og samme skript vil fungere!
Fordeler
- Gir høy kode gjenbrukbarhet
- Testverktøy uavhengig
- Uavhengig av applikasjon under test, fungerer det samme skriptet for AUT (med noen begrensninger)
- Tester kan utformes med eller uten AUT
Ulemper
- Den første investeringen er ganske høy, fordelene med dette kan bare realiseres hvis applikasjonen er betydelig stor og testskriptene skal opprettholdes i ganske mange år.
- Det kreves høy automatiseringsekspertise for å lage Keyword Driven Framework.
MERKNAD: Selv om Micro Focus UFT annonserer seg som KeyWord Driven Framework, kan du ikke oppnå komplett testverktøy og applikasjonsavhengighet ved hjelp av HP UFT.
5) Hybrid Test Automation Framework.
Som navnet antyder, er dette rammeverket en kombinasjon av ett eller flere rammeverk som er diskutert ovenfor, og som trekker fra styrken og prøver å dempe svakhetene. Dette hybridtestautomatiseringsrammeverket er det de fleste rammeverk utvikler seg til over tid og flere prosjekter. Maksimal industri bruker Keyword Framework i en kombinasjon av Function decomposition method.
PS: Andre rammer som er verdt å nevne er
Test Modularity Framework
I dette rammeverket grupperes en felles oppgave i testskript som moduler.
Eks : Bruk av handlinger i QTP-bruk kan opprette et Modualr-skript
Eksempelskript for pålogging
SystemUtil.Run "flight4a.exe", "", "", "open"Dialog ("Login"). WinEdit ("Agent Name:"). Sett "Guru99"Dialog ("Logg inn"). WinEdit ("Passord:"). Sett "Merkur"Dialog ("Logg inn"). WinButton ("OK"). Klikk'End of the Script
Nå kan du kalle denne handlingen i hovedskriptet som følger -
RunAction ("Login [Argument]", oneIteration)
Business Process Testing (BPT)
Disse rammeverkene deler opp store forretningsprosesser i komponenter som kan brukes flere ganger i samme eller forskjellige testskript. For eksempel er forretningsprosessen med å bestille en flytur delt inn i komponenter som Login, Find Flights, Booking, Payment & Logout som kan brukes på nytt i samme forretningsprosess eller forskjellige prosesser. BPT muliggjør også nærmere koordinering mellom SMB og automatiseringsingeniører.