
설치 방법은 다양하다.

version: '3.8'
services:
controller:
image: ngrinder/controller
restart: always
ports:
- "9000:80"
- "16001:16001"
- "12000-12009:12000-12009"
volumes:
- ./ngrinder-controller:/opt/ngrinder-controller
agent:
image: ngrinder/agent
restart: always
links:
- controller
이렇게 작성하면 최신 버전으로 실행할 수 있다. 그런데 현재 버전이 오류를 많이 초래한다는 카더라가 있어서 아래와 같이 3.5.5버전으로 낮춰서 실행하는 것을 추천한다.
version: '3.8'
services:
controller:
image: ngrinder/controller:3.5.5 // 버전 낮추기
restart: always
ports:
- "9000:80"
- "16001:16001"
- "12000-12009:12000-12009"
volumes:
- ./ngrinder-controller:/opt/ngrinder-controller
agent:
image: ngrinder/agent:3.5.5
restart: always
links:
- controller
$ docker-composer up -d
백그라운드 옵션 (-d) 로 컨테이너 띄운다
http://localhost:9000/login 또는 http://{인스턴스_IP_주소}:9000/login으로 접속한다.

성공적으로 접속하면 초기 ID/PW는 admin/admin 이다.

로그인까지 성공하면 이렇게 뜬다.


오른쪽 상단 메뉴에서 Agent Management를 클릭한다.

그럼 위 화면이 뜬다.

상단에 Script 클릭하면, 스크립트 목록을 확인할 수 있다.

Create버튼을 눌러서 뜨는 모달에서 성능 테스트할 API 주소를 입력한다. 어차피 다시 스크립트 다 수정할 수 있으니 대충 입력해도 된다.'

Create 누르면 스크립트가 자동으로 생성된다. 이제 이 스크립트가 Spring Boot의 테스트코드와 같이 API를 실행할 시나리오가 된다. 자동 생성되는 스크립트는 입력한 API에 대해 GET 요청을 보내는 스크립트이다.

오른쪽 위에 Validate를 눌러서 한 번 제대로 실행되어야 테스트가 실행되는데, 위처럼 ERROR가 뜨면 안된다. 기본 생성 스크립트 ERROR가 뜨면 이 포스팅 위쪽에서 언급했듯이 버전 문제일 확률이 높다. 다시 버전을 낮춰서 실행하는 것을 추천한다.

Validate를 눌렀을 때 이렇게 뜨면 스크립트가 제대로 실행될 준비가 되었다는 것이다.

스크립트 작성이 완료되었다면 상단의 Performance Test를 클릭한다. 처음에는 테스트 목록이 없을 것이다. 오른쪽 상단의 Create Test를 클릭한다.

테스트를 생성하기 위한 페이지가 뜬다. 아까 생성한 스크립트를 선택한 뒤, 적당한 조건을 설정하여 오른쪽 상단의 Save and Start 버튼을 눌러 성능 테스트를 실행한다.

그러면 이렇게 테스트 결과를 확인할 수 있다. 여기서 TPS란 초당 트랜잭션 수 (Transactions Per Second)를 뜻한다. 주로 컴퓨터 시스템이나 데이터베이스 시스템의 성능을 측정하는 데 사용되는 지표 중 하나이고 시스템이 얼마나 많은 트랜잭션을 각 초에 처리할 수 있는지를 나타낸다.
그리고 실행한 테스트 횟수와 성공/실패 횟수를 확인할 수 있다.

이렇게 실패 횟수가 많을 때 왼쪽 하단의 log 알집에서 간단한 로그도 확인할 수 있다.