Hogyan használjuk a Tranzakciókat a QTP/UFT

⚡ Okos összefoglaló

Tranzakciók be UFT Az egyik mérési módszer a teszt egy kiválasztott szakaszának futtatásához szükséges idő, a wrap (csomagolás) segítségével.ping azok a lépések egy start utasítás és egy end utasítás között, amelyek a futási eredményekben az időtartamot jelentik.

  • 🔘 Cél: Egy tranzakció egyetlen üzleti folyamatot időzít, például egy repülőjegy-foglalást, a teljes tesztidőszak helyett.
  • ☑️ Beillesztés: A Beszúrás menü a kiválasztott lépések köré ad hozzá a Tranzakció indítása és a Tranzakció befejezése utasításokat.
  • mondatok: A Services.StartTransaction és a Services.EndTransaction ugyanazt a feladatot végzi közvetlenül a Szerkesztőben.
  • 🧪 Eredmények: A záró utasítás a nevet, az állapotot, a teljes időtartamot és az elvesztegetett időt közli.
  • 🇧🇷 Fészkelődés: A tranzakciók beágyazhatók, de két nyitott tranzakciónak soha nem lehet ugyanaz a neve.
  • ⚠️ Integráció: A LoadRunner és a Business Process Monitor csak olvasható adatokat rögzít egy tranzakción belül.

Hogyan használjuk a Tranzakciókat a QTP UFT

In UFT egy/QTPA teszt egy részének futtatásához szükséges időt tranzakciók definiálásával mérheted. A teszten belüli tranzakciókat úgy definiálhatod, hogy a teszt megfelelő részeit kezdő és záró tranzakciós utasításokkal zárod le.

A tranzakciók a szkript bármely pontjára beilleszthetők, és nincs korlátozás a teszthez hozzáadható tranzakciók számára vonatkozóan.

⚠️ Termék elnevezése: a HP QuickTest Professional néven szállított eszköz (QTP), HP, majd Micro Focus Unified Functional Testing néven vált ismertté, és ma a következő forgalmazza: OpenText, amelynek jelenlegi súgóoldalai ezt a nevet adják. OpenText Funkcionális tesztelés. A tranzakciók mindegyik kiadásban ugyanúgy működnek.

Hogyan illeszthetünk be tranzakciókat QTP?

Tranzakciót is beszúrhat a tranzakcióba

A következő videó végigvezeti a Tranzakció beillesztésének lépésein UFT Egy.

Kattints itt ha a videó nem érhető el

Például érdemes feljegyezni a szükséges időt járat foglalása.

  1. In QTP, válassza ki a megfelelő államot, ahol el szeretné kezdeni a tranzakciót.
  2. Válassza a Tranzakció beszúrása lehetőséget. Indítsa el a Tranzakciós párbeszédpanelt Box nyit
  3. Adjon megfelelő nevet a tranzakciónak, mondjon „Foglalási idő”
  4. A teszthez hozzáadódik a tranzakció kezdeti nyilatkozata
  5. Válassza ki azt az állapotot, ahol le kívánja fejezni a tranzakciót
  6. Kattintson a Beszúrás > Tranzakció befejezése elemre
  7. Tranzakció befejezése párbeszédpanel Box Megnyílik az összes elérhető tranzakció listájával
  8. Kattintson az OK gombra. A tranzakció befejező nyilatkozata hozzáadásra kerül
  9. Futtassuk a tesztet
  10. Az eredményekben a tranzakció végkimutatása megadja a rendelés beszúrásához szükséges időt

Jegyzet: ugyanazok a párbeszédablakok érhetők el a Kulcsszó nézet, és a Lépés Generator beszúrja az azonos utasításokat a Beszúrás menü megnyitása nélkül.

Tranzakciókimutatások a szerkesztőben

A fenti párbeszédablakok két írásjelet írnak vbscript sorokat a tesztbe. Typing Gyorsabb, ha a minta ismerős, és ez az egyetlen lehetőség, ha a lépéseket kód generálja.

Services.StartTransaction "Booking Time"

' the steps that book the flight go here

Services.EndTransaction "Booking Time"

Mindkét metódus a Services objektumhoz tartozik. A start utasítás egy argumentumot fogad el, az end utasítás pedig egy másodikat, ami opcionális.

nyilatkozat érvek Mit csinál
Services.Transaction indítása Név Az időmérés a futás azon pontján kezdődik.
Services.EndTransaction Név, [Státusz] Leállítja a mérést és rögzíti az eredményt

Az opcionális állapot határozza meg, hogyan osztályozzuk a tranzakciót. Kihagyása ugyanaz, mint a továbblépés. kocsi.

  • kocsi — sikeres, kivéve, ha hiba történt a két utasítás között. Ez az alapértelmezett érték.
  • Átmegy — mindig „Megfelelt” státusszal végződik.
  • Megbukik — mindig Sikertelen állapottal végződik.
Services.StartTransaction "Booking Time"
Wait 1
Services.EndTransaction "Booking Time", Pass

Tranzakcióeredmények olvasása

A teszt befejezése után a futtatási eredményekben a Tranzakció vége lépés négy értéket tartalmaz, amelyek magyarázzák a mérést.

Eredménymező Jelentés
Tranzakció neve A start utasításban megadott név
Befejezési állapot Sikeres vagy sikertelen, a státusz argumentum vagy az automatikus döntés alapján
Teljes időtartam A kezdő és a befejező utasítások között eltelt idő
Elvesztegetett idő Az időtartamon belüli idő UFT Az egyik maga is hozzátette

Az elvesztegetett idő azért számít, mert az eszköz háttérfolyamatokat futtat, miközben a tranzakció nyitva van.tracA teljes időtartamból kiindulva becsülhetjük meg, hogy mennyi időt vett volna igénybe önmagában az alkalmazás, és ezt a számot érdemes összehasonlítani a buildek között.

Az egyfelhasználós időtartam egy funkcionális referenciaérték, nem pedig terhelési érték. A párhuzamosságot egy Teljesítményfelmérés eszköz, és egy tranzakció, ami egy felhasználó számára rendben van, száz alatt is összeomolhat.

Beágyazott és elosztott tranzakciók

A forráslépés-lista megjegyzi, hogy egy tranzakció egy másikban is elférhet, így izolálható egy lassú allépés anélkül, hogy a teljes folyamat időzítése elvesszen. A külső tranzakció fut, miközben a belső megnyílik és bezárul.

Két szabály biztosítja a fészekrakás biztonságát.

  • Minden névhez kell egy megfelelő pár, és a start utasításnak a end utasítás előtt kell szerepelnie.
  • Egyszerre csak egy tranzakció lehet megnyitva egy adott névvel. Egy második, azonos nevű tranzakció megnyitása az elsőt sikertelen státuszba helyezi.

Egy elosztott tranzakció ennél is továbbmegy, és két tesztet ölel fel: Szolgáltatások.Elosztott tranzakció indítása az első tesztben kinyitja, és Szolgáltatások.Elosztott tranzakció vége a másodikban zárja le, amelyet egy egyedi azonosító, nem pedig név párosít. Létezik a Business Process Monitor és a LoadRunner olyan forgatókönyvek, amelyek csak a tranzakción belül rögzített adatokat olvassák be, és mindent figyelmen kívül hagynak, ami azon kívül esik.

Amikor egy tranzakción belüli lépés jogosan hiúsulhat meg, párosítsa a tranzakciót egy helyreállítási forgatókönyv így a futás a stop helyett az end utasításhoz érping félúton.

GYIK

Egy tranzakció egy elnevezett eredményt és egy állapotot jelent a futási eredményekben és a LoadRunnerben. MercuryAz időzítő csak a szkripten belül eltelt milliszekundumokat méri, amelyeket aztán te magad jelentesz vagy konvertálsz.

A független művelet időzítése egy MercuryTimer értékét, majd adja át az értéket a Services.AddWastedTime függvénynek. Az elvesztegetett idő minden nyitott tranzakcióból levonásra kerül, így a jelentett időtartam csak a tesztelt folyamatot tükrözi.

Az end utasítás előtti hiba alapértelmezés szerint leállítja a futást. A Tesztbeállítások Futtatás paneljén állítsa be a hibabeállítást a következő lépésre való ugráshoz, hogy a end utasítás továbbra is elérésre kerüljön, és a tranzakció rögzítésre kerüljön.

A LoadRunner vezérlőben, a Futtatási eredmények ablak helyett. Csak a tranzakcióban foglalt lépések kerülnek elküldésre, így a kezdő és befejező párokon kívüli lépések soha nem kerülnek be a teljesítményjelentésbe.

Igen. A Services.SetTransaction függvény egy nevet, egy időtartamot másodpercben és egy állapotot fogad el, ami lehetővé teszi, hogy a szkript egy általa kiszámított mérést naplózzon az eszköz által mért helyett.

A gépi tanulási modellek minden egyes elnevezett tranzakciót alapállapotba állítanak a buildek között, és riasztást generálnak, amikor egy időtartam túllépi a normál tartományát, olyan lassú regressziót észlelve, amelyet egy sikeres vagy sikertelen állapot önmagában elrejtene.

Igen. GitHub másodpilóta egy megjegyzésből kiegészíti a Services.StartTransaction és a Services.EndTransaction párt, bár a tranzakció nevét és az állapotkonstansot továbbra is ellenőrizni kell a használt elnevezési konvencióval szemben.

Nincs technikai korlát, de üzleti folyamatonként egy tranzakció biztosítja a jelentés olvashatóságát. Több tucat apró tranzakció eltemeti a fontos számot a mérési zaj alatt.

Foglald össze ezt a bejegyzést a következőképpen: