위키득계정 ↗
기술

Artillery

Artillery기술
분류
부하 및 성능 시험 도구
주요 구성
부하 단계와 시나리오
기본 작성
YAML 기반 시험 정의
관측 대상
응답 시간과 처리량 및 오류
Artillery는 가상 사용자가 시나리오를 수행하도록 만들어 애플리케이션의 부하를 시험하는 도구다. 시간 구간별 유입 설정과 사용자의 행동 흐름을 나누어 정의한다.

유입과 행동의 분리

부하 단계는 일정 시간 동안 새로운 가상 사용자를 얼마나 투입할지 정한다. 시나리오는 각 사용자가 수행할 요청의 흐름을 정한다. 한 사용자가 여러 요청을 수행할 수 있으므로 유입률을 요청 처리량과 동일하게 해석해서는 안 된다.

시험 종료 시점

설정된 부하 단계가 끝나도 이미 시작한 사용자의 작업은 남아 있을 수 있다. 모든 사용자의 시나리오가 종료되어야 전체 실행이 마무리된다. 마지막 단계의 종료 시간만으로 시험 전체의 소요 시간을 계산하면 차이가 생긴다.

적용 범위

HTTP와 WebSocket 등의 통신을 시험할 수 있으며 Node.js 코드로 동작을 확장한다. Playwright를 활용하는 브라우저 시험도 지원한다. 프로토콜 요청을 보내는 방식과 실제 브라우저를 사용하는 방식은 관측 대상과 필요한 자원이 다르다.

관련 문서

Locust / Gatling / HTTP