QTP Tutorial # 18-adatvezérelt és hibrid keretek magyarázata QTP példákkal
azon dolgozunk, hogy kitaláljuk, hogyan lehet levezetni egy automatizálási keretet, amely a legjobban működik egy bizonyos tesztelési projekthez, és meghatározza a már létező keretrendszereket is.
az előző QTP framework cikkben használt példa egy új Gmail-fiók létrehozása volt.
először az Új fiók létrehozása forgatókönyvet kódoltuk csak felvétel és lejátszás lineáris módon. Látva, hogy mennyire hiányzott a modularitás, az olvashatóság és az újrafelhasználhatóság, olyan függvényekre bontottuk, amelyekre kulcsszavakként hivatkozunk.
=> kattintson ide a QTP képzési oktatóanyagok sorozat
ezzel a módszerrel elértük a modularitást, az olvashatóságot és az újrafelhasználhatóságot, de még robusztusabbá kellett tennünk a programot, hogy különböző értékkészleteket tudjon venni anélkül, hogy magát a szkriptet kellene módosítanunk.
pontosan ezt fogjuk elérni a tesztek vezetésével.
adatvezérelt automatizálási keretrendszer QTP használatával
több Google felhasználói fiók létrehozása olyan feladat, amelyet megpróbálunk elérni ezzel a keretrendszerrel.
a korábbi példában a keresztnevet, a vezetéknevet, a felhasználói azonosító adatait stb. a kódunkba, miközben megpróbálunk létrehozni egy fiókot. El kell választanunk a kódot az adatoktól, ha el kell érnünk a szkript Adatkezelési szempontját.
az adatoknak olyan forrásból kell származniuk, amely nem maga a program.
az adatbevitel általában bármi lehet:
- MS Excel fájlok
- Adatbázis
- szöveges fájlok
- XML fájlok….stb.
az Excel fájlokat használják leggyakrabban. Az a tény, hogy minden intézkedés QTP jön integrált adatlap saját megmagyarázza, hogy miért van ez így.
egy vagy több adatforrás használható egyetlen szkripthez. A művelethez mellékelt excel lap használható, vagy használhat külső excel lapot is. Alapvetően az adatlap bármilyen releváns külső fájl lehet.
például,
itt van a kód, amelyre szükségünk van az adatmeghajtáshoz:
Browser("Gmail: Email from Google").Page("GoogleAccounts").WebEdit("FirstName").Set "swati"Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("LastName").Set "s"Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("GmailAddress").Set "test"
jelenleg minden adat kódolt. Most nézzük meg, hogyan vehetjük ezeket az értékeket az adatlapból.
menj a szakértői nézetben a nyilatkozatot QTP és kattintson az Érték oszlop egy lépést.
a következő ablak nyílik meg:
válassza ki a paraméter opciót, válassza ki a paraméter nevét (ez lesz az oszlop neve az adatlapon), és válassza ki, hogy a globális vagy a helyi lapot használja-e (a globális lap elérhető a teszt összes műveletéhez, de a helyi lap az aktuális műveletre jellemző).
a képernyőn a “Név” mezőben a QTP alapértelmezett értéket ad meg. A Felhasználónak lehetősége van arra, hogy ugyanaz maradjon, vagy megváltoztassa.
az OK gombra kattintva új oszlop jön létre az Adattáblában.
így néz ki a 3 utónevet, vezetéknevet és fiókazonosítót tartalmazó adatlap:
a paraméterezés után a kód az alábbiak szerint néz ki:
Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("FirstName").Set DataTable("G_First_Name", dtGlobalSheet)Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("LastName").Set DataTable("G_Last_Name", dtGlobalSheet)Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("GmailAddress").Set DataTable("gmail_address", dtGlobalSheet)
ha létre kell hoznunk ezt a 3 felhasználói azonosítót a lap adataival, akkor 3 iterációra van szükségünk. Az iteráció nem más, mint egy próbaüzem.
az adatok beállítása után meg kell utasítanunk a QTP-t, hogy hányszor kell futtatnia ezt a kódot, vagy hány iterációt.
itt van, hogyan csináljuk: menj a fájl -> beállítások és fuss
a fenti képernyőn állítsa be az iterációs tulajdonságokat szükség szerint.
felváltva, akkor utasíthatja QTP az iterációk programozottan. Mint mindig, ez lehetővé teszi a nagyobb ellenőrzést, valamint a programozási készségeket. Tehát valóban a tesztelő kényelmi szintjétől függ, hogy ezeket a módszereket választja-e.
az adatvezérelt keretrendszer összetevői:
- teszt szkript
- adatfájlok
- megosztott funkcionális könyvtár (ha létezik vagy lehet lineáris program).
- Objektumtár (ismét ez az összetevő nem létezik, ha leíró programozást használtak objektumok létrehozásához).
a vizsgálati eredmények minden tesztfutásnál “sikeres” vagy “sikertelen” állapotot mutatnak.
az alapértelmezett adattáblán kívül bármilyen külső excel fájlt használhatunk beviteli lapként.
Hybrid Framework
a fenti példában kulcsszavakat (a felhasználó által létrehozott függvények nevét) használt, és adatvezérelt tesztet hajtott végre annak biztosítására, hogy egyszerre különböző felhasználók jöjjenek létre. Ez nem más, mint egy hibrid keret.
az eddig tárgyalt két vagy több keretrendszer kombinációja hibrid keretrendszer. Tapasztalatom szerint egyetlen keretrendszer sem működik hatékonyan egy adott projektnél. A hibrid keretet használják leggyakrabban.
néhány fontos pont a keretrendszerekről:
- a keretrendszer csak egy olyan megoldás, amely egy adott helyzetben működött a legjobban, de nem szabad úgy értelmezni, mint egy sor szabályt, amelyet határozottan be kell tartani. Inkább iránymutatásként kell tekinteni.
- lehet, hogy sok más keretrendszer is használatban van, csak felsoroltuk és elmagyaráztuk a közöseket.
- nómenklatúra – a különböző emberek különböző nevekkel foglalkoznak kereteikkel. Tehát, ha a nevek kissé eltérnek az egyik alkalmazástól a másikig, akkor ez normális.
- a legtöbb keretrendszer használható egymással együtt, ha egyikük sem tud átfogó megoldást nyújtani a tesztelési célokra.
következtetés
a könnyű megértés érdekében itt valóban egyszerűsítettük a keret fogalmát.
ha bármilyen keretrendszerrel kapcsolatos problémája van, de nem foglalkozik ezekkel a cikkekkel, akkor tudassa velünk. Minden bizonnyal megpróbálunk válaszolni a kérdéseire. Nyugodtan tegye fel kérdéseit.
=> látogasson el ide a QTP képzési oktatóanyagok sorozatához
Utolsó frissítés: November 29, 2021