[정리] Artillery를 이용한 부하테스트

2021. 2. 1. 14:14프로그래밍-Web/Jest(TDD)

Command

 

 yarn artillery quick --count 50 -n 30 apiEndpoint

 

이때 count는 유저수, n은 한명의 유저당 요청수이다

apiEndpoint에는 주소를 적는다

 

요청 응답에 대한 최대,최솟값과 분포를 확인할 수 있다

 

Artillery의 장점은 이러한 테스트를 시나리오화 할 수 있다는 것에 있다.

 

config에는 타겟과 요청 빈도를, 시나리오에는 요청 flow를 작성한다

 

조금 확장해보면 이렇게 시나리오를 만들 수 있다

이때 테스트에 사용할 데이터는 payload에 정의한다.

예시의 경우는 get->post->get 순서로 테스트가 진행된다

capture는 post 시나리오에서 받은 data1이라는 결과물을, newData라는 이름으로 다음 시나리오에 보낸다. 

최종적으로 match를 사용하여 데이터값을 점검한다

 

실제 테스트는 json 파일 경로로 run시킨다