피드로 돌아가기
Designing a Scalable Cross-Platform Appium Framework
Dev.toDev.to
DevOps

계층형 아키텍처와 POM 최적화를 통한 Cross-Platform 자동화 프레임워크 설계

Designing a Scalable Cross-Platform Appium Framework

beefed.ai2026년 5월 22일13intermediate

Context

플랫폼별 중복 로직과 드라이버 복잡성으로 인한 테스트 불안정성 증대. UI 테스트 신뢰도 하락에 따른 QA 리소스의 인프라 트리아지 편중 현상 발생.

Technical Solution

  • Test Runner, Orchestration, Page Objects, Platform Adapters로 구분된 6계층 아키텍처 설계
  • DriverFactory를 통한 Capability 관리 일원화로 테스트 코드 내 인라인 설정 제거
  • @AndroidFindBy와 @iOSXCUITFindBy를 활용하여 로케이터와 동작을 동일 클래스 내 응집
  • Page Object 내 Assertion 배제로 서비스 역할과 검증 역할의 책임 분리
  • 반복 UI 요소의 Component Object화를 통한 코드 재사용성 확보 및 중복 제거
  • Accessibility ID 기반의 공통 로케이터 전략으로 플랫폼별 코드 분기 최소화

- Page Object당 메서드 수를 10~20개로 제한하여 단일 책임 원칙 준수 여부 확인 - BasePage에 과도한 헬퍼 메서드를 추가하는 대신 작은 Component Object로 분리 설계 - 드라이버 생성 로직을 DriverFactory로 캡슐화하여 환경 변수 기반 설정 적용 - 플랫폼별 차이는 최소한의 Adapter 클래스에서 처리하고 상위 레이어는 추상화된 서비스 호출

원문 읽기