Mi az összefüggés?
A korreláció, amint a neve is mutatja, két változó vagy entitás közötti kapcsolat meghatározásának mechanizmusa. A szótár „két vagy több változó közötti statisztikai összefüggésként határozza meg, hogy a többi szisztematikus változása egy változó értékének szisztematikus változását kísérje”.
Ebben az oktatóanyagban megismerjük
- Miért van szükségünk korrelációra?
- Automatikus korreláció
- Kézi összefüggés
- A Web_reg_save_param függvény megértése
Miért van szükségünk korrelációra?
Értsük meg a következő forgatókönyvvel való együttmûködést.
Fontolja meg, hogy egy szkriptet a LoadRunner használatával rögzít.
Kliens-szerver kommunikáció
- A Felvétel során az ügyfél kérést küld a szervernek egy munkamenet indítására
- A kiszolgáló megkapja a kérést és új ABC munkamenet-azonosítót rendel hozzá
- Az ügyfél az ABC munkamenet-azonosítót tárolja a szkriptben.
- Az ügyfél az ABC azonosítóval indítja a munkamenetet, és kérést küld a szervernek a felvétel engedélyezésére
- A szerver felismeri az ABC azonosítót, és lehetővé teszi az ügyfél számára a szkript rögzítését
- Most tanulmányozzuk az ügyfél-szerver kommunikációt a visszajátszás során
- A visszajátszás során az ügyfél kérést küld a kiszolgálónak egy munkamenet indítására
- A szerver megkapja a kérést és új munkamenet-azonosítót rendel hozzá XYZ
- Az Ügyfél a munkamenetet korábban rögzített ABC munkamenet-azonosítóval indítja, és kérést küld a szervernek a rögzítés engedélyezéséhez
- A kiszolgáló nem tudja azonosítani az ABC azonosítót, mivel arra számított, hogy az XYZ azonosítót kiosztotta, és a munkamenet sikertelen.
Szükségünk van egy megoldásra, amely rögzíti a futás közben küldött dinamikus érték elemzését és visszaadja ezt az értéket a szervernek. Így fog kinézni az ügyfél-szerver kommunikáció ezzel a megoldással
- A visszajátszás során az ügyfél kérést küld a kiszolgálónak egy munkamenet indítására
- A szerver megkapja a kérést, és új munkamenet-azonosítót rendel hozzá ZZZ
- Egy ügyfél elemzi ezt az új munkamenet-azonosítót, a ZZZ-t a kérésből.
- Az Ügyfél kérést küld a munkamenet megkezdéséhez a ZZZ azonosítóval
- A kiszolgáló felismeri a ZZZ azonosítót, és lehetővé teszi az ügyfél számára a szkript lejátszását
Ez nem más, mint összefüggés .
Kattintson ide, ha a videó nem érhető el
VUGen esetén a korreláció kötelező kapcsolat a válasz és az előző kérések között.
Különböző helyzetek fordulnak elő, amikor a kérés a kiszolgálótól korábban kapott válaszon alapul, például munkamenet-azonosító, kiszolgáló dátuma / ideje. Ezek az értékek minden egyes alkalmazás futtatásakor vagy parancsfájl rögzítésekor különböznek. Nyilvánvaló, hogy ha a szkript végrehajtása a kiszolgáló által visszaadott értéktől függ, akkor azt kell találni, hogy meg kell találni egy olyan mechanizmust, ahol „elkaphatja” a szerver válaszát, és csatolhatja azokat a kéréseket, amelyekre a szerver számít. Ezt általában a LoadRunnerben korrelációnak hívják.
Egyszerű szavakkal, a korreláció használatával a megoldás a következő:
- Ragadja meg a kimeneti értéket egy lépésből
- Használja a fent rögzített értéket az összes következő lépés bemeneteként
A korrelációt 2 kategóriába sorolják a VUGen / LoadRunner alkalmazásban:
- Automatikus korreláció
- Kézi összefüggés
Automatikus korreláció
A LoadRunner mechanizmust biztosít a korreláció automatikus végrehajtására.
A VUGen megköveteli, hogy legalább kétszer futtasson egy rögzített parancsfájlt, hogy az összehasonlítsa a kiszolgáló válaszának változó értékeit.
Az automatikus korreláció 3 kategóriába sorolható:
- A korreláció automatikus felismerése
- Szabályalapú összefüggés
- Minden állítás korrelálása
Szabály neve | Mikor kell használni |
Korreláció automatikus felismerése | Dinamikus adatok észlelése és korrelálása a HP LoadRunner által támogatott alkalmazáskiszolgálókon |
Szabályalapú | Olyan nem támogatott alkalmazáskiszolgálóval dolgozik, amelynek ismert a kontextusa. |
Korreláljon mindent | Segít az összes dinamikus adat vak módon történő összehasonlításában. |
Bár az automatikus korreláció egyszerűbbnek tűnik, hibára hajlamos lehet, és az esetek legfeljebb 5% -ában működik. Mindig tanácsos kézi korrelációt használni.
Az automatikus korreláció konfigurálásához a felvételkor hajtsa végre az alábbi konfigurációt a Rekordidő beállítása részben a szkript rögzítése után.
Kattintson a Felvétel => Felvételi beállítások elemre (vagy kattintson a Ctrl + F7 gombra),
>
Az alábbi ablak megnyílik:
Kattintson a Korreláció => Konfiguráció elemre - megnyílik az alábbi ablak.
Itt ellenőriznie kell az összes alkalmazást (ASPNET) stb., Amelyet a tantárgyi alkalmazásban használ. A jobb oldalon láthatja azokat a szabályokat, amelyek felismerik a korreláció lehetséges jelöltjeit, pl. _VIEWSTATE. Az Új szabály gombra kattintva további alkalmazásokat vagy egyéni szabályokat is hozzáadhat.
A SZABÁLYOK gombra is kattinthat, az alábbiak szerint fog látni:
Az automatikus korreláció működéséhez meg kell győződnie arról, hogy a Szabályok ellenőrzése be van jelölve bejelöltként. Ha rákattint a megtalált automatikusan korreláló értékekre, a VUGen nem kéri Önt a választással, ha megtalál egy korrelációs jelöltet, ehelyett csak korrelálja őket.
A későbbiekben megértjük a korrelációhoz használt API-t. Célszerű azonban a HTML-összehasonlítást használni a szöveges összehasonlítás helyett.
Miután kiválasztott bármilyen szabályt, kattintson az OK gombra az ablakok bezárásához.
Kattintson a menüből, és a VUGen új konfigurációval regenerálja a szkriptet (rögzítés nélkül). A VUGen automatikusan hozzáad egy szükséges kóddarabot a korreláció kezeléséhez. A mintát részletesebben a Kézi korreláció c.
Felhívjuk figyelmét, hogy ha manuálisan végez korrelációt, vagy automatikus korrelációt használ, a kódrész pontosan ugyanazt a szintaxist és funkciót fogja tartalmazni.
A szkript automatikus korrelálásának lépései:
- Rögzítsen egy szkriptet
- Replay script
- Határozza meg a korrelálandó értékeket
- Válassza ki az értékeket, és kattintson az automatikus korrelálás gombra
- Újra futtatva ellenőrizze a szkriptet. A sikeres futás sikeres korrelációt jelent.
Tipp:
- A korreláció segít a szkript futtatásában különböző értékekkel
- A korreláció csökkenti a szkript méretét is
Kézi korreláció
A kézi összefüggés arról szól, hogy kódot írjon közvetlenül a szkriptbe, hogy megfeleljen az állandóan változó értékeknek. Az alábbi lépésekre oszthatjuk fel:
- Határozza meg a rögzítendő értéket
- Keresse meg a rögzítendő érték jobb és bal oldali szöveghatárát (WEB)
- Keresse meg, hogy a szöveghatárok mely előfordulását kell használni
- Adjon hozzá egy web_reg_save_param függvényt a szkripthez, azon kódrész fölé, amely kéri az értéket tartalmazó oldalt elfogni
- Adjon hozzá egy paraméter nevet, bal oldali határt, jobb oldali határt és előfordulást a függvényhez
- Paraméterezze a parancsfájl dinamikus értékét, minden előfordulásakor
- Ellenőrizze a helyes végrehajtást
web_reg_save_param ("OracleAppJSESSIONID3","LB / IC = JSESSIONID =","RB / IC =;","Ord = l","Keresés = fejlécek","RelFrameId = l",UTOLSÓ);web_reg_save_param ("Siebel_Analytic_ViewState2","LB / IC = ViewState \" value = \ "","RB / IC = \" ","Rend = 1","Keresés = törzs","RelFrameId = l",UTOLSÓ);
A kézi korrelációt a VUser Comparison végezheti el. A VUser összehasonlítási korrelációs módszerének lépései az alábbiak szerint oszthatók fel:
- Határozza meg a dinamikus értékeket, amelyeket korrelálni kell
- A dinamikus értéket tartalmazó kiszolgáló válasz keresése
- Rögzítse a dinamikus értéket egy paraméterben
- Cserélje ki a Dinamikus érték minden előfordulását a paraméterre
- Ellenőrizze a változásokat
A Web_reg_save_param függvény megértése
A VUGen több funkciót vagy API-t biztosít a jelöltek korrelációjához, többek között:
- web_reg_save_param
- web_reg_save_param_ex
- web_reg_save_param_regexp
- web_reg_save_param_xpath
Míg itt rövid bemutatást nyújtunk, a funkciók és azok paramétereinek részletes megértéséhez nyissa meg a VUGen-t, az írási funkciót (vagy használja a Steps Toolbox-ot), mozgasson egy kurzort a függvényen, és kattintson az F1-re - ismerkedjen meg a VUGen súgójával, és szokás. Sokat kell majd foglalkoznia vele, amikor az iparban dolgozik.
Itt folytatjuk a funkció részleteit:
web_reg_save_param (Paraméter neve, bal oldali, jobb oldali határ)
Attribútumok listája
Konvertálás: A lehetséges értékek:
HTML_TO_URL : HTML kódolású adatok konvertálása URL kódolású adatformátumra
HTML_TO_TEXT : HTML kódolású adatok konvertálása egyszerű szöveges formátumra; ez az attribútum nem kötelező.
Átirányítások figyelmen kívül hagyása : Ha az "Átirányítások figyelmen kívül hagyása = Igen" meg van adva, és a kiszolgáló válasza átirányítási információ (HTTP-állapotkód 300-303, 307), akkor a válasz nem kerül keresésre. Ehelyett, miután egy átirányítási választ kapott, a GET kérést az átirányított helyre küldik, és a keresést az adott helyről érkező válaszra hajtják végre.
Ez az attribútum nem kötelező. Az alapértelmezés az "Átirányítások figyelmen kívül hagyása = Nem".
LB: A paraméter vagy a dinamikus adatok bal oldali határa. Ha nem ad meg LB értéket, akkor az az adatok elejétől kezdődő összes karaktert határként használja. A határparaméterek megkülönböztetik a kis- és nagybetűket. A keresési szöveg további testreszabásához használjon egy vagy több szövegjelzőt. Ez az attribútum kötelező. Lásd a Határérvek szakaszt.
NOTFOUND : A kezelési opció, ha egy határ nem található, és egy üres karakterlánc jön létre.
A "Not found = error", az alapértelmezett érték hibát okoz, ha egy határ nem található.
"Nem található = figyelmeztetés" ("A korábbi verziókban nem található = üres"), nem ad ki hibát. Ha a határ nem található, akkor a paraméterek számát 0-ra állítja, és folytatja a parancsfájl végrehajtását. A "figyelmeztetés" opció ideális, ha meg akarja nézni, hogy a karakterlánc megtalálható-e, de nem szeretné, ha a parancsfájl meghibásodna.
Megjegyzés : Ha a Folytatás a hibán engedélyezve van a szkriptnél, akkor is, ha a NOTFOUND értéke "hiba", a szkript akkor is folytatódik, ha a határ nem található, de hibaüzenetet ír a kiterjesztett naplófájlba.
Ez az attribútum is választható.
ORD : A mérkőzés sorszámát vagy példányát jelzi. Az alapértelmezett példány az 1. Ha az "Összes" értéket adja meg, akkor a paraméterértékeket egy tömbbe menti. Ez az attribútum nem kötelező.
Megjegyzés: A példány használata az ORD helyett támogatott a visszamenőleges kompatibilitás érdekében, de elavult.
RB: A paraméter vagy a dinamikus adatok jobb határa. Ha nem ad meg RB értéket, akkor az összes karaktert az adatok végéig használja határként. A határparaméterek különbséget tesznek a kis- és nagybetűk között. A keresési szöveg további testreszabásához használjon egy vagy több szövegjelzőt. Ez az attribútum kötelező. Lásd a Határérvek részt.
RelFrameID : A HTML-oldal hierarchiaszintje a kért URL-hez képest. A lehetséges értékek: ALL vagy egy szám. Kattintson a RelFrameID Attribute elemre a részletes leírásért. Ez az attribútum nem kötelező.
Megjegyzés: A RelFrameID nem támogatott a GUI szintű parancsfájlokban.
SaveLen : A megtalált érték egy alhúrjának hossza a megadott eltolástól a paraméterbe mentésre. Ez az attribútum nem kötelező. Az alapértelmezett érték -1, ami azt jelzi, hogy a karakterlánc végére ment.
SaveOffset : A megtalált érték egy alsztringjének eltolása, a paraméterbe mentéshez. Az eltolás értékének nem negatívnak kell lennie. Az alapértelmezett érték 0. Ez az attribútum nem kötelező.
Keresés: A behatárolt adatok keresésének hatóköre. A lehetséges értékek: Fejlécek (csak a fejlécek keresése), Törzs (csak törzsadatok keresése, nem fejlécek), Nincs erõforrás (csak a HTML törzsben kereshet, az összes fejléc és erõforrás kivételével), vagy MINDEN (Keresõ törzs, fejlécek és erõforrások) . Az alapértelmezett érték MINDEN. Ez az attribútum nem kötelező, de általában előnyben részesített.