Čo je to tvrdenie?
Assertion help verifies that your server under test returns the expect results.
Druhy tvrdení
Nasleduje niekoľko bežne používaných výrazov v JMeter:
- Uplatnenie odpovede
- Trvanie tvrdenia
- Veľkosť Assertion
- Assertion XML
- Assertion HTML
- Kroky na použitie odpovede na odpoveď
Uplatnenie odpovede
Tvrdenie odpovede vám umožňuje pridať reťazce vzorov, ktoré sa majú porovnať s rôznymi poľami odpovede servera.
Napríklad pošlete žiadosť používateľa na web http://www.google.com a dostanete odpoveď servera. Môžete použiť Response Assertion na overenie, či odpoveď servera obsahuje očakávaný reťazec vzoru (napr. „OK“).
Trvanie tvrdenia
Duration Assertion testuje, či bola odpoveď servera prijatá v danom čase. Akákoľvek odpoveď, ktorá trvá dlhšie ako daný počet milisekúnd (zadaný používateľom), je označená ako neúspešná.
Napríklad žiadosť o odoslanie žiadosti od používateľa JMeter na web www.google.com, ktorá dostane odpoveď v očakávanom čase 5 ms, potom testovací prípad vyhovuje, inak testovací prípad zlyhal.
Veľkosť Assertion
Size Assertion testuje, či každá odpoveď servera obsahuje očakávaný počet bajtov. Môžete určiť, že veľkosť musí byť rovná, väčšia ako, menšia ako alebo nerovná sa danému počtu bajtov.
Aplikácia JMeter pošle žiadosť používateľa na www.google.com a dostane paket odpovedí s veľkosťou menšou, ako sa očakávalo, bajt 5 000 bajtov, úspešný testovací prípad. Ak nie, testovací prípad zlyhal.
Assertion XML
XML Assertion testuje, či dáta odpovedí pozostávajú z formálne správneho dokumentu XML.
Assertion HTML
HTML Assertion umožňuje užívateľovi skontrolovať syntax HTML dát odpovedí. To znamená, že údaje o odpovedi musia byť splnené v syntaxi HTML.
Kroky na použitie odpovede na odpoveď
Budeme pokračovať v skripte, ktorý sme vyvinuli v predchádzajúcom tutoriáli.
V tomto teste používame funkciu Response Assertion na porovnanie paketu odpovedí z adresy www.google.com s očakávaným reťazcom.
Tu je plán tohto testu:
Ovládací panel tvrdenia o odpovedi vám umožňuje pridať reťazce vzorov, ktoré sa majú porovnať s rôznymi poľami odpovede.
Krok 1) Pridajte odpoveď na odpoveď
Pravým tlačidlom myši kliknite na skupinu vlákien -> Pridať -> Assertions -> Response Assertion
Na paneli s odpoveďami sa zobrazuje nasledujúci obrázok:
Krok 2) Pridajte vzor na testovanie
Keď pošlete žiadosť na server Google, môže vrátiť nejaký kód odpovede, ako je uvedené nižšie:
- 404 : Chyba servera
- 200 : Server je v poriadku
- 302 : Webový server presmerováva na iné stránky. Zvyčajne sa to stane, keď pristupujete na stránku google.com z mimo USA. Google presmerováva na web konkrétnej krajiny. Ako je uvedené nižšie, doména google.com presmeruje na doménu google.co.in pre indických používateľov.
Predpokladajme, že chcete overiť, či kód odpovedí webového servera google.com obsahuje vzor 302,
V poli Odpoveď na test vyberte Kód odpovede,
Na paneli Asponse Assertion Panel kliknite na Add -> nové prázdne zobrazenie záznamu -> zadajte 302 do Pattern to Test.
Krok 3) Pridajte výsledky hľadania
Pravým tlačidlom kliknite na Skupinu vlákien, Pridať -> Prijímač -> Výsledky hľadania
Krok 4) Spustite test
Kliknite na Skupinu vlákien -> Výsledok uplatnenia
Keď ste pripravení na vykonanie testu, kliknite na paneli s ponukami na tlačidlo Spustiť alebo na skratku Ctrl + R.
Výsledok testu sa zobrazí na table Výsledky hľadania. Ak kód odpovede servera Google obsahuje vzor 302 , testovací prípad sa odovzdá. Správa sa zobrazí nasledovne:
Teraz späť na panel Aspontion Assertion Panel zmeníte vzor na testovanie z 302 na 500.
Pretože kód odpovede servera Google neobsahuje tento vzor, uvidíte testovací prípad Zlyhal nasledovne:
Riešenie problémov:
Ak pri riešení vyššie uvedených scenárov narazíte na problém ..., postupujte takto:
- Skontrolujte, či sa pripájate k internetu prostredníctvom servera proxy. Ak áno, odstráňte proxy server.
- Otvorte novú inštanciu JMeter
- Otvorte AssertionTestPlan.jmx v JMeter
- Kliknite na Skupinu vlákien -> Výsledok uplatnenia
- Spustite test