올리브영 QA, UI 테스트 자동화 구조 공개!

by DD
2년 전
조회수 9

UI 테스트 자동화 스크립트의 유지보수 어려움을 페이지 객체 모델(POM)로 해결

POM을 통해 UI 요소 변경 시, 해당 요소만 수정하여 유지보수성 향상

pytest 프레임워크를 활용한 UI 테스트 자동화 구조 및 실행 방법 제시

POM(Page Object Model)의 핵심 원리

페이지 객체 모델(POM)은 각 웹 페이지를 객체로 캡슐화하여 테스트 코드의 가독성을 높인다. 구체적으로, UI 요소와 상호작용하는 로직을 별도 클래스로 분리하여 코드 중복을 제거한다. 따라서 UI 변경에 유연하게 대응하고 테스트 유지보수 비용을 절감한다.

POM과 기존 UI 테스트의 비교

기존 UI 테스트는 UI 요소 변경 시, 여러 스크립트를 수정해야 하는 유지보수 문제가 있었다. POM은 UI 요소 변경 시 해당 객체만 수정하면 되므로 유지보수성이 향상된다. 테스트 코드UI 구현을 분리하여 테스트의 안정성을 확보한다.

pytest를 활용한 UI 테스트 자동화

올리브영은 pytest 프레임워크를 사용하여 UI 테스트를 자동화한다. fixture를 통해 웹 드라이버를 설정하고, 테스트 실행 전후 작업을 정의한다. CLI 옵션을 통해 테스트 환경을 유연하게 구성하여, 다양한 환경에서 테스트를 수행한다.

UI 테스트 자동화 구조

댓글 0

첫 번째 댓글을 남겨보세요!