Kim Seogyu
Backend

Locust 기반 환경별 E2E 테스트 자동화

Locust로 환경별 E2E/부하 테스트를 자동화할 때 필요한 구조와 운영 규칙을 정리합니다.

Published 2025년 12월 30일1 min read143 words

Locust 기반 환경별 E2E 테스트 자동화

목적

Locust를 쓰는 이유는 "큰 부하"보다 "재현 가능한 시나리오"입니다. 환경별로 같은 시나리오를 돌려 회귀를 빨리 찾는 데 초점을 둡니다.

권장 분리

  • smoke: 배포 직후 핵심 기능 확인
  • functional: CRUD/비즈니스 흐름 검증
  • performance: 목표 TPS/latency 검증
  • stress: 한계점 탐색

최소 구조

e2e/
  config/{local,int,stage,prod}.yaml
  suites/{smoke,functional,performance,stress}.py
  locustfile.py

실행 예시

locust -f suites/smoke.py --headless -u 20 -r 5 -t 2m --host https://api-int.example.com

운영 규칙

  • 시나리오 데이터는 테스트마다 독립 생성
  • 테스트 종료 시 정리(cleanup) 보장
  • CI에서 환경별 실행 시간 상한 설정

자주 하는 실수

  • smoke와 performance를 구분하지 않아 CI가 느려짐
  • 테스트 데이터 충돌로 flaky 발생
  • 성공 기준(p95, 에러율) 없이 수치만 출력

요약

Locust 자동화의 핵심은 도구가 아니라 테스트 계층화입니다. smoke/functional/performance를 분리하면 빠른 검증과 깊은 검증을 동시에 가져갈 수 있습니다.

Share

Related Articles

Comments

이 블로그는 제가 알고 있는 것들을 잊지 않기 위해 기록하는 공간입니다.
직접 작성한 글도 있고, AI의 도움을 받아 정리한 글도 있습니다.
정확하지 않은 내용이 있을 수 있으니 참고용으로 봐주세요.

© 2026 Seogyu Kim