반응형

프로젝트 진행 중 Apache JMeter를 접하게 되었다.

오늘은 Apache JMeter의 설치 방법과 간단하게 사용하는 방법을 정리해보고자 한다.

Apache JMeter란?

Apache JMeter 애플리케이션은 기능 동작을 로드하고 성능을 측정하도록 설계된 100% 순수 Java 애플리케이션인 오픈 소스 소프트웨어이다. 초기에는 웹 응용 프로그램 테스트용으로 설계되었지만 이후 다른 테스트 기능으로 확장되었다.

 

 

 

Apache JMeter는 어디에 사용할 수 있는가?

1. Apache JMeter는 정적 및 동적 리소스, 웹 동적 응용 프로그램에서 성능을 테스트하는 데 사용할 수 있다.
2. 서버, 서버 그룹, 네트워크 또는 객체에 과중한 부하를 시뮬레이션하여 강도를 테스트하거나 다른 부하 유형에서 전반적인 성능을 분석하는 데 사용할 수 있다.

 

JMeter의 기능은 다음과 같다

  • 다양한 애플리케이션/서버/프로토콜 유형을 로드하고 성능을 테스트할 수 있는 기능
    • 웹 - HTTP, HTTPS(Java, NodeJS, PHP, ASP)NET, etc…)
    • SOAP / REST 웹 서비스
    • FTP
    • JDBC를 통한 데이터베이스
    • LDAP
    • JMS를 통한 메시지 지향 미들웨어(MOM)
    • 메일 - SMTP, POP3 및 IMAP
    • 네이티브 명령 또는 셸 스크립트
    • TCP
    • Java 개체
  • 브라우저 또는 네이티브 응용 프로그램에서 빠른 테스트 계획 기록, 빌드 및 디버깅을 허용하는 전체 기능 테스트 IDE.
  • Java 호환 OS(Linux, Windows, Mac OSX 등)에서 테스트를 로드하는 CLI 모드(이전에는 비 GUI라고 함)
  • 동적 HTML 보고서를 표시할 준비가 된 완전함
  • HTML, JSON , XML 또는 모든 텍스트 형식에서 데이터를 추출할 수 있는 기능을 통해 간편한 상관관계
  • 완벽한 휴대성과 100% Java 순도.
  • 완전한 멀티스레딩 프레임워크는 많은 스레드에 의한 동시 샘플링과 별도의 스레드 그룹에 의한 다른 함수들의 동시 샘플링을 허용한다.
  • 테스트 결과의 캐싱 및 오프라인 분석/재생
  • 확장성이 높은 코어
    • 플러그형 샘플러는 무제한 테스트 기능을 허용합니다.
    • 스크립트 가능 샘플러(Groovy 및 BeanShell과 같은 JSR223 호환 언어) 플러그형 타이머를 사용하여 여러 로드 통계를 선택할 수 있습니다.
    • 데이터 분석 및 시각화 플러그인은 개인화뿐만 아니라 뛰어난 확장성을 제공합니다.
    • 함수는 시험에 동적 입력을 제공하거나 데이터 조작을 제공하는 데 사용될 수 있다.
    • Maven, Gradle 및 Jenkins를 위한 타사 오픈 소스 라이브러리를 통한 간편한 지속적인 통합.

 

Apache JMeter 설치 및 실행

  1. https://jmeter.apache.org/ 에 접속한다.
  2. 좌측 메뉴에 Download Releases를 클릭한다.
  3. Binaries > zip파일을 다운로드 한다.
  4. 적당한 위치에 압축을 해제한 후, bin폴더에 jmeter.bat을 실행한다.
  5. cmd 창과 함께 Apache Jmeter 창이 뜨면 실행이 된 것이다.

 

 

 

Apache JMeter 사용방법

1. 왼쪽에 Test Plan 우클릭 > Add > Threads (Users) > Thread Group을 클릭한다.

JMeter Thread Group 생성

2. Thread Properties를 수정한다.

Number of Threads (users) : 가상사용자 ( Thread )의 수

Ramp-up period (seconds) : 요청 주기(초)
Loop Count : 테스트를 반복하는 횟수, Infinite - 무한대로 호출

 

즉, 1000명의 사용자가 1초에 1번씩 계속 요청을 보내는 것이다. 다시말해, 초당 1000회의 요청을 보내는 것이다. 

 

3. Thread Group 우클릭 > Sampler > HTTP Request를 클릭한다.

4. Server Name or IP, Port Number, Path 를 수정한다. URL 호출 method도 선택한다.
파라미터를 추가하고 싶은 경우, 하단에 Add버튼을 누르고 추가하면 된다.

http://localhost:8080/test를 GET방식으로 호출하겠다는 의미이고, 상단에 Name은 현재 request가 어느페이지를 호출하는 것인지 지정해주면 된다.(ex. Home)

 

5. 결과를 보기위한 Listener를 추가하기 위해 다시 Test Plan 우클릭 > Add > Listener > View Results Tree를 클릭한다.

Listener 란 Sampler 의 요청에 대한 결과를 수집해서 결과 값을 보여주는 element 를 의미한다.
요청을 보낸 후 성공, 실패, 응답시간, 응답 메세지 등을 확인 할 수 있다.

 

6. 상단에 초록색 버튼(Start)을 누른다.

실행을 누르면 Warning! 과 함께 무서운 창이 뜬다. 에러가 아니고, 설정한 내용을 파일로 저장할건지에 대한 질문이다.

 

7. 결과를 View Results Tree에서 확인한다.

 

이렇게하면 단순 부하테스트는 진행할 수 있지만 더 상세하게 조건이나 로직을 넣고싶으면 여러 설정들을 해주어야한다. 아직 거기까지는 나도 해보지 않았으므로 패스!

 

JMeter 기본 설정 끝!

반응형