Hogyan használjuk a függvényeket QTP/UFT 3 egyszerű lépésben
⚡ Okos összefoglaló
Funkciók be QTP/UFT lehetővé teszik a tesztelők számára, hogy újrafelhasználható VBScript logikát csomagoljanak a könyvtárfájlokba, amelyeket bármely teszt meghívhat, ezáltal csökkentve az ismétlődéseket, megkönnyítve a karbantartást és felgyorsítva az automatizálás fejlesztését a teljes folyamatban. UFT és a QTP projekteket.

Ha vannak olyan kódrészleteid, amelyeket többször is fel kell használnod a tesztekben, érdemes lehet felhasználó által definiált függvényt létrehoznod. Felhasználó által definiált függvények használatával a tesztek rövidebbek, és könnyebben megtervezhetők, olvashatók és karbantarthatók.
Saját függvénykönyvtárak a Micro Focusban UFT tartalmazhat vbscript funkciók, szubrutinok, modulok stb.
Csupán 3 egyszerű lépést kell követned ahhoz, hogy egy függvénykönyvtárból használhass egy tesztet.
Egy függvénykönyvtár különbözik egytől akció in UFTEgy függvénynek nincs saját objektumtárháza vagy adatlapja, mégis bármilyen művelet vagy teszt meghívhatja, miután a függvénykönyvtár társítva lett.
Ugyanazon lépések másolása-beillesztése minden műveletbe megsokszorozza a karbantartási munkát, mivel egyetlen módosítást kell megismételni minden másolatban. Egy függvénykönyvtár ezt úgy oldja meg, hogy ezt a logikát egy helyre központosítja, amelyet a projekt bármely művelete vagy tesztje meghívhat.
3 egyszerű lépés egy függvénykönyvtár használatához UFT/QTP
Step 1) Hozz létre egy új függvénykönyvtárat a UFT or QTP a Fájl > Új > Függvénykönyvtár kiválasztásával. Új lapon nyílik meg a QTP.
Hozzunk létre egy nagyon egyszerű függvényt, amely egy üzenetdobozt jelenít meg.
Function Demo MsgBox "This is a Test Function" End Function
A függvény meghívásakor egy üzenetablak jelenik meg. Egyetlen fájl több függvényt is tartalmazhat, ezért mentsd el a fájlt egyszer, és használd fel újra több tesztben is. UFT elment egy függvénykönyvtárat egy .qfl alapértelmezés szerint kiterjesztés, bár egy egyszerű .vbs A fájl is működik, ahogy a következő szakasz is kifejti.
Step 2) Társítsa a könyvtárat a teszthez. Nyissa meg a Fájl > Beállítások > Erőforrások > Függvénykönyvtár társítása menüpontot, majd kattintson hozzáad, jelölje ki a függvénykönyvtár fájlját, és kattintson a OK.
Step 3) Az utolsó lépés a tesztszkriptben található függvény meghívása. Miután egy könyvtár hozzá van rendelve, a függvény meghívása olyan egyszerű, mint a typing a nevét, és átadja a szükséges argumentumokat, az alábbiak szerint.
' Call the function from the associated library
Demo()
UFT elhelyezi Demó a társított könyvtárban, és pontosan úgy futtatja, mintha lokálisan, a teszten belül íródott volna.
Fontos tudnivalók
- COM és DCOM objektumok használatával nagyon fejlett függvényeket hozhat létre.
- Valójában a számos funkció, amit a QTP VBScript segítségével kódolható
- Láttunk olyan automatizálási mérnököket, akik inkább VB-projektet csinálnak, nem pedig automatizálási projektet
- Javasoljuk, hogy a 100%-os automatizálásra koncentráljon ahelyett, hogy VB-készségeit fitogtatná
Kattints itt ha a videó nem érhető el
Függvénykönyvtár fájltípusai: .qfl vs. .vbs
UFT nem kényszerít egyetlen fájlformátum használatára a függvénykönyvtárak esetében. A Függvénykönyvtár-szerkesztő az új fájlokat egy .qfl alapértelmezés szerint kiterjesztés, és UFT sima szöveget is elfogad .vbs bármilyen kódszerkesztőben létrehozott fájl, mert egy QTP/UFT A függvénykönyvtár nem más, mint egy lemezen tárolt hagyományos VBScript; a két formátum futási időben azonosan viselkedik.
| VONATKOZÁS | .QFL FÁJL | .VBS FÁJL |
|---|---|---|
| Létrehozott | UFT Függvénykönyvtár-szerkesztő | Bármely szöveg- vagy kódszerkesztő |
| Kívül nyílik UFT | Nem | Igen, sima szövegként |
| Verziókövetés-barát | Korlátozott | Jobb, mivel a különbségek olvashatók |
| Asszociációs módszer | Ugyanaz mindkettőnél | Ugyanaz mindkettőnél |
A választás inkább a csapatmunkafolyamatra, mint a funkcionalitásra korlátozódik. Egyszeri, gyorsan felépített könyvtár belül UFT jól működik, mint .qfl, míg a Gitben, SVN-ben vagy más verziókövető rendszerben karbantartott könyvtárakat általában a következőképpen tároljuk: .vbs fájlokat, mivel a sima szöveg sokkal olvashatóbb különbségeket eredményez a kód áttekintése során. Mindkét formátum támogatja a teljes VBScript funkciókészletet, beleértve az osztályokat, a hibakezelést és a COM objektumok létrehozását, és mindkettő pontosan ugyanúgy kapcsolódik egy teszthez, ahogy a következő szakasz ismerteti.
A fájlkiterjesztés átnevezése nem változtatja meg a tartalmát, tehát egy meglévő fájl konvertálása .qfl fájlt .vbs, vagy fordítva, csak egy fájlátnevezést jelent, majd az átnevezett fájl újbóli társítását a teszthez.
Módszerek függvénykönyvtár társítására teszttel
A fenti 2. lépés az Erőforrások párbeszédpanelt használja, de UFT valójában számos módot kínál egy függvénykönyvtár teszthez való társítására, és a megfelelő kiválasztása attól függ, hogy a társításnak állandónak kell-e lennie, vagy csak egyetlen futtatásra kell vonatkoznia. Egy teszthez egyszerre több függvénykönyvtár is tartozhat, és UFT betölti őket az Erőforrások listában megjelenő sorrendben.
- Függvénykönyvtár társítása párbeszédpanel (GUI): Nyissa meg a Fájl > Beállítások > Erőforrások > Függvénytár társítása menüpontot, kattintson a Hozzáadás gombra, és jelölje ki a fájlt. UFT ezt az asszociációt magában a tesztben tárolja, így a függvénykönyvtár minden alkalommal automatikusan betöltődik, amikor a teszt megnyílik. Ez a fenti 2. lépésben bemutatott módszer, és jól működik alapértelmezett választásként minden olyan függvénykönyvtárhoz, amelyre egy projekt minden tesztjének szüksége van.
- LoadFunctionLibrary utasítás: Hívja meg a LoadFunctionLibrary „path” függvényt egy szkripten belülről, hogy futásidőben csatoljon egy könyvtárat az Erőforrások párbeszédablak megérintése nélkül. UFT a függvénykönyvtárat pontosan úgy kezeli, mint egy párbeszéd alapú asszociációt a futás fennmaradó részében, ami akkor kényelmes, ha a függvénykönyvtár elérési útját dinamikusan határozzák meg.
- ExecuteFile utasítás: Az ExecuteFile „path” parancsfájlt futtat, és elérhetővé teszi a függvényeit az aktuális futtatás számára, de UFT nem regisztrálja a fájlt egy tracked erőforrás, így soha nem jelenik meg a Kapcsolódó függvénykönyvtárak alatt a tesztbeállításokban.
- Automatizálási objektummodell (AOM): Egy külső VBScript fájl elindítható UFT, nyisson meg egy tesztet, és programozottan adjon hozzá egy függvénytárat a Test.Settings.Resources.Libraries mappához. A build vagy telepítési szkriptek gyakran használják ezt a megközelítést ugyanazon függvénytár egyetlen menetben több tucat teszthez való konfigurálására.
' Load a library at run time from inside a script LoadFunctionLibrary "C:\Automation\CommonFunctions.qfl" ' ExecuteFile works the same way, but UFT does not ' track the file as an associated resource ExecuteFile "C:\Automation\CommonFunctions.qfl"
Bármelyik módszert is választja, a GUI és az AOM metódusokhoz tesztenként csak egyszer kell társítani egy függvénytárat, míg a LoadFunctionLibrary és az ExecuteFile metódusoknak minden alkalommal újra kell futniuk, amikor a szkript végrehajtódik, mivel ezek hagyományos VBScript utasítások, nem pedig mentett beállítások.
Ha egy függvénytárra már nincs szükség, akkor távolítsa el az Erőforrások listából ahelyett, hogy hozzárendelve hagyná, mivel egy nem használt függvénytár továbbra is árnyékként szerepelhet egy azonos nevű függvényen, amelyet később egy másik függvénytárhoz ad hozzá.
Írásbeli bevált gyakorlatok UFT/QTP Funkciókönyvtárak
Egy függvénykönyvtár csak akkor kifizetődő, ha az egész csapat megbízik benne és karbantartja. A következő szokások biztosítják a függvénykönyvtár megbízhatóságát a növekedése során.
- Használja az opció explicitjét: Adja hozzá minden könyvtár első soraként, így UFT megjelöl egy elgépelésen alapuló változót ahelyett, hogy csendben létrehozna egy újat.
- Tartsa egyedinek a függvényneveket: Ha két kapcsolódó könyvtár azonos nevű függvényt definiál, UFT az utoljára betöltöttet hívja meg, így az ismétlődő nevek csendes, nehezen azonosítható eredményt adnak.tracés bogarak.
- Értékek visszaadása fix kódolás helyett: Elfogadja a paramétereket és visszaadja az eredményt, ahogy az alábbi példában is látható, így ugyanaz a függvény több tesztet is kiszolgál egy helyett.
- Kerüld az üzeneteketBox éles szkriptekben: Egy üzenetpanel felfüggeszti a végrehajtást, amíg valaki az OK gombra nem kattint. Reporter.ReportEvent ehelyett a sikeres, sikertelen és figyelmeztetési állapotok közvetlenül az eredményfába kerülnek naplózásra megállás nélkül.ping a futás.
- Csoportosítás domain szerint, ne kényelem szerint: A bejelentkezési függvényeket, az adatbázisfüggvényeket és a felhasználói felület segítő függvényeit külön fájlokban kell tárolni, hogy minden teszt csak azt tudja társítani, amire valójában szüksége van.
- Tartsa a könyvtárakat verziókövetés alatt: A függvénykönyvtár fájljait ugyanabban a tárházban tárolja, mint az automatizálási projekt többi részét, így a projekt visszagörgetése a megosztott függvényeket is visszaállítja.
Function AddNumbers(ByVal num1, ByVal num2) AddNumbers = num1 + num2 End Function Dim result result = AddNumbers(10, 20) Reporter.ReportEvent micPass, "Sum Calculation", "The result is " & result
Ezen szokások korai alkalmazása kevésbe kerül, de későbbi, nagyméretű, nem felügyelt könyvtárba való beépítésük sokkal drágább.
