Apache JMeter
웹 애플리케이션 성능 테스트 도구로 JAVA를 기반으로 만들어졌습니다.
원래는 웹 애플리케이션에 대한 성능 테스트를 위해 만들었지만, 다양한 테스트 유형과 프로토콜을 지원하게 되었습니다.
서버나 네트워크 혹은 개체에 과부하를 시뮬레이션하여 강도를 테스트 하거나 다양한 부하 유형에서 전체 성능을 분석하는데 사용합니다.
특징
- 다양한 프로토콜 지원: JMeter는 HTTP, HTTPS, FTP, JDBC, LDAP, SOAP, JMS, MQTT 등과 같은 다양한 프로토콜을 지원합니다.
- 그래픽 사용자 인터페이스: 사용자 친화적인 GUI를 통해 테스트 케이스를 생성하고 실행할 수 있습니다.
- 다양한 플러그인 지원: JMeter는 다양한 플러그인을 지원하여 확장성이 높습니다. 추가적인 기능이나 리스너, 샘플러 등을 추가할 수 있습니다.
- 멀티 쓰레드 지원: 복수의 사용자를 모방하여 동시에 여러 요청을 보내는 테스트를 수행할 수 있습니다.
- 분산 테스트: 여러 시스템에서 JMeter를 실행하여 대규모의 테스트를 수행할 수 있습니다.
- 데이터 주도 테스트: CSV, Excel 등의 파일로부터 데이터를 읽어 테스트의 입력 값으로 사용할 수 있습니다.
- 성능 결과 분석: 다양한 형태의 그래프와 차트를 통해 테스트 결과를 시각적으로 분석할 수 있습니다.
- 다양한 결과 출력 형식: 테스트 결과를 XML, JSON, CSV 등 다양한 형식으로 출력할 수 있습니다.
주요 개념
- Test Plan: JMeter에서 테스트 설정의 최상위 요소로, 전체 테스트 구성을 포함합니다.
- Thread Group: 테스트에서 동시 사용자의 수, 반복 횟수, 시작 지연 시간 등을 지정합니다.
- Samplers: 요청을 보내는 컴포넌트 (예: HTTP Request, JDBC Request 등).
- Logic Controllers: 샘플링의 순서나 조건 (예: Loop Controller, If Controller)을 제어합니다.
- Listeners: 테스트 결과를 표시하거나 저장하는 컴포넌트 (예: View Results Tree, Summary Report).
- Assertions: 응답 결과를 검증하는 컴포넌트입니다.
- Timers: 요청 간의 지연 시간을 지정하는 컴포넌트입니다.
- Config Elements: 테스트에 공통으로 사용되는 설정값 (예: HTTP Header Manager, User Defined Variables)을 제공합니다.
- Pre-Processors & Post-Processors: 샘플러 실행 전과 후의 동작을 정의하는 컴포넌트입니다.
설치
- Apache JMeter 다운로드 페이지 접속
https://jmeter.apache.org/download_jmeter.cgi
Apache JMeter - Download Apache JMeter
Download Apache JMeter We recommend you use a mirror to download our release builds, but you must verify the integrity of the downloaded files using signatures downloaded from our main distribution directories. Recent releases (48 hours) may not yet be ava
jmeter.apache.org
2. apache-jmeter .zip 다운로드 후 압축 해제 (최신 버전을 다운 받으시면 됩니다.)
실행
압축 푼 후 bin 폴더 → cmd 실행 → jmeter 입력
JMeter 의 GUI