토스인컴, Functional POM으로 세금 환급 서비스 E2E 자동화 구축!
by DD
6개월 전
조회수 16
Functional POM 도입을 통해 UI 변경에 유연하게 대응하고, 테스트 유지보수 비용을 절감함
클릭 실패에 대한 4단계 폴백 전략, 페이지 전환 자동 감지 기능으로 테스트 안정성을 확보함
개발 후 즉시 자동 검증, 금액 정합성 자동 검증 등 24시간 자동화 시스템 구축으로 QA 효율을 극대화함
Functional POM의 핵심 원리
Functional POM은 상태를 가지는 클래스 대신, 무상태 함수를 사용하여 페이지 동작을 설계한다. 구체적으로, 입력(page, context)을 받아 결과(page)를 반환하는 구조를 가진다. 따라서, UI 변경 시 유지보수 비용 감소와 테스트 코드 가독성 향상을 동시에 달성한다.
클릭 실패를 극복하는 전략
클릭 실패에 대응하기 위해, Enter 키, 기본 클릭, Force 클릭, JS 직접 실행의 4단계 폴백 전략을 사용한다. 구체적으로, React 렌더링 타이밍 문제로 인한 실패를 줄이기 위해 설계되었다. 결과적으로, 테스트 안정성 확보 및 플래키 현상 감소를 이끌어냈다.
24시간 자동화 시스템 구축
24시간 자동화 시스템은 개발 후 즉시 자동 검증, 금액 정합성 자동 검증을 포함한다. HTML 리포트, 비디오 증적, Slack 알림을 통해 결과를 공유한다. 따라서, QA 업무 효율 증대 및 개발 속도 향상을 가능하게 했으며, 지속적인 품질 관리를 지원한다.