본문 바로가기
BackEnd/Server

[JMeter] 부하테스트와 성능 측정 소프트웨어

by 푸고배 2021. 8. 2.

 Apache JMeter란

부하테스트와 성능 측정을 위한 소프트웨어로 100% 순수 자바 어플리케이션 오픈소스이다.

정적 및 동적 자원, 웹 동적 애플리케이션 모두에서 성능을 테스트하는 데 사용할 수 있다.
서버, 서버 그룹, 네트워크 또는 개체에 대한 과부하를 시뮬레이션하여 강도를 테스트하거나 다양한 부하 유형에서 전체 성능을 분석하는 데 사용할 수 있다.

 Apache JMeter 기능

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

 Apache JMeter 설치 

JMeter 설치를 위해서는 Java 8 이상의 환경이 필요하다.

만약 Java가 설치되어 있지 않거나, Java 8보다 아래의 버전이라면 Java 8 이상의 버전을 먼저 설치해준다.

 

 

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

 

그 다음 Apache JMeter 페이지에서 자신의 운영체제에 맞는 파일을 다운로드 한다.

 

MacOS에서는 아래와 같은 brew 명령어를 이용해 간단하게 설치가 가능하다.

 

brew install jmeter
Or
brew install jmeter —-with-plugins

 

파일을 다운로드 했다면 다운로드 경로에, brew 명령어를 사용해 설치했다면 /opt/homebrew/Cellar/ 경로에 JMeter가 설치되었을 것이다. 

 

 

만약 Window 환경이라면 /bin/ApacheJMeter.jar로, MacOS 환경이라면 Terminal에서 jmeter 명령어 입력을 통해서 JMeter 소프트웨어를 실행시킬 수 있다.

 

 

JMeter는 Test Plan 아래에 여러 개의 Thread Goup(User)을 등록하고, Thread 하위에 여러가지 Sampler, Timer, Logic Controller를 이용해서 테스트 환경을 구성할 수 있다. Test Plan은 .jmx라는 파일로 저장할 수 있기 때문에 재사용이 용이하다.

 

 

그 외에도 Option>Plugins Manager를 이용하면 다양한 플러그인을 끌어와서 사용할 수 있다.

Top 10 Plugin 참고

 

Top 10 JMeter Plugins | BlazeMeter

Learn JMeter plugins! Get valuable information about how and when to use JMeter’s 10 most popular plugins to optimize your performance testing scripts today.

www.blazemeter.com

 

Installed Plugins은 설치한 Plugins, Available Plugins는 설치 가능한 Plugins이 나타난다.

이외에도 직접 Plugins 파일을 다운 받아 ~/lib 환경에 넣어주는 방법이 있다.

 

JMeter를 이용한 부하/성능 테스트를 통한 JMeter 사용 예제는 다른 게시물로 정리해보도록 한다.

 

참고자료:

 

Apache JMeter - Apache JMeter™

Apache JMeter™ The Apache JMeter™ application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to oth

jmeter.apache.org

 

반응형

댓글