호환성 테스트를 위한 고려사항과 전략

2024. 8. 12. 18:41·QA성장하기/테스팅 전문 지식 쌓기
  1. 호환성 테스트란?
    1. 호환성 테스트란?
      • 소프트웨어는 디바이스, 운영체제 버전, 해상도, 네트워크 속도 등에 영향을 받는다.
      • 다양한 환경에서 기능이 동일하게 작동하는지 테스트하여, 오류를 제거하고 안정성과 신뢰성을 보장한다.
      • 즉, 서비스하는 제품이 다양한 환경으로 이식이 가능한지 확인하고, 기능이 동일하게 작동하는 지 확인하는 비기능 테스트이다.
  2. 호환성 테스트를 위한 고려사항
    1. 타깃 유저
      • 제품을 실제로 사용하게 될 대상.
      • 서비스할 제품의 목표, 목적, 유형, 성격 또는 특성에 따라 특정 연령층 또는 그룹이 될 수 있다.
      • 타깃 유저는 프로젝트 착수 단계에서 주요 마케팅과 사업 전략에 따라 선정한다.
      • 타깃 유저에 따라 테스트 범위와 주요 기능 우선순위, 디바이스 선정 기준을 결정한다.
    2. 타깃 국가
      • 국가별 지리적/문화적 요소, 언어, 네트워크 속도, 주 사용 디바이스 유형 등 국가적 특이사항을 고려한다.
      • 국가적 특성을 조사하고 테스트 전략을 계획해야 한다.
      • 예를 들어 일본은, 안드로이드보다 ios 디바이스 이용율이 높으니, ios 디바이스를 주요 디바이스로 선정한다.
      • 언어/문화적 특성상 사용하지 않아야 할 단어와 인증/약관/팝업 등이 문화에 맞게 반영되었는지 확인한다.
    3. 디바이스 지원 사양
      • 애플리케이션을 설치하기 위한 최소 시스템 요구 사항
      • 디바이스 범위 선정 시, 애플리케이션이 설치되지 않는 사양까지 테스트에 포함할 필요가 없다.
      • 타깃 국가에서 디바이스 사양 별 유저 사용 비율을 조사하여 테스트 우선순위를 선정한다.
    4. 테스트 일정과 범위
      • 호환성 테스트는 제품의 안정성이 확보된 이후 테스트를 진행하도록 일정을 계획한다.
      • 테스트 일정은 투입된 테스터 수, 테스터의 역량, 테스트 범위와 복잡도, 지원도구를 고려하여 산정한다.
      • 테스트 범위는 우선순위, 하드웨어-소프트웨어 운영체제 버전, 테스트 도구 사용 여부를 고려하여 설계한다.
      • 테스트 범위와 우선순위 선정 시 5가지 고려사항
        • 타깃 유저와 국가, 제품의 목적과 목표를 고려하여 주요 기능과 콘텐츠를 선정한다.
        • 디바이스 해상도에 따라 UI 이슈가 발생할 가능성이 높은 영역을 우선으로 선정한다.
        • 클라이언트 기반 기능을 우선순위로 선정한다. (서버의 경우 호환성에 크기 영향을 받지 않는다.)
        • 하드웨어 운영체제, 디바이스 버전별 업/다운그레이드 테스트, 애플리케이션 설치/실행 테스트를 우선순위로 선정한다.
        • 테스트 지원 도구의 활용 여부를 고려한다.
  3. 호환성 테스트 디바이스와 운영체제 선별
    1. 시중의 하드웨어와 모바일 디바이스, 운영체제, 소프트웨어 버전
      • 데스크탑 운영체제와 브라우저 종류
        데스크탑 운영체제 종류
        운영체제 버전
        윈도우 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 …
    2. 호환성 테스트 디바이스 선별 전략
      • 애플리케이션에서 설치를 허용하는 디바이스 사양과 하드웨어 운영체제 버전, 타깃 국가 등을 고려하여 선정
      • 국가별 주 사용 스마트폰 랭킹을 참고하여 타깃 국가에서 점유율 순위가 높은 디바이스로 선정하고, 점유율이 낮은 디바이스는 테스트 범위에서 제외한다.

      • 예를 들어, 우리나라 모바일 공급시장은 위와 같은데, Samsung, Apple 위주로 테스트하고
        LG, Xiami, Huawei 의 디바이스는 제외하는 것이 좋다.
    3. 디바이스 소프트웨어 버전 선별 전략
      • 국가별 운영체제 시장 점유율을 참고하여 순위가 높은 버전으로 선정하고, 랭킹에서 최고/권장/최저 사양 버전을 구분한다.
      • 시장 점유율이 10% 미만인 운영체제는 테스트 범위에서 제외한다.
      • 인도의 Android 시장 점유율은 위와 같은데, 이때 11.0 ~ 14.0 까지 테스트를 진행한다.
      • 반대로 우리나라의 경우, 11.0 의 점유율은 1.38%로, 테스트할 필요가 없다.
    4. 디바이스 하드웨어 버전 선별 전략
      • 국가의 디바이스 점유율을 확인하고, 비율이 낮은 디바이스를 제외한 뒤, 중복되는 디바이스도 제외한다.
      • 최고, 최소, 권장 사양을 적용하고, 소프트웨어 버전도 추가한다.
  4. 테스트 시나리오 작성
    1. 고려할 내용
      • 호환성 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
    2. 테스트 수행 순서 선정 시 우선순위
      • 디바이스 최소 사양부터  원활한 사용이 가능한 최소 사양을 확인한다.
      • 디바이스 하드웨어와 소프트웨어 버전을 확장하며 버전에 따른 호환성 이슈를 확인한다.
      • 디바이스 해상도별 UI 확인은 가장 마지막에 진행한다.
    3. 테스트 케이스의 주 확인 기능
      • 애플리케이션 설치, 실행, 로그인/로그아웃 기능을 확인하고, 주요 기능과 콘텐츠 이용 원활도를 확인한다.
      • UI 해상도별로 이미지 크기 조정과 국가별 언어 노출 및 줄 바꿈 처리 등이 적절하게 노출되는 지 확인한다.
      • 호환서에 따른 애플리케이션 강제 종료, 멈춤 등의 이상 현상을 확인한다.
      • 애플리케이션 설치 상태에서 서로 다른 디바이스의 하드웨어 운영체제 버전과 기기 버전을 업/다운그레이드하여 환경에 따른 작동 오류와 이식성을 확인한다.
  5. 호환성 테스트로 발견되는 이슈의 처리와 대응 방법.
    1. 호환성 테스트에서 발생할 수 있는 결함
      • 일부 사양에서 애플리케이션이 설치/실행되지 않거나, 크래시가 발생하는 이슈가 있다.
        • 반드시 수정이 필요하지만, 유저 점유율이 높지 않은 특정 디바이스는 논이슈로 처리 가능하다.
      • 이미지가 깜빡거리거나 프레임이 깨지는 현상, 혹은 텍스트가 겹치거나 줄바꿈이 되지 않는 UI 이슈가 있다.
        • 일반적으로 호환성 테스트로 발견하는 이슈 대부분은 UI관련 이슈에 해당된다.
        • UI이슈는 중요도가 낮아 발견한 이슈에 무대응하거나 유지보수 후처리하는 경우가 많다.
        • 다만, 스토어에서 심사 검수 시, 반려될 수 있는 이슈에 해당되지 않는 지 검토가 필요하다.
    2. 이슈 처리 방법에 대한 결정
      • 테스트 담당자는 이슈 분석 결과, 재현율, 점유율 대비 수정비용을 산정하여 처리방안에 명확한 의견을 준다.

'QA성장하기 > 테스팅 전문 지식 쌓기' 카테고리의 다른 글

디바이스 기능 연동 테스트와 인터럽트 테스트의 중요성 및 고려사항.  (0) 2024.08.14
앱 공존성 테스트의 의미와 테스트 방법  (0) 2024.08.13
서버 부하 테스트 전략과 프로세스, 분석 방법  (0) 2024.08.09
자동화 테스트의 의미와 계획과 설계 방법  (0) 2024.08.08
측정한 성능 데이터를 기반으로 분석 및 개선하기  (0) 2024.08.07
'QA성장하기/테스팅 전문 지식 쌓기' 카테고리의 다른 글
  • 디바이스 기능 연동 테스트와 인터럽트 테스트의 중요성 및 고려사항.
  • 앱 공존성 테스트의 의미와 테스트 방법
  • 서버 부하 테스트 전략과 프로세스, 분석 방법
  • 자동화 테스트의 의미와 계획과 설계 방법
몽자비루
몽자비루
QA에 대한것을 공부하기 위한 블로그입니다.
  • 몽자비루
    공부하는 블로그
    몽자비루
  • 전체
    오늘
    어제
    • 분류 전체보기 (196)
      • python (31)
        • python_selenium (16)
        • python_pygame (3)
      • appium (0)
      • 쿠버네티스 (60)
        • linux (8)
        • shell programming (8)
        • docker (18)
        • cka (23)
      • postman&API (16)
      • QA성장하기 (33)
        • 개발자에서 아키텍트로 스터디 (6)
        • 소프트웨어 공학 이해도 높이기 (6)
        • 테스팅 전문 지식 쌓기 (18)
        • 제4회 QA conference (3)
      • 에러일기 (1)
      • Server&load (35)
        • AWS (27)
        • load test (5)
        • CI CD (3)
        • Jmeter (0)
      • RAG 을 활용하여 LLM 만들어보기 (12)
      • git&github (7)
      • 개인 프로젝트 웹사이트 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    로스트아크
    사드웨어리소스
    qa 컨퍼런스
    vi에디터
    e2c
    cka
    개발자에서아키텍트로
    앱공존성
    도커
    테스트 결과보고서
    k8s
    로스트아크api
    postman
    네트워크 테스트
    애플리케이션로그
    포스트맨
    쿠버네티스
    API
    LOSTARK
    application log
    스터디
    qa
    공존성테스트
    테스트스크립트
    qa conference
    python
    리눅스
    QAKOREA
    .cpu
    linux
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
몽자비루
호환성 테스트를 위한 고려사항과 전략
상단으로

티스토리툴바