qtp frameworks test automation frameworks keyword driven
=> Kliknite sem, aby ste dostali sériu QTP Training Tutorials
ako napísať testovacie prípady pri manuálnom testovaní s príkladom
Čo je to Test Automation Framework a čo je QTP Framework?
V kontexte úspešnej implementácie QTP pre projekt testovania softvéru sa často stretávame s konceptom rámcov. Rámec nie je nič iné ako prístup, ktorým sa dôsledne riadime počas procesu automatizácie - súbor pokynov.
Osobne nerád dávam mená a hovorím, že jedno funguje lepšie ako druhé. Výber určitého rámca nie je začiatkom projektu. Je to naopak, čo je pravda. V procese navrhovania stratégie testovania zostavujete pravidlá, ktoré sú použiteľné pre aktuálnu situáciu testera, a že existuje váš rámec.
Preto sú uvedené niektoré dôležité body, ktoré musíme zvážiť:
- Opätovná použiteľnosť
- Ľahká údržba skriptu
- Čitateľnosť skriptov
- Dobrá funkčná štruktúra priečinkov pre všetky testované aktíva
- Žiadne hodnoty pevného kódovania
- Žiadna kaskáda porúch. (tj. ak jeden test zlyhá, nemal by spôsobiť zlyhanie alebo zastavenie ostatných)
Toto je základný zoznam a na základe požiadavky je možné pridať ďalšie.
Akákoľvek stratégia testovania, ktorá sa pokúsi začleniť niektoré alebo všetky tieto body vyššie, je váš Test Automation Framework.
Existujú rôzne názvy a typy rámcov. Nasleduje zoznam rámcov podľa mňa:
Čo sa dozviete:
- Typy automatizačných rámcov: (platí pre rámec QTP)
- Lineárny rámec
- Rámec riadený kľúčovým slovom
- Odporúčané čítanie
Typy automatizačných rámcov: (platí pre rámec QTP)
- Lineárne - Najjednoduchšia forma vytvorenia testu. Stačí napísať jeden program bez modularity v postupných krokoch
- Na základe kľúčových slov - Vytvorte rôzne kľúčové slová pre inú množinu operácií a v hlavnom skripte sa na tieto kľúčové slová môžeme jednoducho odvolať.
- Na základe údajov - Ak chcete spustiť rovnakú množinu operácií s viacerými množinami údajov, ktoré sa uchovávajú v samostatných súboroch, väčšinou hárky programu Excel.
- Hybrid - Kombinovaný rámec, ktorý môže byť čiastočne riadený údajmi a čiastočne kľúčovými slovami
- BPT - To znamená, že programy sú rozdelené na obchodné komponenty a používajú sa s jedným alebo druhým z vyššie uvedených typov rámcov
Lineárny rámec
Ako už bolo uvedené, tento prístup zahŕňa jednoduché napísanie kódu, ktorý zaznamenávame a pokračujeme.
Napríklad, ak je operáciou, ktorú musíte overiť, vytvorenie nového účtu v Gmaile, budú nasledujúce kroky:
- Otvorte gmail.com
- Kliknite na „Vytvoriť účet“
- Zadajte podrobnosti
- Overte podrobnosti
- Vytvorte si účet
'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
Vyššie uvedené je príklad toho, ako vyzerá program využívajúci lineárnu metódu. V tejto chvíli je zrejmé, aké sú výhody a nevýhody tejto metódy.
Výhody:
- Jednoduchosť. Pre začínajúcich programátorov je táto metóda trefná
- Čas - vytvorenie testu netrvá veľa času
- Vyžaduje sa veľmi málo plánovania
Nevýhody:
- Vôbec žiadna opätovná použiteľnosť
- Ak existuje iný skript, ktorý overuje určitý aspekt stránky „Účty Google“, budete musieť prepísať kód, aby sa spustila aj stránka gmail.com. Takže veľa opakovaní.
- Všetky údaje sú priamo vložené do kódu. Hardcoding neumožňuje použiť kód pre akýkoľvek iný súbor údajov.
- Chybné a údržba je náročná
Aj keď nevýhody prevažujú nad kladmi, túto metódu je možné použiť, ak je vaším cieľom prísne splnenie úlohy bez overenia.
Komponenty testovacích aktív v tomto druhu rámcov sú:
- Skúšobný scenár
- Úložisko objektov (Tomu sa dá zabrániť pomocou deskriptívneho programovania, ak je to potrebné)
Rámec riadený kľúčovým slovom
Ako môžeme vylepšiť vyššie uvedený test lineárneho rámca? Ako môžeme prekonať mínusy?
ako vytvoriť nový zoznam v
Je zrejmé, že potrebujeme opätovnú použiteľnosť, modularitu a čitateľnosť. Pokus o začlenenie týchto funkcií a dosiahnutie optimálneho riešenia nie je ničím iným ako pokusom o vytvorenie nového a vylepšeného rámca.
Čo sú to opakovane použiteľné komponenty?
- Spustenie služby Gmail a prechod na stránku „Účty Google“. Toto je samozrejmosť, pretože overenie tejto stránky znamená, že sa musíte najskôr dostať sem. „Účet Google GoTo“ - je možné vytvoriť samostatnú funkciu, na ktorú je možné opakovane volať.
- Zadajte podrobnosti a potvrďte ich - Môžete ich ďalej rozdeliť na kladné a záporné bloky, aby ste zabezpečili vyššiu úroveň modularity
- Vytvorenie účtu - konečná úroveň overenia a splnenia danej úlohy
Po príchode ste nielen identifikovali komponenty, ktoré je možné opakovane volať, ale tiež ste rozdelili lineárny program na moduly.
Funkcie:
Doteraz sme sa v našej sérii nezaoberali funkciami. Funkcie nie sú nič iné ako kód, ktorý vykonáva určité operácie. Prijíma vstupné parametre z programu, ktorý ich volá, a vracia im hodnotu.
Všeobecne platí, že všetky opakovane použiteľné časti kódu sú zoskupené do súboru, ktorý obsahuje všetky opakovane použiteľné funkcie. Tento súbor je priradený k prostriedku na váš test QTP. Knižnicou funkcií môže byť zvyčajne súbor typu: .vbs, .txt alebo .qfl
Späť k nášmu príkladu- Takto môže byť súbor knižnice funkcií:
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
Váš skutočný skript bude teraz:
'Open GMail gotoGoogleAccount() ‘Enter the details EnterDetails() ‘Submit SubmitToCreate()
Z vyššie uvedeného programu je teraz zrejmé, že sme dosiahli čitateľnosť, modularitu a ak bude chcieť iný program použiť funkciu prihlásenia, môžeme ju určite znova použiť. Všetko, čo musíte urobiť, je priradiť knižnicu funkcií aj k tomuto novému testu a môžete ísť.
Môžete tiež vidieť, že vo vašom skripte fungujú názvy funkcií, akoby fungovali VBScript kľúčové slová, a teda aj názov tohto rámca.
Komponenty testovacích aktív v tomto druhu rámcov sú:
aký je dobrý bezplatný firewall pre Windows 7 64-bit?
- Testovacie skripty
- Zdieľané ALEBO
- Zdieľaná knižnica funkcií
Čo iné by potom urobilo tento program ešte lepším? Ak by sme dokázali, aby funkcia EnterDetails () brala rôzne sady údajov a vytvárala rôzne účty, neobmedzila by sa iba na údaje, ktoré sme pevne zakódovali do programu. To je presne ďalší krok. Údaje, ktoré riadia vaše testy, a prístup, ktorým sa to zaoberáme, je rámec založený na údajoch.
Budeme diskutovať Hybridné rámce založené na dátach podrobne v nasledujúcom návode.
=> Navštívte sem sériu školení QTP
Ak máte akékoľvek problémy súvisiace s rámcom QTP, ktorým čelíte a ktoré nie sú uvedené v týchto článkoch, dajte nám vedieť. Určite sa pokúsime odpovedať na vaše otázky.
Odporúčané čítanie
- Najobľúbenejšie rámce automatizácie testov s výhodami a nevýhodami každého z nich - selén, návod č. 20
- Automatizácia testov - je to špecializovaná kariéra? Môžu normálni testeri robiť aj automatizáciu?
- Prečo potrebujeme rámec pre automatizáciu testov?
- Výukový program QTP # 18 - Dáta riadené a hybridné rámce vysvetlené na príkladoch QTP
- Ako sa líši plánovanie testov pre ručné a automatizované projekty?
- Ako funguje testovanie na základe dát (príklady QTP a selénu)
- Ako zvoliť najlepší nástroj na testovanie automatizácie (kompletný sprievodca)
- Rámec riadený dátami v selenovom WebDriveri pomocou POI Apache