qtp frameworks test automation frameworks keyword driven
=> Faceți clic aici pentru seria Tutoriale QTP Training
etl testarea întrebărilor și răspunsurilor interviului pdf
Ce este Test Automation Framework și ce este QTP Framework?
În contextul implementării cu succes a QTP pentru un proiect de testare software întâlnim deseori conceptul de cadre. Cadrul nu este altceva decât abordarea pe care o urmăm în mod constant în timpul procesului de automatizare - un set de linii directoare.
Personal, nu-mi place să dau nume și să spun că una funcționează mai bine decât cealaltă. Selectarea unui anumit cadru nu este începutul unui proiect. Este inversul care este adevărat. În procesul de elaborare a unei strategii de testare, construiți regulile care sunt aplicabile situației actuale a testerului și chiar acolo este cadrul dvs.
Acestea fiind spuse, următoarele sunt câteva dintre punctele importante pe care trebuie să le luăm în considerare:
- Reutilizarea
- Întreținerea ușoară a scriptului
- Citibilitatea scripturilor
- Structură de dosare funcțională bună pentru toate activele de testare
- Fără valori de codare dură
- Fără cascadă de eșecuri. (adică dacă un test eșuează, nu ar trebui să provoace eșecul sau oprirea celorlalte)
Aceasta este lista de bază și mai multe pot fi adăugate în funcție de cerință.
Orice strategie de testare care încearcă să încorporeze unele sau toate aceste puncte de mai sus este cadrul dvs. de testare a automatizării.
Există diferite nume și tipuri de cadre. Următoarea este lista cadrelor după mine:
Ce veți învăța:
- Tipuri de cadre de automatizare: (Se aplică pentru QTP Framework)
- Cadrul liniar
- Cadru bazat pe cuvinte cheie
- Lectură recomandată
Tipuri de cadre de automatizare: (Se aplică pentru QTP Framework)
- Liniar - Cea mai simplă formă de a crea un test. Scrieți un singur program fără modularitate în pași secvențiali
- Cuvinte cheie - Creați cuvinte cheie diferite pentru un set diferit de operațiuni și în scriptul principal putem face trimitere doar la aceste cuvinte cheie.
- Bazat pe date - Pentru a rula același set de operații pe mai multe seturi de date care sunt păstrate în fișiere separate, mai ales foi Excel.
- Hibrid - Un cadru de combinație care poate fi parțial bazat pe date și parțial bazat pe cuvinte cheie
- BPT - Aceasta înseamnă doar că programele sunt împărțite în componente de afaceri și sunt utilizate cu unul sau altul dintre tipurile de cadre de mai sus
Cadrul liniar
După cum sa discutat, această abordare implică simpla scriere a codului pe măsură ce înregistrăm și continuăm.
De exemplu, dacă operațiunea pe care trebuie să o verificați este crearea unui cont nou în Gmail, următorii vor fi pașii:
- Deschide gmail.com
- Faceți clic pe „Creați un cont”
- Introduceți detaliile
- Verificați detaliile
- Creați contul
'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
Cele de mai sus sunt un exemplu de cum arată un program care folosește metoda liniară. Este evident în acest moment care sunt avantajele și dezavantajele acestei metode.
Avantaje:
- Simplitate. Pentru programatorul începător, această metodă este potrivită
- Timp - Nu este nevoie de mult timp pentru a crea testul
- Este necesară foarte puțină planificare
Dezavantaje:
- Nicio reutilizare deloc
- Dacă există un alt script care verifică un anumit aspect al paginii „Conturi Google”, va trebui să rescrieți codul pentru a lansa și pagina gmail.com. Deci, o mulțime de repetări.
- Toate datele sunt încorporate direct în cod. Hardcoding-ul nu permite folosirea codului pentru niciun alt set de date.
- Predispuse la erori și întreținerea este dificilă
În timp ce dezavantajele depășesc avantajele, această metodă poate fi utilizată atunci când scopul dvs. este strict de a îndeplini o sarcină fără validări.
Componentele activelor de testare în acest tip de cadre sunt:
- Script de testare
- Depozit de obiecte (Acest lucru poate fi evitat prin utilizarea programării descriptive, dacă este necesar)
Cadru bazat pe cuvinte cheie
Cum putem îmbunătăți testul cadrului liniar de mai sus? Cum putem depăși dezavantajele?
convertizor de la youtube la mp4 descărcare gratuită versiune completă
Evident, avem nevoie de reutilizare, modularitate și lizibilitate. Încercarea de a încorpora aceste caracteristici și de a ajunge la o soluție optimă nu este altceva decât o încercare de a crea un nou cadru mai îmbunătățit.
Care sunt componentele reutilizabile?
- Lansarea Gmail și sosirea la pagina „Conturi Google”. Acesta este un lucru dat, deoarece validarea acestei pagini înseamnă mai întâi să ajungeți aici. „Cont Google GoTo” - poate fi transformat într-o funcție separată care poate fi apelată din nou și din nou.
- Introduceți detaliile și validați - Puteți împărți acest lucru în blocuri pozitive și negative pentru a include mai mult nivel de modularitate
- Crearea contului - Nivelul final de validare și îndeplinire a sarcinii la îndemână
Odată ce ați ajuns aici, nu numai că ați identificat componente care pot fi apelate din nou și din nou, dar v-ați împărțit și programul liniar în module.
Funcții:
Până în prezent în seria noastră, nu ne-am ocupat de funcții. Funcțiile nu sunt altceva decât o bucată de cod care face anumite operații. Acceptă parametrii de intrare din programul care îl apelează și îi returnează valoare.
creați o matrice de obiecte java
Ca practică generală, toate bucățile de cod reutilizabile sunt grupate într-un fișier care conține toate funcțiile reutilizabile. Acest fișier este asociat cu o resursă la testul QTP. De obicei, o bibliotecă de funcții poate fi un fișier de tip: .vbs, .txt sau .qfl
Înapoi la exemplul nostru- Așa poate fi fișierul bibliotecii de funcții:
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
Acum, scriptul dvs. actual va fi:
'Open GMail gotoGoogleAccount() ‘Enter the details EnterDetails() ‘Submit SubmitToCreate()
Din programul de mai sus, este acum clar că am atins lizibilitatea, modularitatea și dacă în cazul în care un alt program dorește să utilizeze funcția de conectare, cu siguranță o putem reutiliza. Tot ce trebuie să faceți este să asociați și biblioteca de funcții la noul test și sunteți bine să mergeți.
De asemenea, puteți vedea că în scriptul dvs. numele funcțiilor funcționează ca și cum ar fi VBScript’s cuvinte cheie și de aici numele pentru acest cadru.
Componentele activelor de testare în acest tip de cadre sunt:
- Testează scripturile
- Partajat SAU
- Biblioteca de funcții partajate
Acum, ce altceva ar face acest program și mai bun? Dacă am putea face ca funcția EnterDetails () să preia seturi diferite de date și să creeze conturi diferite și să nu ne limităm la datele pe care le-am codat în program. Exact acesta este următorul pas. Datele care conduc testele dvs. și abordarea în care facem acest lucru sunt cadrul bazat pe date.
O sa discutam Cadre bazate pe date și hibride în detaliu în următorul tutorial.
=> Vizitați aici pentru seria Tutoriale QTP de formare
Dacă aveți probleme legate de cadrul QTP cu care vă confruntați și care nu sunt acoperite în aceste articole, anunțați-ne. Cu siguranță vom încerca să vă răspundem la întrebări.
Lectură recomandată
- Cele mai populare cadre de automatizare a testelor cu avantajele și dezavantajele fiecăruia - Selenium Tutorial # 20
- Automatizarea testelor - Este o carieră specializată? Testatorii normali pot face și automatizarea?
- De ce avem nevoie de cadru pentru automatizarea testelor?
- Tutorial QTP # 18 - Cadre hibride și bazate pe date explicate cu exemple QTP
- În ce diferă planificarea testelor pentru proiectele manuale și de automatizare?
- Cum funcționează testarea bazată pe date (exemple de QTP și seleniu)
- Cum să alegeți cel mai bun instrument de testare a automatizării (un ghid complet)
- Cadru bazat pe date în Selenium WebDriver folosind Apache POI