U ovom ćete tutorijalu naučiti
- Što je okvir?
- Što je TEST Automation Framework?
- Vrste okvira za automatizaciju
- 1) Linearno skriptiranje - snimanje i reprodukcija
- 2) Okvir arhitekture testne knjižnice.
- 3) Okvir testiranja na temelju podataka.
- 4) Okvir za testiranje na temelju ključne riječi ili na temelju tablice.
- 5) Okvir hibridne automatizacije ispitivanja.
Što je okvir?
Umjesto da pružimo knjižnu definiciju okvira, razmotrimo primjer.
Siguran sam da ste prisustvovali seminaru / predavanju / konferenciji na kojem su sudionici zamoljeni da poštuju sljedeće smjernice -
- Sudionici bi trebali zauzeti svoje mjesto 5 minuta prije početka predavanja
- Ponesite bilježnicu i olovku za bilježenje.
- Pročitajte sažetak kako biste imali predodžbu o čemu će se raditi na prezentaciji.
- Mobilni telefoni trebaju biti uključeni
- Upotrijebite izlazne kapije na suprotnom kraju zvučnika ako trebate napustiti usred predavanja.
- Pitanja će se uzimati na kraju sesije
Mislite li da možete održati seminar BEZ poštivanja ovih smjernica ????
Odgovor je veliko DA! Svakako, možete održati seminar / predavanje / konferenciju / demonstraciju bez gore navedenih smjernica (zapravo neki od nas ih neće slijediti iako postoje položeni ... :-)
No ako se slijede smjernice, to će rezultirati blagotvornim ishodom poput smanjenog ometanja publike tijekom predavanja i povećanog zadržavanja i razumijevanja predmeta.
Na temelju gore navedenog, Okvir se može definirati kao skup smjernica koje kada slijede daju korisne rezultate.
Što je TEST Automation Framework?
Skup smjernica poput standarda kodiranja, rukovanja testnim podacima, obrade spremišta objekata itd. ... koji se slijede tijekom automatskog skriptiranja daju korisne rezultate kao što je povećanje ponovne upotrebe koda, veća prenosivost, smanjeni troškovi održavanja skripti itd. Imajte na umu da su ovo samo smjernice i ne pravila; nisu obvezni i još uvijek možete pisati skripte bez slijeđenja smjernica. Ali propustit ćete prednosti posjedovanja okvira.
Vrste okvira za automatizaciju
1) Linearno skriptiranje
2) Okvir arhitekture testne knjižnice.
3) Okvir testiranja na temelju podataka.
4) Okvir za testiranje na temelju ključne riječi ili na temelju tablice.
5) Okvir hibridne automatizacije ispitivanja.
Pogledajmo ih detaljno -
1) Linearno skriptiranje - snimanje i reprodukcija
To je najjednostavniji od svih okvira, a poznat i pod nazivom "Snimanje i reprodukcija" . U ovom okviru, Tester ručno bilježi svaki korak (navigacija i korisnički unosi), ubacuje kontrolne točke (koraci provjere) u prvom krugu. Zatim, reproducira snimljeni scenarij u sljedećim rundama.
Primjer: razmislite o prijavi u aplikaciju za rezervaciju leta i provjeri je li se aplikacija učitala pri uspješnoj prijavi. Ovdje će ispitivač jednostavno snimiti korake i dodati korake provjere valjanosti.
SystemUtil.Run "flight4a.exe", "", "", "open"Dijaloški okvir ("Prijava"). WinEdit ("Ime agenta:"). Postavite "Guru99"Dijaloški okvir ("Prijava"). WinEdit ("Lozinka:"). Postavite "Mercury"Dijaloški okvir ("Prijava"). WinButton ("U redu"). Kliknite'Provjeri je li prozor za rezervaciju leta učitan nakon uspješne prijaveProzor ("Rezervacija leta"). Provjerite CheckPoint ("Rezervacija leta")
Prednosti
- Najbrži način za generiranje skripte
- Nije potrebno vještačenje automatizacije
- Najlakši način da naučite značajke alata za testiranje
Mane
- Mala ponovna upotreba skripti
- Podaci o testiranju čvrsto su kodirani u skriptu
- Noćna mora održavanja
2) Okvir arhitekture testne knjižnice.
Također je poznato kao "Strukturirano skriptiranje" ili "Funkcionalno razlaganje".
U ovom se okviru testne skripte u početku snimaju metodom "Snimanje i reprodukcija". Kasnije se uobičajeni zadaci unutar skripti identificiraju i grupiraju u funkcije. Te se funkcije nazivaju glavnom testnom skriptom pod nazivom Driver na različite načine za stvaranje testnih slučajeva.
Primjer: Koristeći isti primjer kao gore, izgledat će funkcija za prijavu u Rezervaciju leta.
Prijava funkcije ()SystemUtil.Run "flight4a.exe", "", "", "open"Dijaloški okvir ("Prijava"). WinEdit ("Ime agenta:"). Postavite "Guru99"Dijaloški okvir ("Prijava"). WinEdit ("Lozinka:"). Postavite "Mercury"Dijaloški okvir ("Prijava"). WinButton ("U redu"). KlikniteKrajnja funkcija
Sada ćete ovu funkciju u glavnoj skripti pozvati kako slijedi
Prijava poziva ()---------------------------Ostali pozivi funkcije / koraci ispitivanja.---------------------------
Prednosti
- Viša razina ponovne upotrebe koda postignuta je u strukturiranom skriptiranju u odnosu na "Snimanje i reprodukcija"
- Skripte za automatizaciju manje su skupe za razvoj zbog veće ponovne upotrebe koda
- Jednostavnije održavanje skripti
Mane
- Za pisanje skripti korištenjem Test Library Framework potrebno je tehničko znanje.
- Potrebno je više vremena za planiranje i pripremu testnih skripti.
- Podaci o testiranju teško su kodirani u skriptama
3) Okvir testiranja na temelju podataka.
U ovom okviru, dok se logika test slučaja nalazi u test skriptama, test podaci se odvajaju i čuvaju izvan test skripti. Podaci o testiranju čitaju se iz vanjskih datoteka (Excel datoteke, tekstualne datoteke, CSV datoteke, ODBC izvori, DAO objekti, ADO objekti) i učitavaju se u varijable unutar test skripte. Varijable se koriste i za ulazne vrijednosti i za vrijednosti provjere. Sami skripti za testiranje pripremaju se pomoću Linear Scripting ili Test Library Framework.
Primjer: Razvoj skripte prijave za rezervaciju leta korištenjem ove metode podrazumijevat će dva koraka.
Korak 1) Stvorite test - datoteku podataka koja može biti Excel, CSV ili bilo koji drugi izvor baze podataka.
Ime agenta |
Zaporka |
---|---|
Jimmy |
Merkur |
Tina |
MERKUR |
Račun |
Merkur |
Korak 2) Razvijte testnu skriptu i uputite se na svoj testni izvor podataka.
SystemUtil.Run "flight4a.exe", "", "", "open"Dijaloški okvir ("Prijava"). WinEdit ("Ime agenta:"). Postavi tablicu podataka ("Ime agenta", dtGlobalSheet)Dijaloški okvir ("Prijava"). WinEdit ("Lozinka:"). Postavi tablicu podataka ("Lozinka", dtGlobalSheet)Dijaloški okvir ("Prijava"). WinButton ("U redu"). Kliknite'Provjerite je li učitan prozor za rezervaciju letaProzor ("Rezervacija leta"). Provjerite CheckPoint ("Rezervacija leta")** Napomena "dtGlobalSheet" zadani je excel list koji pruža QTP.
Prednosti
- Izmjene testnih skripti ne utječu na testne podatke
- Test slučajevi mogu se izvršiti s više skupova podataka
- Raznolikost testnih scenarija može se izvršiti samo mijenjanjem testnih podataka u datoteci vanjskih podataka
Mane
- Potrebno je više vremena za planiranje i pripremu testnih skripti i test podataka
4) Okvir za testiranje na temelju ključne riječi ili na temelju tablice.
Okvir vođen ključnim riječima ili upravljan tablicama zahtijeva razvoj tablica podataka i ključnih riječi, neovisno o alatu za automatizaciju testa koji se koristi za njihovo izvršavanje. Testovi se mogu dizajnirati sa ili bez aplikacije. U testu na temelju ključnih riječi funkcionalnost aplikacije koja se testira dokumentirana je u tablici, kao i u detaljnim uputama za svaki test.
Postoje 3 osnovne komponente Framework Driven Framework-a, naime. Ključna riječ, karta primjene, funkcija komponente.
Što je ključna riječ?
Ključna riječ je radnja koja se može izvesti na komponenti grafičkog korisničkog sučelja. Pr. Za tekstualni okvir s komponentama GUI-a neke ključne riječi (Akcija) bile bi InputText, VerifyValue, VerifyProperty i tako dalje.
Što je karta aplikacije?
Karta aplikacije pruža imenovane reference za komponente GUI-a. Karte aplikacija nisu ništa drugo do " Spremište objekata "
Što je komponentna funkcija?
Funkcije komponenata su one funkcije koje aktivno manipuliraju ili ispituju komponentu GUI. Primjer funkcije bio bi klik na web gumb sa svim rukovanjem pogreškama, unos podataka u uređivanje weba sa svim rukovanjem pogreškama. Funkcije komponenata mogu biti ovisne o aplikaciji ili neovisne.
Primjer : Da bismo razumjeli prikaz ključnih riječi, uzmimo isti primjer. Zaziva 2 koraka
Korak 1 : Stvaranje tablice podataka (različito od tablice test-podataka stvorene u okviru vođenom podacima). Ova tablica podataka sadrži radnju koju treba izvršiti na GUI objektima i odgovarajuće argumente ako postoje. Svaki redak predstavlja jedan testni korak.
Objekt (KARTA aplikacije) |
Akcijski (KLJUČNE RIJEČI) |
Argument |
---|---|---|
WinEdit (ime agenta) | Postavi | Guru99 |
WinEdit (lozinka) | Postavi | Merkur |
WinButton (u redu) | Klik | |
Prozor (rezervacija leta) | Potvrdite | Postoji |
Korak 2 : Pisanje koda u obliku komponentnih funkcija.
Jednom kada izradite tablice podataka, jednostavno napišete program ili skup skripti koji se čitaju u svakom koraku, izvršavaju korak na temelju ključne riječi koja sadrži polje Akcija, izvršava provjeru pogrešaka i bilježi sve relevantne informacije. Ovaj program ili skup skripti izgledao bi slično pseudo kodu u nastavku:
Glavna funkcija (){Call ConnectTable (naziv tablice) {// Pozivna funkcija za spajanje na tablicu.while (Call TableParser ()! = -1) // Pozivna funkcija za raščlanjivanje i izdvajanje vrijednosti iz tablice.{Proslijedite vrijednosti odgovarajućim komponentama KOMPONENTE. Poput postavljenog (naziv objekta, argument) ex.Set (ime agenta, Guru99)}}Pozovite CloseConnection () // Funkcija za zatvaranje veze nakon što je izvedena sva operacija.} // Kraj glavnog
To je sve za okvir vođen ključnim riječima.
Prednost Framework Driven Framework-a je u tome što se ključne riječi mogu ponovno koristiti. Da biste to razumjeli, razmislite o tome želite li provjeriti postupak prijave na web mjesto recite YAHOO MAIL. Tablica će izgledati ovako -
Objekt (KARTA ZA PRIJAVU) | Akcija (KLJUČNA RIJEČ) | Argument |
---|---|---|
WebEdit (korisničko ime) | Postavi | Ova adresa e-pošte zaštićena je od neželjenih robota. Ako ga želite pregledati, potreban vam je Java-skripta. |
WebEdit (lozinka) | Postavi | xxxxx |
WebButton (u redu) | Klik | |
Prozor (Yahoo Mail) | Potvrdite | Opterećenja |
Ako u ovom slučaju primijetite Skup ključnih riječi, Klik, Potvrdi ostaju isti za koje su odgovarajuće funkcije komponenata već razvijene. Sve što trebate je promijeniti Mapiranje aplikacija (Spremište objekata) iz ranije Rezervacije leta u Yahoo Mail, s promjenom vrijednosti argumenata i ista skripta će raditi!
Prednosti
- Pruža visoku ponovnu upotrebljivost koda
- Alat za ispitivanje neovisan
- Neovisno o aplikaciji koja se testira, ista skripta radi za AUT (s određenim ograničenjima)
- Ispitivanja se mogu dizajnirati s AUT ili bez njega
Mane
- Početno ulaganje je prilično visoko, a koristi od toga mogu se ostvariti samo ako je aplikacija znatno velika i ako se testne skripte održavaju prilično nekoliko godina.
- Visoka stručnost za automatizaciju potrebna je za stvaranje okvira vođenog ključnim riječima.
NAPOMENA: Iako se Micro Focus UFT oglašava kao KeyWord Driven Framework, pomoću HP UFT-a ne možete postići potpunu ovisnost o alatima za testiranje i aplikacijama.
5) Okvir hibridne automatizacije ispitivanja.
Kao što i samo ime govori, ovaj je okvir kombinacija jednog ili više gore spomenutih okvira koji povlače iz njihovih snaga i pokušavaju ublažiti njihove slabosti. Ovaj hibridni okvir za automatizaciju testa ono je u što se većina okvira razvija s vremenom i u više projekata. Maksimalna industrija koristi Okvir ključnih riječi u kombinaciji metode razlaganja funkcije.
PS: Ostali okviri vrijedni spomena su
Okvir modularnosti testa
U ovom su okviru uobičajeni zadatak u testnoj skripti grupirani u module.
Primjer : Korištenje Akcija u QTP-u može stvoriti Modualr skripte
Uzorak skripte za prijavu
SystemUtil.Run "flight4a.exe", "", "", "open"Dijaloški okvir ("Prijava"). WinEdit ("Ime agenta:"). Postavite "Guru99"Dijaloški okvir ("Prijava"). WinEdit ("Lozinka:"). Postavite "Mercury"Dijaloški okvir ("Prijava"). WinButton ("U redu"). Kliknite'Kraj skripte
Sada ovu radnju u glavnoj skripti možete nazvati kako slijedi -
RunAction ("Prijava [Argument]", oneIteration)
Ispitivanje poslovnih procesa (BPT)
Ovaj okvir rastavlja velike poslovne procese na komponente koje se mogu više puta koristiti u istim ili različitim test skriptama. Na primjer, poslovni proces rezervacije leta podijeljen je na komponente poput Prijava, pronalaženje letova, rezervacija, plaćanje i odjava koje se mogu ponovno koristiti u istom poslovnom procesu ili različitim procesima. Također, BPT omogućuje bližu koordinaciju između malih i srednjih poduzeća i inženjera automatizacije.