본문 바로가기
dev/개발일지

apache-jmeter 오픈소스 테스트 툴 mac

by Box 2021. 10. 14.
728x90

- 현재 런칭 전인 프로젝트가 있어 부하테스트와 스트레스 테스트가 필요했다.

- 오토스케일링 테스트로도 필요한 툴로 인해 이번기회에 써보았다.

 

Apache-Jmeter

- 상황에따라 parameter을 넣어주신 후에 테스트할 사용자 및 반복횟수를 설정하여 성능을 확인할수 있습니다

- java런타임으로 java를 설치 해줘야된다. ( 버전에 맞게)

 

설치방법

- brew install jmeter

 - 플러긴 파일도 다운받아opne /usr/local/bin 에 넣는다.!

  - https://jmeter-plugins.org/install/Install/

 

Install :: JMeter-Plugins.org

Installing Plugins The easiest way to get the plugins is to install Plugins Manager. Then you'll be able to install any other plugins just by clicking a checkbox. If you experience any issues with plugins installation, don't hesitate to ask at Support Foru

jmeter-plugins.org

실행방법

- open /usr/local/bin/jmeter

 

사용방법

  • Test Plan 클릭 후 ADD => thread 생성
  •  thread 생성
    • 여러개의 request 생성가능 (한스레드안에 실행시 동시에 실행됨) 
    •  프로퍼티
      • number of threads = 유저 수
      • Ramp-up period = 몇초간 진행할건지
      • loop count = 반복횟수
    • ADD => Sampler => http Request 선택
    • Http Request
      • 프로토콜, ip 주소, 포트 넘버 입력
      • API 기능 테스트시
        • 메소드 , path 입력후 테스트
        • head 값도 입력가능
    • 스타트 버튼 클릭후 실행!
  • 결과 도출 방법
    • Test Plan
      • 모든 thread 값에대한 결과물 도출
    • Thread Group
      • 모든 http request 에 대한 결과물 도출
    • Http Request
      • 해당 페이지에대한 결과물 도출
    • Listener
      • view Results tree
        • 서버쪽에서 리턴해준값을 보여줌
        • ThroughPut : 단위 시간당 서버에서 처리되는 요청의수 (TPS)
        • latency : 요청을 보낸후 데이터를 받기 시작할 때까지 시간
        • loadTime : 요청을 보내고 응답이 끝날때까지의 시간 (성능 테스트시 참조!!!) 
      • Summary Report
        • samples : 접속수
        • average :  평균 액세스
        • min : 가장 빨리 끝난 액세스
        • max : 가장 오래 끝난 액세스
        • throughput :  초당 액세스 (높을수록 좋음)
          • (err가 뜨면 서버에서 복잡한 일을 하지않기 때문에 높아질수밖에없음)
          • error 값과 관련하여 분석 필요
        • std.dev : 표준 편차 
          • 평균으로부터 각각에 요청시간이 얼마나 떨어져있는지
          • 0 이면 모두 평균과 같은 시간을 사용
          • 크다면 들쑥날쑥하다는 뜻
        • Graph result
          • data : 실제 접속한시간  (얼마나 소요됬는가)
          • average :  평균값의 변화
          • medium: 중앙값
          • 편차 평균으로부터 얼마나 떨어져있는가

 

자세한 사용법은 밑에 블로그에 들어가서 보면 될거같다.!

- feat. https://huistorage.tistory.com/84

'dev > 개발일지' 카테고리의 다른 글

GraphQl  (0) 2021.12.10
프론트는 axios, 서버는 got (예정)  (0) 2021.11.26
winston, morgan 함께 사용하여 로깅남기기  (0) 2021.08.16
clone_deep 깊은 복사 사용 후기  (0) 2021.07.30
썸네일 og태그 추출  (0) 2021.07.22