Egy teszt futtatása során megfigyelheti, hogy a kiszolgáló nem
az elvárt terhelést kapja, illeve hogy az adatbázis nem kerül frissítésre, ahogy az elvárható
lenne. A hiányos vagy helytelen adatösszevetés okozhatja ezeket a problémákat.
Az adatösszevetési problémák azonosítása:
- A Potenciális összevetési hibák nézetben keresheti meg
a hiányos vagy helytelen adatösszevetéseket. További információkért lásd: Adatösszevetési hibák megkeresése.
- Futtasson vagy ütemezzen egyéni tesztet a hibákra, meghiúsulásokra és figyelmeztetésekre vonatkozó Naplózási
szint Mind értékű beállításával.
- A futtatás után nyissa meg a tesztnaplót a Tesztnaplók megjelenítése részben leírtak szerint.
A tesztelőállítás során használt adatösszevetési algoritmusok közismert
követendő eljárásokon alapulnak. Mivel azonban ezek az eljárások folyamatosan
fejlődnek, sokféle hibatípus tapasztalható az automatizált adatösszevetés
során:
- Elégtelen összevetés: Nem összevetettek azok a tesztértékek, melyeknek
annak kellene lenniük. Ennek néhány lehetséges oka:
- Két paraméter, melyeknek összevetetteknek kell lenniük, eltérő névvel rendelkezik.
- Egy értéket egy olyan előző értékkel kell összevetni, amely nem szerepel
az elvárt helyen.
- Egy paramétert vagy értéket egy olyan előző paraméterrel vagy értékkel kell
összevetni, amely nem fordul elő a tesztben, mert kiszámított érték.
- Szükséges mennyiséget meghaladó összevetés: Nem kapcsolódó értékek vannak összevetve.
- Helytelen összevetés: Helytelenül összevetettek azok a tesztértékek, melyeknek
összevettnek kell lenniük.
Elégtelen összevetés: Paraméterek eltérő névvel rendelkeznek vagy nem várt
helyen fordulnak elő
Amikor két paraméternek összevetettnek kell lennie, de
a nevük eltér, akkor az automatizált adatösszevetés nem ismeri fel, hogy a
két paraméter kapcsolódik. Például figyelje meg a következő
kérést: http://www.example.com?id=12345. Tételezzük fel, hogy ez a kérést
a customer_ID=12345 értéket, nem pedig az
ID=12345 értéket tartalmazó kiszolgálóválasszal kell összevetni. Ebben az esetben az ID paramétert
a customer_ID paraméterrel kell összevetni.
Az adatösszevetés
jellemzően olyan válaszértéket kapcsol össze, amely a kiszolgálótól egy soron következő
kérésértékkel lett visszaadva. Az automatizált összevetési algoritmusok
az URL címben és a POST adatokban keresnek potenciális egyezéseket;
azonban lehetséges más séma is a paraméterek visszaadására. Például
tanulmányozza a következő kérést: http://www.example.com?id=12345.
Tételezzük fel, hogy ezt a kérést a
href name="customer_ID"
entity="12345" név-entitás párt, nem pedig az ID=12345 értéket tartalmazó kiszolgálóválasszal kell összevetni.
Ebben az esetben az ID paramétert a
name="customer_ID" paraméterrel, az
12345 értéket pedig az entity="12345" értékkel kell összevetni.
Az elégtelen
összevetés néhány további oka:
- A Siebel csillag tömb formátumot használja. A hagyományos összevetési algoritmusok
sem beolvasni nem tudnak ebből a formátumból, sem helyettesíteni nem tudnak ebben a formátumban.
- A SOAP az összevetési paramétereket külső XML fájlokban jelöli ki.
Az összevetési algoritmusok nem tudják a külső fájlban lévő paramétereket összevetni
a tesztben lévő paraméterekkel.
Ezen esetekben az adatok kézi összevetéséhez:
- A tesztszerkesztőben kereséssel vagy tallózással keresse meg a két összevetni
kívánt paramétert.
- Navigáljon a tesztben később szereplő paraméterhez, majd válassza ki
azt. Ez a helyettesítő hely.
- A Teszt adatforrások ablakban kattintson a Hivatkozások lapra.
- Válassza ki a hivatkozásként használni kívánt adatforrást, majd kattintson a Helyettesítés
forrása lehetőségre.
Elégtelen összevetés: Egy paraméter névtelen
Néha egy paramétert vagy
értéket egy olyan előző paraméterrel vagy értékkel kell összevetni, amely
a tesztben nem rendelkezik névvel, mert kiszámított, például
egy JavaScript program által.
Ebben az esetben az adatok megfelelő összevetése érdekében meg kell értenie,
hogyan és mikor kerül kiszámításra a paraméter vagy érték, majd egyéni kód
blokkot kell használnia. Az egyéni kóddal kapcsolatos további információkért lásd:
Tesztvégrehajtás bővítése
egyéni kóddal.
Például gondolja át a következő
webcímet: http://www.example.com?login_stamp=12345_Apr_11_07, ahol a
login_timestamp értéke a bejelentkezési
azonosító és az aktuális dátum összefűzése. Ebben az esetben olyan egyéni kódot
kell előállítania, amely összefűzi a bejelentkezési azonosítót és a
dátumot.
Másik példaként tételezzük fel, hogy a kiszolgáló a bejelentkezési
azonosítót és dátumot különálló entitásként adta vissza: href "customer_id=12345"
Date="Apr_11_07". Ebben az esetben ezen paramétereket különálló
hivatkozásként kezelheti, és az ügyfélazonosítót és dátumot használó soron következő
kérésekben külön-külön helyettesítheti azokat.
Szükséges mennyiséget meghaladó összevetés
Az automatizált
adatösszevetés a mintaillesztésen alapul: Egy paraméter vagy paraméterérték a soron következő
paraméterrel vagy paraméterértékkel egy megegyező vagy hasonló névvel kerül
összevetésre. Néha azonban a megegyező vagy hasonló nevű paraméterek ténylegesen
nem kapcsolódnak. A legjobb esetben a szükségtelen összevetés ártalmatlan, vagy
egy kevés szükségtelen többletterhelést okoz. A legrosszabb esetben az alkalmazás
nem vár összevetést, és a visszajátszás során meghiúsul.
A szükséges mennyiséget meghaladó
adatösszevetés eltávolítása:
- A tesztszerkesztőben kereséssel vagy tallózásal keresse meg a helyettesítő helyet,
amelynek nem szabad összevetettnek lennie. Az összevetett adatokat alapértelmezésben lila betűk
jelzik.
- Kattintson a jobb egérgombbal a helyettesítő helyre.
- Kattintson a Helyettesítés eltávolítása lehetőségre.
Helytelen összevetés
Egy adatösszevetést megkövetelő paraméter
egy tesztben többször előfordulhat. Például egy felhasználó bejelentkezésekor
kezdetben használt munkamenet-azonosító paraméter felhasználásra kerülhet
minden soron következő kérésben is. Ha a tesztben egy paraméter több példánya
nem egyezik meg, akkor az összevetési algoritmus helytelen példányt
használhat.
A HTTP tesztelőállítási beállításokkal az automatikus adatösszevetést
pontosságra vagy hatékonyságra optimalizálhatja.
- Pontosság: Egy paraméter minden egyes előfordulása a legközelebbi
korábbi előfordulással van összevetve. Ez az alapértelmezett beállítás.
- Hatékonyság: Egy paraméter minden egyes előfordulása egyetlen
korábbi előfordulással van összevetve.
Megjegyzés: Ha nem kézzel alkalmaz összevetést egy
HTTP kérésfejléc Referer mezőjében, akkor a Referer mező szükség szerint
automatikusan összevetésre kerül. Ha kézzel alkalmaz összevetést egy HTTP kérésfejléc
Referer mezőjében, akkor nem kerül végrehajtásra automatikus
összevetés.
Nagyobbb valószínűséggel fordulnak elő helytelen
összevetések, ha az
Automatikus adatösszevetés optimalizálása a
végrehajtáshoz beállítása
Hatékonyság értékre.
Helytelen összevetés javítása:
- A tesztszerkesztőben kereséssel vagy tallózással keresse meg a helytelenül
összevetett értéket.
- Kattintson a jobb egérgombbal a helyettesítő helyre.
- Kattintson a Helyettesítés eltávolítása lehetőségre.
- Kattintson újra a jobb egérgombbal a helyettesítő helyre.
- Válassza ki az előugró menü Helyettesítés menüpontját, majd
válassza ki a helyes paramétert.