Jmeter Listener 사용법
1. 리스너 중 view results tree에서 html파일로 요청한 이미지(img src="img.jpg")를 보려면?
=> HTTP Request - Advanced에서 Retrieve All Embedded Resources 체크
=> view results tree 화면에서 왼쪽에 HTTP Requests들이 주욱 보이는데
그 맨위에 드롭다운박스에서 HTML(download resources) 를 선택하면 된다. (디폴트는 텍스트로 되어있음)
2. Jmeter 캐시, 쿠키 관리는 어디서 하지?
=> Thread Group - Add - Config Element
=> 내가 테스트할 때 설정한 상태
[HTTP Cache manager]
- Clear cache each iteration 체크 : 스레드 시작시 캐시가 지워짐
- Max Number of elements in cache 5000 : 가상 사용자 스레드 당 캐시에 최대 5000개의 항목을 저장. maxSize 속성을 사용해라.
이 값을 늘리면 HTTP 캐시 관리자가 메모리를 더 많이 사용하게 될 것이므로 -Xmx JVM 옵션을 적절하게 적용해야 함.
참고 https://jmeter.apache.org/usermanual/component_reference.html#HTTP_Cache_Manager
[HTTP Cookie manager]
- Clear Cookies each iteration 체크 :
이 옵션을 선택하면 주 스레드 그룹 루프가 실행될 때마다 모든 서버 정의 쿠키가 지워집니다.
GUI에 정의 된 모든 쿠키는 지워지지 않습니다.
참고 https://jmeter.apache.org/usermanual/component_reference.html#HTTP_Cache_Manager
3. 똑같은 시나리오로 4번째 반복해서 HTTP 요청할 때 summary result의 Throughput이 갑자기 확 줄어든다. 왜지??
이 이유가 맞는지는 모르겠지만 참고..
https://jmeter.apache.org/usermanual/component_reference.html#Aggregate_Report
집계 보고서는 테스트에서 다르게 명명 된 요청마다 테이블 행을 만듭니다. 각 요청에 대해 응답 정보를 합산하고 요청 수, 최소, 최대, 평균, 오류 비율, 대략적인 처리량 (요청 / 초) 및 초당 처리량 (KB)을 제공합니다. 테스트가 완료되면 처리량은 전체 테스트 기간 동안의 실제 처리량입니다.
처리량은 샘플러 대상 (예 : HTTP 샘플의 경우 원격 서버)의 관점에서 계산됩니다. JMeter는 요청이 생성 된 총 시간을 고려합니다. 다른 샘플러와 타이머가 같은 thread에있는 경우, 이것들은 합계 시간을 늘려 처리량 치를 줄입니다. 따라서 이름이 다른 두 개의 샘플러는 동일한 이름을 가진 두 개의 샘플러의 처리량이 절반입니다. 집계 보고서에서 최상의 결과를 얻으려면 샘플러 이름을 올바르게 선택하는 것이 중요합니다.
=> 실제로 4번의 요청을 연속해서 하지 않고 텀을 둔 후에 요청했더니(각 2~3분 후에) Throughput이 줄어들지 않았다!