작성한 API 에 대하여, postman을 통해 하나하나 확인하는 과정 중에,
"내가 보내는 하나의 요청에 대해서는 잘 처리를 해줄 수 있겠지만, 만약에 많은 요청이 들어오는 것은 어떻게 테스트할까" 라는 생가을 갖다가,
여기저기 찾아보게 되었고, Jmeter를 통해 해당 테스트를 진행할 수 있음을 깨닫게 되어 만져보았다.
해당 웹사이트에서 원하는 버전을 다운받은 후, 압축을 풀어주면 된다.
맥북 기준으로, 압축을 푼 폴더기준 bin 폴더의 jmeter를 실행해주면 된다.
이후, Test Plan에 쓰레드 그룹의 추가와 HTTP Request, 어떤 데이터를 확인할지 추가해주어 테스트를 진행할 수 있다.
가장 먼저, Thread Group에 대한 설정을 해주어야 한다.
Number of Threads
에서, 몇명의 유저에 대한 요청을 처리할 것인지(Thread) 설정해주고,
Ramp-up period(seconds)
에서 정확한 테스트를 위해 초기 일정 시간 동안 준비하는 시간을 설정,
Loop Count
를 통해 쓰레드당 수행할 테스트를 진행할 횟수를 명시해준다.
이후, HTTP Request를 설정해준다.
어떤 IP, port에 대해 어떤 Path로 어떤 Method의 Request를 보내줄 것인지 등을 명시해주었다.
이후 해당 request를 기준으로 다양한 데이터를 확인할 수 있게 된다.
이후 테스트 실행을 통해 원하는 값들을 확인할 수 있다.
나의 경우, 가장 유용하게 사용했던 기능이 Aggregate Graph 인데,
다음과 같이 요청에 대해 그래프화하고, 전체적인 통계를 확인할 수 있다.
아직은 정확한 정보나 테스트 진행 방법에 대해 익히는 시간이 필요하지만, 이렇게 성능적인 부분을 테스트해볼 수 있다는 것 만으로도 충분히 신기하고 재미있다.
좀더 체계적인 테스트 진행을 위해 조금 더 공부해보고 사용해보아야겠다.
내 코드의 치부를 드러내는 방법