Hvad er en påstand?
Assertion-hjælp bekræfter, at din server under test returnerer de forventede resultater.
Typer af påstande
Følgende er nogle almindeligt anvendte påstand i JMeter:
- Påstand om svar
- Påstand om varighed
- Påstand om størrelse
- XML-påstand
- HTML-påstand
- Trin til brug af svarpåstand
Påstand om svar
Svarspåstanden giver dig mulighed for at tilføje mønsterstrenge, der skal sammenlignes med forskellige felter i serverresponset.
For eksempel sender du en brugeranmodning til webstedet http://www.google.com og får serverens svar. Du kan bruge Respons Assertion til at kontrollere, om serversvaret indeholder forventet mønsterstreng (f.eks. "OK").
Påstand om varighed
Duration Assertion tester, at hvert serversvar blev modtaget inden for en given tidsperiode. Ethvert svar, der tager længere tid end det givne antal millisekunder (angivet af brugeren) er markeret som et mislykket svar.
For eksempel sendes en brugeranmodning til www.google.com af JMeter og får et svar inden for forventet tid 5 ms, derefter er Test Case bestået, ellers test case mislykkedes.
Påstand om størrelse
Size Assertion tester, at hvert serverrespons indeholder det forventede antal byte i det. Du kan angive, at størrelsen skal være lig med, større end, mindre end eller ikke lig med et givet antal byte.
JMeter sender en brugeranmodning til www.google.com og får svarpakke med en størrelse, der er mindre end forventet, byte 5000 byte, hvor en test case passerer. I modsat fald mislykkedes testsagen.
XML-påstand
XML-påstanden tester, at svardataene består af et formelt korrekt XML-dokument.
HTML-påstand
HTML-påstand giver brugeren mulighed for at kontrollere HTML-syntaksen for svardataene. Det betyder, at svardataene skal overholdes HTML-syntaksen.
Trin til brug af svarpåstand
Vi fortsætter med det script, vi udviklede i den tidligere tutorial.
I denne test bruger vi Respons Assertion til at sammenligne svarpakken fra www.google.com svarer til din forventede streng.
Her er køreplanen for denne test:
Kontrolpanelet for svarpåstand giver dig mulighed for at tilføje mønsterstrenge, der skal sammenlignes med forskellige felter i svaret.
Trin 1) Tilføj svarpåstand
Højreklik på trådgruppe -> Tilføj -> Påstande -> Svarpåstand
Svarpåstandsruden vises som nedenstående figur:
Trin 2) Tilføj mønster til test
Når du sender en anmodning til Google-serveren, returnerer den muligvis en svarkode som nedenfor:
- 404 : Serverfejl
- 200 : Server OK
- 302 : Webserver omdirigerer til andre sider. Dette sker normalt, når du får adgang til google.com fra USA. Google omdirigerer til landespecifikt websted. Som vist nedenfor omdirigerer google.com til google.co.in for indiske brugere.
Antag, at du vil bekræfte, at webserveren google.com-svarskode indeholder mønster 302,
På svarfeltet, der skal testes , skal du vælge svarskode,
Klik på Tilføj -> et nyt tomt indtastningsdisplay -> indtast 302 i Mønster, der skal testes, på panelet Svarpåstand .
Trin 3) Tilføj påstandsresultater
Højreklik på trådgruppe, tilføj -> lytter -> påstandsresultater
Trin 4) Kør din test
Klik på Trådgruppe -> Påstandsresultat
Når du er klar til at køre en test, skal du klikke på knappen Kør i menulinjen eller på hurtigtasten Ctrl + R.
Testresultatet vises i ruden Assertion Results. Hvis Google-server svarkode indeholder mønsteret 302 , er en prøvesag bestået. Meddelelsen vises som følger:
Nu tilbage til svarpåstandspanelet ændrer du mønsteret til test til fra 302 til 500.
Da Googles serverresponskode ikke indeholder dette mønster, vil du se testsagen mislykkedes som følger:
Fejlfinding:
Hvis du står over for problemet, mens du kører ovenstående scenarier ... skal du gøre følgende:
- Kontroller, om du opretter forbindelse til internettet via en proxy. Hvis ja, skal du fjerne proxyen.
- Åbn en ny forekomst af JMeter
- Åbn AssertionTestPlan.jmx i JMeter
- Klik på Trådgruppe -> Påstandsresultat
- Kør testen