피드로 돌아가기
How to Set Up a Clean Page Object Model (POM) in Selenium with Java
Dev.toDev.to
Frontend

Page Object Model 도입을 통한 테스트 코드 유지보수 효율 극대화

How to Set Up a Clean Page Object Model (POM) in Selenium with Java

master_blaster2026년 5월 27일1beginner

Context

단일 파일 내 모든 테스트 스크립트를 작성하는 구조로 인한 관리 복잡도 증가. 웹 요소 변경 시 다수의 테스트 스크립트를 개별 수정해야 하는 유지보수 병목 현상 발생.

Technical Solution

  • 테스트 로직과 페이지 레이아웃을 분리하는 Page Object Model 패턴 적용
  • 각 웹 페이지를 독립적인 Page Class로 매핑하여 객체 지향적 구조 설계
  • WebElement Locators를 private 변수로 캡슐화하여 외부 직접 접근을 차단한 구조 구현
  • 페이지 내 상호작용을 전담하는 Action Methods를 통해 테스트 스크립트의 가독성 확보
  • WebDriver 인스턴스를 생성자로 주입받아 페이지 클래스 간 상태 공유 및 일관성 유지

- 웹 요소의 Locator 변경 가능성을 고려하여 private 필드로 캡슐화했는지 확인 - 테스트 스크립트 내에 직접적인 findElement 호출을 배제하고 Action Method를 통한 추상화 계층 구축 - 페이지별로 클래스를 분리하여 코드 재사용성과 가독성을 높이는 구조 적용

원문 읽기