목록 보기
뱅크샐러드 iOS팀이 숨쉬듯이 테스트코드 짜는 방식 2편 - 화면 단위 통합 테스트
프론트엔드

뱅크샐러드 iOS팀이 숨쉬듯이 테스트코드 짜는 방식 2편 - 화면 단위 통합 테스트

뱅크샐러드
뱅크샐러드
2022년 4월 27일

두줄요약

iOS 화면 테스트를 이미지 스냅샷과 AXSnapshot으로 나누어 개발·QA 흐름에 적용했습니다. 화면 확인 시간을 줄이고 접근성 및 UI 회귀를 자동 검증하는 방식을 소개합니다.

구조와 흐름

  • 화면 단위 통합 테스트를 이미지 스냅샷과 접근성 스냅샷으로 분리
  • 개발 중 스크린샷 생성·검토 후 디자인 QA를 거쳐 레퍼런스 이미지 확정
  • 확정된 이미지를 CI의 픽셀 단위 회귀 검증 기준으로 활용

트레이드오프

  • 디자인 시안과 실제 렌더링 간 미세한 픽셀 차이로 TDD 및 엄격한 검증 적용의 한계
  • 허용 오차 확대 대신 스냅샷을 개발·QA 보조 수단으로 활용하는 방식
  • 이미지 스냅샷의 낮은 문서성을 AXSnapshot 텍스트 출력으로 보완

성능/운영 포인트

  • 전체 앱 실행과 화면 이동 대신 모듈 빌드·테스트 실행으로 화면 확인 시간 단축
  • XCTest 첨부파일, resultBundle, xcparse를 통한 시나리오별 스크린샷 추출·공유
  • 여러 시뮬레이터와 테스트 플랜 기준의 QA 결과 폴더 관리

적용해볼 점

  • 접근성 속성 배열을 검증해 내부 뷰 속성 노출 없이 View-ViewModel 연결과 화면 정보를 테스트
  • VoiceOver 등 보조기술 사용자 경험의 회귀 방지를 자동화 테스트로 보장
  • 디자인 변경 시 첨부 스크린샷 기반 작업 모드로 전환 후 QA 완료 시 assertion 복구

다음 읽기

#iOS 주제를 이어서 읽기

뱅크샐러드 iOS팀이 숨쉬듯이 테스트코드 짜는 방식 1편 - 통합 UI테스트

iOS 통합 UI 테스트를 기존 코드 수정 없이 도입하고 핵심 기능을 Smoke 테스트로 운영한 방식을 소개합니다. 접근성, 고정 시뮬레이터, 로그 검증을 통해 테스트 신뢰성을 높였습니다.

뱅크샐러드
뱅크샐러드
프론트엔드

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...