본문 바로가기

테스트툴/JMeter

JMeter Assertions

Test Plan을 실행할 때, 성공했는지 실패했는지 HTTP 응답 코드로 알 수 있습니다

성공을 나타내는 응답 코드는 20X나 30X,

오류를 나타내는 응답코드는 40X나 50X를 나타냅니다

그러나 성공인 응답코드일 때 무조건 올바른 페이지가 출력되는 것은 아닐 것입니다

예를 들어서 응답코드 200을 받았을 경우, 본문에는 처리에 실패했다는 메시지가 출력되는 경우도 있습니다

이런 경우에 Assertions 기능을 이용하여 응답코드 외에

성공과 오류를 판단하여 정상적인 테스트를 실행하도록 합니다

 

실습은

 

Apache JMeter

이 책은 Apache JMeter를 이용해서 웹 서비스의 성능을 테스트하려는 시스템 운영자와 웹 개발자를 위한 책으로, 자바와 웹 서비스 인프라, 웹 프로토콜에 대한 기초적인 지식을 가지고 있다면 쉽게

book.naver.com

위 책을 활용하였습니다


오류로 판단할 경우를 간단한 예시를

특정한 내용이 포함되어 있을 때,

응답시간이 특정 시간을 넘을 때,

응답한 본분 사이즈가 특정 크기를 넘을 때

세 가지로 구분해 보겠습니다

 

우선 Thread Group을 추가하여 아래와 같이 설정해줍니다

Simple Controller를 추가한 후

HTTP Request, Duration Assertion, Response Assertion, Size Assertion를 추가합니다

 

Duration Assertion에서 Duration in milliseconds는 1000으로 설정합니다

이것은 Duration이 1000ms보다 크면 오류로 처리하라는 것을 뜻합니다

 

Response Assertion에서 Patterns to Test에 'Error occur!!'로 입력하고

Pattern Matching Rules는 Contains를 선택합니다

이것은 응답 내용이 'Error occur!!'을 포함하고 있으면 오류로 처리하라는 것을 뜻합니다

 

Size Assertion에서는 Size in bytes를 500으로 설정해줍니다

이것은 본문 크기가 500bytes보다 작으면 오류로 처리하라는 것을 뜻합니다

 

결과는

위와 같은 결과를 얻을 수 있습니다

아무 처리도 되어있지 않았던 Sampler는 정상으로 처리되었습니다

나머지 세 Sampler는 Assertion의 처리로 인해 오류로 처리되었습니다

'테스트툴 > JMeter' 카테고리의 다른 글

JMeter 플러그인 설치 및 활용  (0) 2021.05.04
JMeter HTTP(S) Test Script Recorder  (0) 2021.05.01
JMeter Timer  (0) 2021.04.27
JMeter Random, Random Order, Interleave Controller  (0) 2021.04.26
JMeter Logic Controller  (0) 2021.04.13