플랫폼
테스트 상태 주입 도구
서버 기반 상태 주입으로 QA와 자동화가 긴 흐름의 어느 단계로든 바로 건너뛸 수 있게 해, 회귀 테스트 준비를 십수 분에서 1분 미만으로 줄였습니다.
- 기술 스택
- TypeScript · Playwright · BFF · Test database
문제
긴 흐름의 5단계에 있는 버그를 확인하려면 먼저 1~4단계를 손으로 끝내야 했습니다. 유효한 정보 입력, 업로드, 검사까지. 매번, 모든 풀 리퀘스트와 모든 자동 실행마다.
접근 방식
이 도구를 쓰면 테스터나 스크립트가 필요한 상태에서 곧바로 앱을 열 수 있습니다.
- Playwright 스크립트나 QA 엔지니어가 안전한 테스트 토큰(예:
?state=step_4_ready)과 함께 페이지를 불러옵니다. - 프론트엔드는 하이드레이션 때 토큰을 확인하고 헤더에 실어 BFF로 전달합니다.
- BFF는 환경이 엄격하게 비프로덕션인지 확인한 뒤, 테스트 데이터베이스에 사용자 세션을 채웁니다. 이전 단계는 완료됐고 현재 위치는 4단계입니다.
- BFF가 실제 세션 토큰을 돌려주고 UI는 곧바로 4단계를 보여 줍니다.
클라이언트에서 localStorage를 모킹하는 대신 서버 기반 주입을 택했습니다. 요즘 앱은 세션을 백엔드에서 검증하기 때문에 클라이언트만의 모의는 현실에서 벗어나고, 여기서는 통과하지만 프로덕션에서는 실패하는 테스트를 만듭니다.
결과
회귀 테스트 준비가 사이클당 10–20분에서 1분 미만으로 줄었습니다. 매주 수많은 풀 리퀘스트 실행과 자동화 스위트가 돌기 때문에, 분기마다 수백 시간의 엔지니어링 시간이 돌아왔습니다.