본문 바로가기

테스트툴/JMeter

JMeter Random, Random Order, Interleave Controller

Random Controller

나중에 이야기할 Interleave Controller와 유사하게 작동하지만 하위 컨트롤러와 샘플러를 순서대로 처리하는 대신 각 패스에서 무작위로 하나를 선택한다는 점이 다릅니다

또, 여러 컨트롤러 간의 상호 작용은 복잡한 동작이 생길 경우가 있는데

이러한 상호 작용이 어떤 결과를 가져올지 가정하기 전에 Random Controller을 활용할 수 있습니다

 

실습은 

 

Apache JMeter

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

book.naver.com

위 책을 활용하였습니다

 

Random Controller의 사용 예시입니다

Thread Group에서 Loop Count를 5로 설정합니다

Logic Controller에서 Random Controller를 추가하여 테스트할 Sampler를 추가합니다

결과는

5번의 루프동안 무작위로 Sampler가 선택되어 실행된 것을 확인할 수 있습니다

연관성 없이 random하게 선택되므로 같은 Sampler가 실행될 수도 있습니다


Random Order Controller

각 자식 요소를 최대 한 번만 실행한다는 점에서

Simple Controller와 매우 유사하지만 노드 실행 순서는 무작위입니다

 

Random Order Controller의 사용 예시입니다

Thread Group에서 Loop Count를 5로 설정합니다

Logic Controller에서 Random Order Controller를 추가하여 테스트할 Sampler를 추가합니다

결과는

Thread 1, Loop Count 5로 설정했으므로

Loop Iteration마다 5개의 Sampler가 실행됩니다

 

Random Controller와 마찬가지로 순서는 매번 달라집니다


Interleave Controller

Generative 또는 Logic Controller를 추가하면

JMeter는 각 루프 반복에 대해 다른 컨트롤러를 번갈아 가며 교체합니다

 

Interleave Controller의 사용 예시입니다

Thread Group에서 Loop Count를 5로 설정합니다

Logic Controller에서 Random Order Controller를 추가하여 테스트할 Sampler를 추가합니다

이 때, Loop Interation마다 5개의 Sampler 중 하나의 Sampler를 차례로 선택합니다

위와 같은 설정일 때,

/jmeter/random/interleave.html는 저장하는 페이지라고 가정하겠습니다

Jmeter를 실행시키면

random1 - 저장 - ... - random5 - 저장

순서로 진행되어 Sampler를 중복해서 복사하지 않고 깔끔하게 처리할 수 있습니다

결과는

 

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

JMeter Assertions  (0) 2021.04.28
JMeter Timer  (0) 2021.04.27
JMeter Logic Controller  (0) 2021.04.13
JMeter Regular Expression 설정 레퍼런스  (0) 2021.04.09
JMeter Regular Expression Extractor  (0) 2021.03.18