QA성장하기/테스팅 전문 지식 쌓기
호환성 테스트를 위한 고려사항과 전략
몽자비루
2024. 8. 12. 18:41
- 호환성 테스트란?
- 호환성 테스트란?
- 소프트웨어는 디바이스, 운영체제 버전, 해상도, 네트워크 속도 등에 영향을 받는다.
- 다양한 환경에서 기능이 동일하게 작동하는지 테스트하여, 오류를 제거하고 안정성과 신뢰성을 보장한다.
- 즉, 서비스하는 제품이 다양한 환경으로 이식이 가능한지 확인하고, 기능이 동일하게 작동하는 지 확인하는 비기능 테스트이다.
- 호환성 테스트란?
- 호환성 테스트를 위한 고려사항
- 타깃 유저
- 제품을 실제로 사용하게 될 대상.
- 서비스할 제품의 목표, 목적, 유형, 성격 또는 특성에 따라 특정 연령층 또는 그룹이 될 수 있다.
- 타깃 유저는 프로젝트 착수 단계에서 주요 마케팅과 사업 전략에 따라 선정한다.
- 타깃 유저에 따라 테스트 범위와 주요 기능 우선순위, 디바이스 선정 기준을 결정한다.
- 타깃 국가
- 국가별 지리적/문화적 요소, 언어, 네트워크 속도, 주 사용 디바이스 유형 등 국가적 특이사항을 고려한다.
- 국가적 특성을 조사하고 테스트 전략을 계획해야 한다.
- 예를 들어 일본은, 안드로이드보다 ios 디바이스 이용율이 높으니, ios 디바이스를 주요 디바이스로 선정한다.
- 언어/문화적 특성상 사용하지 않아야 할 단어와 인증/약관/팝업 등이 문화에 맞게 반영되었는지 확인한다.
- 디바이스 지원 사양
- 애플리케이션을 설치하기 위한 최소 시스템 요구 사항
- 디바이스 범위 선정 시, 애플리케이션이 설치되지 않는 사양까지 테스트에 포함할 필요가 없다.
- 타깃 국가에서 디바이스 사양 별 유저 사용 비율을 조사하여 테스트 우선순위를 선정한다.
- 테스트 일정과 범위
- 호환성 테스트는 제품의 안정성이 확보된 이후 테스트를 진행하도록 일정을 계획한다.
- 테스트 일정은 투입된 테스터 수, 테스터의 역량, 테스트 범위와 복잡도, 지원도구를 고려하여 산정한다.
- 테스트 범위는 우선순위, 하드웨어-소프트웨어 운영체제 버전, 테스트 도구 사용 여부를 고려하여 설계한다.
- 테스트 범위와 우선순위 선정 시 5가지 고려사항
- 타깃 유저와 국가, 제품의 목적과 목표를 고려하여 주요 기능과 콘텐츠를 선정한다.
- 디바이스 해상도에 따라 UI 이슈가 발생할 가능성이 높은 영역을 우선으로 선정한다.
- 클라이언트 기반 기능을 우선순위로 선정한다. (서버의 경우 호환성에 크기 영향을 받지 않는다.)
- 하드웨어 운영체제, 디바이스 버전별 업/다운그레이드 테스트, 애플리케이션 설치/실행 테스트를 우선순위로 선정한다.
- 테스트 지원 도구의 활용 여부를 고려한다.
- 타깃 유저
- 호환성 테스트 디바이스와 운영체제 선별
- 시중의 하드웨어와 모바일 디바이스, 운영체제, 소프트웨어 버전
- 데스크탑 운영체제와 브라우저 종류
데스크탑 운영체제 종류 운영체제 버전 윈도우 7~11 애플 맥 10.10, sierra, mojave, high sierra, catalina 유닉스 Budgie, Cinnamon, XFCE, LXQt, GNOME 브라우저 종류 브라우저 Chrome, Safari, Opera, Firefox, Edge, Samsung internet ... - 모바일 디바이스와 하드웨어 운영체제 종류
브랜드 디바이스 유형 하드웨어 운영체제 버전 Samsung phone/pad/watch S4, S6 … S23, S24 apple phone/pad /watch 6, 7 … 14/pro max, 15/pro max Xiaomi phone/pad mi1, mi2 … mi11/pro, mi12/pro OPPO phone/pad Reno4, F7 … R17, X6 vivio phone/pad X9, X20 … X27, X30 Google Pixel phone/pad/pixelbook 4,5 … 6, 7a other phone/pad … - 모바일 디바이스와 소프트웨어 운영체제 종류
브랜드 소프트웨어 운영체제 버전 Samsung 4.4 ~ 14 apple 4 ~ 17 Xiaomi 4 ~ 14 OPPO 4.4 ~ 14 vivio 4 ~ 14 Google Pixel 4.4 ~ 14 other …
- 데스크탑 운영체제와 브라우저 종류
- 호환성 테스트 디바이스 선별 전략
- 애플리케이션에서 설치를 허용하는 디바이스 사양과 하드웨어 운영체제 버전, 타깃 국가 등을 고려하여 선정
- 국가별 주 사용 스마트폰 랭킹을 참고하여 타깃 국가에서 점유율 순위가 높은 디바이스로 선정하고, 점유율이 낮은 디바이스는 테스트 범위에서 제외한다.
- 예를 들어, 우리나라 모바일 공급시장은 위와 같은데, Samsung, Apple 위주로 테스트하고
LG, Xiami, Huawei 의 디바이스는 제외하는 것이 좋다.
- 디바이스 소프트웨어 버전 선별 전략
- 국가별 운영체제 시장 점유율을 참고하여 순위가 높은 버전으로 선정하고, 랭킹에서 최고/권장/최저 사양 버전을 구분한다.
- 시장 점유율이 10% 미만인 운영체제는 테스트 범위에서 제외한다.
- 인도의 Android 시장 점유율은 위와 같은데, 이때 11.0 ~ 14.0 까지 테스트를 진행한다.
- 반대로 우리나라의 경우, 11.0 의 점유율은 1.38%로, 테스트할 필요가 없다.
- 디바이스 하드웨어 버전 선별 전략
- 국가의 디바이스 점유율을 확인하고, 비율이 낮은 디바이스를 제외한 뒤, 중복되는 디바이스도 제외한다.
- 최고, 최소, 권장 사양을 적용하고, 소프트웨어 버전도 추가한다.
- 시중의 하드웨어와 모바일 디바이스, 운영체제, 소프트웨어 버전
- 테스트 시나리오 작성
- 고려할 내용
- 호환성 TC는 기능 TC의 기본 구성인 수행 절차와 기대 결과로 구성되어 있지 않다.
- 테스트할 디바이스가 각 케이스의 메인 카테고리가 되고, 수행기능 자체가 결과 입력 항목으로 수행되어 기능별 확인 결과를 기입하도록 작성한다.
OS Device Vender ver 해상도 CPU Ram 설치 실행 로그인/아웃 … 앱 삭제 ios iPhone SE 10.1.1 640x1136 Dual-core 1.84GHz 2GB Pass Fail N/A … Pass android Galaxy S7 6.0.1 1440x2560 Quad-core 2x2.15GHz 4GB Pass Fail N/A … Pass
- 테스트 수행 순서 선정 시 우선순위
- 디바이스 최소 사양부터 원활한 사용이 가능한 최소 사양을 확인한다.
- 디바이스 하드웨어와 소프트웨어 버전을 확장하며 버전에 따른 호환성 이슈를 확인한다.
- 디바이스 해상도별 UI 확인은 가장 마지막에 진행한다.
- 테스트 케이스의 주 확인 기능
- 애플리케이션 설치, 실행, 로그인/로그아웃 기능을 확인하고, 주요 기능과 콘텐츠 이용 원활도를 확인한다.
- UI 해상도별로 이미지 크기 조정과 국가별 언어 노출 및 줄 바꿈 처리 등이 적절하게 노출되는 지 확인한다.
- 호환서에 따른 애플리케이션 강제 종료, 멈춤 등의 이상 현상을 확인한다.
- 애플리케이션 설치 상태에서 서로 다른 디바이스의 하드웨어 운영체제 버전과 기기 버전을 업/다운그레이드하여 환경에 따른 작동 오류와 이식성을 확인한다.
- 고려할 내용
- 호환성 테스트로 발견되는 이슈의 처리와 대응 방법.
- 호환성 테스트에서 발생할 수 있는 결함
- 일부 사양에서 애플리케이션이 설치/실행되지 않거나, 크래시가 발생하는 이슈가 있다.
- 반드시 수정이 필요하지만, 유저 점유율이 높지 않은 특정 디바이스는 논이슈로 처리 가능하다.
- 이미지가 깜빡거리거나 프레임이 깨지는 현상, 혹은 텍스트가 겹치거나 줄바꿈이 되지 않는 UI 이슈가 있다.
- 일반적으로 호환성 테스트로 발견하는 이슈 대부분은 UI관련 이슈에 해당된다.
- UI이슈는 중요도가 낮아 발견한 이슈에 무대응하거나 유지보수 후처리하는 경우가 많다.
- 다만, 스토어에서 심사 검수 시, 반려될 수 있는 이슈에 해당되지 않는 지 검토가 필요하다.
- 일부 사양에서 애플리케이션이 설치/실행되지 않거나, 크래시가 발생하는 이슈가 있다.
- 이슈 처리 방법에 대한 결정
- 테스트 담당자는 이슈 분석 결과, 재현율, 점유율 대비 수정비용을 산정하여 처리방안에 명확한 의견을 준다.
- 호환성 테스트에서 발생할 수 있는 결함