JMeter로 성능 테스팅하기

나르·2022년 2월 18일
0

Infra

목록 보기
2/5

1. JMeter란?

JMeter은 부하 테스트, 성능 테스트를 위해 제작된 JAVA 오픈소스 소프트웨어입니다.

2. 사용 방법


Mac 의 경우로 간편하게 설치 및 실행이 가능합니다.

brew install jmeter —-with-plugins
open /usr/local/bin/jmeter

2.1. 다운로드

Apache JMeter 홈페이지에서 JMeter을 다운로드합니다.
작성 시점에서 최신 버전은 5.4.3 버전이며, 지원되는 자바 버전이 다르므로 프로젝트에 맞춰서 다운로드 해주시면 됩니다.


2.2. jmeter 실행

다운받은 JMeter의 압축을 풀고 JMeter 폴더 > bin > jmeter을 실행합니다. 아래와 같은 터미널과 함께 JMeter이 실행됩니다. 터미널을 종료하면 JMeter도 같이 종료되니 주의해주세요!

2.3. 테스트 시나리오 작성

- Thread Group 추가

  • Name
    쓰레드 그룹의 이름
  • Action to be taken after a Sampler error
    실행 중에 에러가 발생하면 처리할 방법
  • Number of Threads(users)
    가상의 생성자를 몇 명으로 설정할건지에 대한 값 (= 몇 개의 쓰레드를 생성할 것인지)
    이 값이 커질수록 당연히 서버는 많은 부하를 받습니다.
  • Ramp-up Period(in seconds)
    한번의 실행을 몇초 동안 완료 시킬것인지에 대한 설정값
  • Loop Count
    반복하고자 하는 횟수( Infinite를 누르면 무제한 실행 )

- HTTP Request 추가

부하를 줄 url 을 지정합니다.

  • Name
    요청 이름
  • Protocol
    사용할 프로토콜(http 혹은 https)을 선택합니다. 지정하지 않으면 http로 실행됩니다.
  • Server Name of IP
    서버의 ip주소를 입력합니다. 로컬의 경우 localhost or 127.0.0.1을 입력합니다.
  • Port Number
    사용하는 포트를 입력합니다
  • Path
    API Endpoint를 입력해줍니다

http://localhost:8080/api/v1/user 로 GET 요청의 경우 아래와 같이 설정됩니다.

- HTTP Header Manager 추가

헤더가 필요할 경우 추가해줍니다.
Authorization 정보나 Content-Type 등 필요한 헤더를 추가합니다.

- Listener 추가

실행 결과를 보기 위해 원하는 리스너를 추가해줍니다.
저는 View Result Tree, Summary Report, Graph Results를 주로 사용합니다.

View Result Tree

실행 성공 여부와 response data를 확인할 수 있습니다.

Summary Report

#Samples : 서버에 요청한 횟수
Average : 평균응답시간(ms)
Min : 최소응답시간(ms)
Max : 최대응답시간(ms)
Std. Dev. : 표준편차. 요청에 대한 응답시간의 일정하고 안정적인가를 확인, 값이 작을수록 안정적이다.
Error : Error율(%)
Throughput : 처리량 (초당 처리건수)
KB/sec : 처리량(초당 처리 KB)

Graph Results

Ref.

https://medium.com/@bluewings/%EB%B6%80%ED%95%98%ED%85%8C%EC%8A%A4%ED%8A%B8-jmeter-%EB%9E%80-6299ecc2f7b1

profile
💻 + ☕ = </>

0개의 댓글