작은 iPhone을 위한 iOS 시각 QA

작은 iPhone에서 문장, 정보 밀도와 위계를 확인하도록 만든 iOS 릴리스 게이트

한강자리 iOS 릴리스 후보는 iPhone 17 Pro Max에서 텍스트 잘림 없이 표시됐다. 같은 화면을 작은 iPhone에서 열자 숫자 주변 간격, 알림 문장과 위젯 정보 밀도가 달라졌다.

설치·실행 검증과 화면 크기별 시각 검증을 분리하고 작은 iPhone을 필수 릴리스 게이트에 넣었다.

큰 화면에 치우친 테스트

출시 후보에는 단위 테스트, 스크린샷과 실기기 설치·실행 기록이 있었다. 반복 확인한 실기기와 App Store용 스크린샷은 iPhone 17 Pro Max에 치우쳤고 작은 화면의 문장과 정보 밀도는 별도 검사 항목이 아니었다.

큰 화면의 설치·실행 성공은 작은 화면의 문장과 정보 밀도를 검증하지 못했다.

확인 축기존 확인 방식바꾼 확인 방식
실기기 확인iPhone 17 Pro Max 위주로 반복 확인iPhone 12 mini와 iPhone 13 Pro를 최종 확인 축으로 둠
스크린샷App Store용 큰 화면 캡처 중심SE, mini, 표준, Pro Max 계열을 함께 봄
검증 의미설치와 실행 성공을 화면 품질 확인처럼 받아들임OS 경로 확인과 화면 밀도 확인을 분리함
언어와 모드대표 화면을 빠르게 확인5개 언어와 차량 모드, 일반 모드를 조합해 확인
산출물통과 로그와 캡처 이미지캡처 이미지와 측정 기록을 함께 남김

큰 화면에서는 전체 정보 구조와 기본 동작을 빠르게 확인했다. 작은 화면 검증에는 여백, 줄바꿈, 버튼 위치, 접근성 글자 크기와 위젯 밀도를 별도 항목으로 추가했다.

작은 화면에서 달라지는 버그

작은 화면에서는 잘림, 문장의 의미와 정보 우선순위를 확인했다.

홈 히어로에서는 네 자리 주차 수와 단위 라벨을 한 줄에 유지했다. 좁은 화면에서 공원 표시점과 큰 문장 사이가 벌어진 문제는 세로 간격을 따로 측정해 조정했다.

SwiftUI 레이아웃은 물리 픽셀 대신 point(pt)를 사용하므로 실제 기기에서 나온 3x 스크린샷을 point로 환산했다. 조정 전 표시점과 큰 문장 사이는 86-87px, 즉 28.7-29.0pt였다. 조정 뒤에는 74-75px, 즉 24.7-25.0pt가 됐다. 작은 iPhone의 목표 범위는 22-26pt로 정했다.

즐겨찾기 알림 행을 펼친 작은 화면에서는 주차면 임계값 문장이 숫자 조절기와 떨어졌다. 화면에는 “빈자리가 대 이하로 남으면 알려요.”처럼 값이 빠진 문장이 표시됐다.

일반 모드 중간 크기 위젯의 오른쪽 좁은 영역에는 날씨, 미세먼지, 초미세먼지, 이벤트, 날짜와 하단 액션 버튼이 들어갔다. 빠르게 읽을 항목을 남기기 위해 날씨·대기질 표시를 줄이고 이벤트를 두 줄로 제한했다.

사례놓친 것바꾼 것검증한 것
홈 히어로좁은 화면에서 표시점과 큰 문장 사이가 목표 범위를 벗어남네 자리 주차 수와 단위 라벨을 안정화하고 히어로 값 영역의 위쪽 간격을 좁힘5개 언어, 차량 모드와 일반 모드, iPhone 12 mini와 iPhone 13 Pro 실기기 pt 간격 측정
알림 설정375pt, 390pt 화면에서 임계값 문장이 숫자 조절기와 떨어져 의미가 끊김좁은 화면용 문장을 완성형으로 바꾸고 선택지와 스크롤 여백을 조정SE, mini, 표준, Pro Max 시뮬레이터 캡처와 필수 실기기 최종 확인
일반 모드 위젯중간 크기 위젯 오른쪽 영역에서 정보 우선순위가 드러나지 않음날씨와 대기질을 작은 지표 묶음으로 줄이고 이벤트를 두 줄로 제한WidgetKit #Preview 크기, 접근성 글자 크기, 위젯 집중 테스트, 실기기 최종 확인

세 사례 모두 작은 화면에서 정보의 의미와 우선순위가 유지되는지를 검사 항목으로 만들었다.

릴리스 게이트가 된 시각 QA

작은 화면 확인을 반복 가능한 릴리스 게이트로 만들었다.

홈 화면 캡처와 측정을 하나의 확인 흐름으로 묶었다. 같은 데이터 상태로 앱을 열고 기기·언어·모드 조합마다 화면을 저장한 뒤 첫 화면의 주요 위치를 측정했다.

캡처 파일의 픽셀 좌표는 기기 scale을 적용해 point로 환산했다. SwiftUI 레이아웃에서 차지하는 공간은 point와 화면 높이 대비 위치로 비교했다.

PPI와 기준 픽셀 해상도는 캡처 기기를 식별하는 정보로 기록했다. UI가 차지하는 공간은 point와 화면 높이 대비 위치로 판단했다.

검증 매트릭스는 다음과 같다.

  • 실기기: iPhone 12 mini, iPhone 13 Pro
  • 시뮬레이터: iPhone SE 3, iPhone 12 mini, iPhone 17, iPhone 17 Pro Max
  • 언어: 한국어, 영어, 일본어, 중국어 간체, 중국어 번체
  • 모드: 차량, 일반

이 조합으로 60장의 홈 화면 밀도 점검용 스크린샷을 만들었다. 표시점과 히어로 문장 사이의 간격, 히어로가 시작되는 위치, 예보 영역과 첫 번째 섹션이 시작되는 위치를 point와 화면 높이 대비 비율로 측정했다. 측정값과 캡처를 함께 보고 작은 화면, 표준 화면과 큰 화면에서 정보 밀도와 위계를 비교했다.

숫자 범위는 검토 기준으로 사용했다. 예를 들어 표시점과 히어로 문장 사이의 간격은 22-26pt로 정했다. 언어에 따라 텍스트 높이가 달라지거나 위치 비율이 기준을 1%p 넘으면 캡처에서 잘림, 의도하지 않은 줄바꿈과 첫 화면 맥락 손실을 확인했다.

자동 캡처와 측정은 사람이 확인할 기기·언어·모드 조합의 누락을 찾는 데 사용했다.

테스트별 실패 범위

SwiftUI와 WidgetKit UI는 단위 테스트, preview·시뮬레이터와 실기기에서 서로 다른 실패를 확인했다.

단위 테스트로 표시 상태와 큰 숫자 입력을 검사했다. 네 자리 주차 수, 모드별 히어로 값 영역과 위젯 표시값을 만드는 규칙은 화면을 만들기 전에 테스트로 고정했다.

#Preview와 시뮬레이터 스크린샷으로 화면 크기와 Dynamic Type 조합을 확장했다. 중간 크기 위젯은 329x155pt, 338x158pt, 364x170pt와 XXXL, Accessibility2 글자 크기에서 정보 과밀을 확인했다. 해결책은 작은 point 공간에 표시할 정보량을 줄이는 것이었다.

시뮬레이터로 화면 계열을 확인한 뒤 iPhone 12 mini와 iPhone 13 Pro에서 설치·실행과 레이아웃을 최종 검증했다. 큰 화면 실기기는 필수 최종 확인 경로에서 제외했다.

릴리스 기록에는 각 검사가 확인한 범위와 확인하지 못한 범위를 함께 남겼다.

메인 기기 밖의 테스트 매트릭스

한강자리의 지원 범위에는 작은 화면, 큰 Dynamic Type, 표준 화면과 큰 화면이 포함된다. 실패 가능성이 높은 작은 화면과 큰 Dynamic Type부터 문장, 밀도와 위계를 확인했다.

iOS 릴리스 후보는 작은 화면과 큰 Dynamic Type처럼 실패하기 쉬운 조건부터 확인한다. 각 검사는 빌드 실행, 문장 보존, 위젯 밀도 중 무엇을 확인하는지 구분해 기록한다.

Apple의 Layout 지침은 여러 기기, 현지화와 글자 크기에서 preview할 것을 권고한다.

Comments

댓글

    이미지 확대