게임 테스트 튜토리얼: 모바일/데스크톱 앱 테스트 방법
⚡ 스마트 요약
게임 테스트는 비디오 게임에 적용되는 품질 관리 프로세스로, 게임 플레이, 그래픽, 오디오 및 네트워킹 전반에 걸쳐 결함을 찾아내어 플레이어에게 제공되는 빌드가 안정적이고, 규정을 준수하며, 즐겁게 플레이할 수 있도록 하는 것을 목표로 합니다.
게임 테스팅이란 무엇입니까?
게임 테스팅 게임 테스트는 비디오 게임의 품질 관리를 위한 소프트웨어 테스트 프로세스입니다. 게임 테스트의 주요 목표는 비디오 게임의 결함과 버그를 찾아내고 안정성과 성능을 개선하는 것입니다. 게임 테스트는 게임 개발의 한 요소로서, 출시되는 비디오 게임이 버그 없이 완성되도록 보장하는 데 도움을 줍니다.
개별 기법들을 이해하기 전에, 테스트가 더 넓은 개발 주기 내에서 어떤 위치를 차지하는지 파악하는 것이 도움이 됩니다.
게임 개발 수명주기
생산 개시 이전: 이 단계에서는 게임 아이디어, 스토리보드, 기능, 요구사항 분석 및 문서가 작성됩니다. 이 단계에는 기술 설계 문서 및 기능 명세, 게임 아키텍처, 프레임 오버레이 및 애니메이션이 포함됩니다. 다음 항목들이 고려됩니다.
- 음악, 카메라(확대/축소, 재생, 시네마틱 뷰), 플레이어 및 액션 속성
- 다음 레벨로 진입하기 위한 게임 흐름 논리, 규칙 및 조건
- 객체 및 이벤트 트리거, 점수, 플레이어 이동 및 위치 지정, 플레이어 통계
- 비대화형 시퀀스, 특수 효과, 타이틀 화면, 다중 버튼 동작
- 게임패드, 동영상 클립, 충격/진동 효과, 법적 고지, 버튼 기능 사용, 아날로그 및 디지털 모드 사용
세 단계와 각 단계 내의 활동은 아래와 같습니다.

생산: 이 단계에서 실제 코딩 작업이 진행됩니다. 이 단계에는 다양한 모듈의 코딩 및 통합 작업이 포함됩니다.
테스트 및 배포: 이 단계에서는 기능 테스트, 회귀 테스트, 알파, 베타 및 골드 마일스톤 테스트가 수행됩니다. 또한 모바일 게임 테스트 도구를 사용하여 코드 커버리지 및 흐름 테스트, 데이터 무결성 테스트, 알고리즘별 테스트, 경로 테스트 및 증분 테스트도 진행합니다.
게임 테스트는 다른 소프트웨어 테스트와 어떻게 다를까요?
게임 테스트는 반복적인 과정입니다. 새로운 빌드가 나올 때마다 버그가 있을 수 있으므로 철저하게 테스트해야 합니다.
게임 테스트는 게임의 규모나 제작에 필요한 시간에 관계없이 기본적인 구조를 따릅니다.
품질 보증 전문가는 게임 규칙 및 요구 사항을 숙지하고, 게임 구성 요소의 전체 아키텍처, 파일 아키텍처, 흐름, 파일 구조 및 게임과 관련된 종속성을 이해해야 합니다. 게임의 새로운 프로토타입이 나올 때마다 테스트 문서를 재검토하여 사양 변경, 새로운 게임 테스트 케이스 및 새로운 구성 지원을 반영해야 합니다. 또한 비디오 게임 테스터는 새로운 문제가 발생하지 않았는지 확인해야 합니다.
게임 테스터 업무에는 다음이 포함됩니다:
- 의도된 목적과 대상 고객을 기준으로 요구 사항을 분류합니다.
- 사용자 및 시스템 요구사항을 파악하고 이를 기능적 요구사항, 비기능적 요구사항 및 도메인 요구사항으로 분류합니다.
- 기능적 요구사항과 비기능적 요구사항에 대해 검증 가능한 항목, 검증 불가능한 항목, 목표 및 측정 기준을 파악합니다.
- 기능 요구사항이 완전하고, 일관성이 있으며, 이해하기 쉬운지 확인하십시오.
- 맞춤 설정이 가능한 요구 사항과 상충되는 요구 사항을 파악합니다.
- 상호 의존적인 요구 사항을 파악하는 것은 게임 테스트의 핵심 업무 중 하나입니다.
- 요구사항의 고유성, 복잡성 및 중요도를 기준으로 우선순위를 정하십시오.
- 게임의 테마, 캐릭터, 애니메이션, AI, 시네마틱 영상, 카메라 시점 및 게임플레이를 파악하십시오.
비디오 게임 테스터가 되고 싶다면, 꼭 한번 봐야 할 무료 튜토리얼이 있습니다. 비디오 게임 테스터가 되는 방법.
게임 테스트 유형
아래는 널리 사용되는 게임 테스트 기법들입니다. 각 기법은 서로 다른 유형의 결함을 탐지하는 것을 목표로 하며, 출시 준비가 완료된 게임은 일반적으로 이러한 기법들을 모두 거치게 되며, 특정 기법만을 선택적으로 거치는 경우는 드뭅니다.
1) 기능 테스트
기능 QA 테스터는 게임 또는 사용자 인터페이스 및 그래픽에서 발생하는 일반적인 문제, 예를 들어 게임 메커니즘 문제, 안정성 문제 및 게임 자산의 무결성 문제를 찾습니다. 사용자 인터페이스 테스트는 게임의 사용자 친화성을 보장합니다. 이는 다음과 같은 분야와 동일합니다. 기능 테스트 다른 모든 응용 프로그램에서는 비즈니스 규칙이 아닌 게임 플레이 규칙에 적용됩니다.
예: 색상 및 배경, 메뉴 구조, 화면 방향 및 해상도, 글꼴 크기, 정렬 오류, 사용성, 로딩 시간, 타임아웃 및 표시와 같은 시스템 탐색, 정렬, 확인 메시지, 순서, 게임의 애니메이션 및 오디오 요소, 지침 및 대화 메시지를 확인합니다. 또한 사용자 상호 작용, 사용자 인터페이스, 거래 테스트, 휴대폰 카메라의 보정 및 정확도 테스트, 화면 해상도, 모바일 반응형 디자인 테스트 및 오디오 품질 테스트도 포함합니다.
2) 호환성 테스트
게임이 다양한 기기와 하드웨어 및 소프트웨어 구성에서 호환되는지 확인합니다. GPU 드라이버와 화면 비율이 게임 렌더링 방식에 영향을 미치기 때문에 대부분의 애플리케이션보다 게임의 경우 광범위한 기기 호환성이 더욱 중요합니다. 자세한 내용은 다음을 참조하세요. 호환성 테스트 일반적인 기법에 대해서입니다.
예: 지원되는 모든 콘솔, 데스크톱 및 모바일 기기에 게임을 설치하고 제거하세요.
3) 성능 테스트
게임의 전반적인 성능을 점검합니다. 게임 속도를 최적화하기 위해 성능 튜닝을 수행합니다. 더 자세한 내용은 다음에서 다룹니다. 성능 시험그리고 모바일 기기별 각도는 다음과 같습니다. 모바일 앱 성능 테스트.
성능 테스트 중 확인되는 주요 매개변수:
- 클라이언트 및 서버 응답 시간, 트랜잭션 완료 시간, 최대 부하 성능, 수명, 네트워크 범위, 메모리 누수, 메모리 부족, 배터리 부족, 애플리케이션 다운로드 시간, 애플리케이션 서버에 대한 동시(다중 사용자) 액세스, 속도, 처리량, 신뢰성 및 확장성.
- 배터리 소모량 및 그래픽 성능: 모바일 게임의 배터리 소모량을 측정해야 합니다. 장시간 사용 시에도 배터리 소모량이 최적이어야 하며, 다양한 기기에서 여러 가지 부하 조건에서도 게임 반응 속도가 만족스러워야 합니다.
- 프로세서 및 메모리 제약 조건: 성능 카운터는 애플리케이션의 CPU 및 메모리 사용량을 측정하는 데 사용됩니다.
- 네트워크 연결: 다양한 네트워크 유형(Wi-Fi, 3G, 4G, 5G)에서 모바일 게임의 응답 시간을 측정합니다. 이를 통해 불안정한 네트워크 환경에서 게임이 얼마나 잘 작동할지 전반적인 전망을 파악할 수 있으며, 모바일 기기, 데이터 센터 및 클라우드 간의 연결 상태도 점검합니다. 피크 시간대, 불안정한 연결, 데이터 중복, 패킷 손실 및 데이터 조각화 등을 모두 모니터링합니다.
- 모바일 게임, 특히 MMO 게임의 성능 테스트.
4) 적합성/준수성 테스트
이는 마켓플레이스 가이드라인 준수(예: Apple App Store 정책) 및 기업 정책 준수(예: 금지 콘텐츠)를 포함합니다. 준수 사항에는 PEGI 및 ESRB와 같은 규제 기관의 규정도 포함될 수 있습니다. 게임은 특정 콘텐츠 등급을 목표로 제작되며, 해당 등급에 부적절한 문제가 있는 콘텐츠가 발견되면 이를 식별하여 보고합니다. 라이선스 승인 신청 과정에서 단 하나의 위반 사항이라도 발견될 경우 게임이 거부될 수 있으며, 추가 테스트 및 재신청에 따른 비용이 발생할 수 있습니다.
예: 유럽 국가에 출시될 게임이라면 PAL 변환 테스트를 진행하고, 북미 지역용으로 제작될 게임이라면 NTSC 변환 테스트를 진행하십시오.
5) 현지화 테스트
현지화 테스트 글로벌 시장을 겨냥한 게임이라면 이러한 작업이 필수적입니다. 게임 제목, 콘텐츠, 텍스트는 여러 언어로 번역되어 다양한 기기에서 테스트되어야 합니다. 클라우드 기반 기기 접근 및 테스트 자동화를 활용하면 이러한 테스트를 신속하게 수행할 수 있습니다.
예: 중동/북아프리카(MENA) 지역 특유의 현지화 요구 사항, 아랍어 현지화(오른쪽에서 왼쪽으로 쓰는 텍스트 지원, 양방향 표시), 가상 현지화 테스트, 동아시아 언어용 더블바이트 문자, 현지 시간 및 날짜, 통화, 주소 형식 및 기타 현지 요구 사항을 충족해야 합니다.
6) 침수 테스트
이 게임 자동화 테스트 기법은 게임을 다양한 작동 모드(예: 유휴, 일시 정지 또는 타이틀 화면)에서 장시간 실행하는 것입니다. 이러한 장시간 실행을 통해 메모리 누수나 반올림 오류를 찾아낼 수 있습니다.
예: 게임이 시작되고 캐릭터는 24시간 동안 아무런 동작도 하지 않은 상태로 유지됩니다. 이 기법은 게임 엔진의 메모리 누수 및 기타 결함으로 인한 충돌을 감지하는 데 사용됩니다.
7) 복구 테스트
소프트웨어에서는 회복 테스트 이 테스트는 애플리케이션이 충돌, 하드웨어 오류 및 기타 유사한 오류로부터 얼마나 잘 복구되는지 확인합니다. 애플리케이션에 강제로 오류를 발생시킨 후, 오류 상황 및 환경에서 어떻게 복구되는지 관찰합니다.
예: 게임 애플리케이션이 실행 중인 동안 게임 콘솔을 갑자기 재시작하고 데이터 무결성을 검증하십시오.
8) 보안 테스트
보안 테스트는 소프트웨어가 외부 위협에 노출되었을 때 얼마나 안전하게 작동하는지 확인하기 위해 수행됩니다. 여기에는 외부 위협으로부터의 데이터 보호, 통제되지 않은 시스템 접근 제한, 데이터 유출, 운영 체제 결함, 통신 시스템 결함 및 취약한 암호화 알고리즘 등이 포함됩니다.
예: 변경 URL 게임 사이트에서 /login에서 /play로 바로 이동하는 경로는 게임에 직접 접속할 수 있도록 허용해서는 안 됩니다.
9) 기타 게임 테스트
실제 또는 가상 캐릭터 테스트. 멀티플레이어 비디오 게임에서 서버와의 연결성과 게임 상태의 동기화는 테스트해야 할 두 가지 중요한 영역입니다.
예: 멀티플레이어 3D 레이싱 게임.
게임 진행 상황 업데이트, 친구 초대, 프리미엄 선물 공유 등 새로운 기능들을 테스트 중입니다. 이를 통해 사용자에게 더욱 풍부한 게임 경험을 제공할 수 있습니다.
예: 페이스북, 블로그.
사운드 테스트
파일 로딩 오류 테스트, 음성 파일 청취를 통한 오류 또는 왜곡 확인, CC 프로파일러를 사용한 색상 해설 분석.
데이터베이스 및 게임 통계
디버깅을 통해 데이터베이스 검증을 수행하여 게임이 데이터를 올바르게 사용하고 있는지 확인합니다. 데이터가 올바른 위치에 로드되고 정확한 정보가 표시되는지 확인합니다.
화이트박스 테스트
게임 화이트박스 테스트는 모바일 게임의 아키텍처, 통합 및 시스템 측면에 중점을 둡니다.
- Code 검사 : 소스 코드를 검토하고 프로그램 논리, 일반적인 프로그래밍 오류 및 코딩 표준 준수 여부를 분석합니다.
- 초점 테스트: 코드 덩어리가 격리된 모듈에 입력되고 출력이 분석됩니다.
- 데이터 분석: 데이터 사용, 해석 및 조작은 다양한 모듈에 대해 분석 및 검증됩니다.
- 경로 및 흐름 테스트: 올바른 순서로 객체가 실행됩니다.
- 알고리즘별 테스트: 코드에서 데이터 변수와 데이터 값을 설정하고 런타임 환경에서 실행하여 특정 게임 시나리오 또는 기능을 테스트합니다.
- 인공지능 분석: AI 구성 요소의 프로그래밍 가능한 동작 및 플레이에 대한 실행 통계가 생성됩니다. 결과는 모든 프로그래밍 가능한 동작이 사용되었는지 확인하기 위해 검증됩니다. 예를 들어 스노보드에서의 사이드 그립이나 다방향 동작에서의 콤비네이션 펀치 또는 킥과 같은 플레이가 있습니다.
적응형 기술을 사용한 보조 게임
보조 게임은 접근성 게임이라고도 합니다. 시력 저하, 시야 흐림, 시각 장애, 색각 이상, 언어, 청각, 인지, 운동 및 이동 장애 등 다양한 장애를 가진 사용자를 위해 적응 기술을 사용하여 기능이 설계되었습니다. 검증 방식은 다음과 같은 원칙을 따릅니다. 접근성 테스트 주류 소프트웨어에서.
방위표(Cardinal Direction, CD)와 런던탑(Tower of London, TOL)은 시각 장애인 사용자를 위해 변형된 인기 게임 두 가지입니다. 이 게임에서는 시각적 자극이 청각적 입력으로 대체됩니다.
비디오 게임 테스터는 이러한 게임을 테스트할 때 다음 사항에 유의해야 합니다.
- 색상은 일정한 패턴으로 깜빡여야 하며, 각 색상마다 음색이 달라야 합니다.
- 각 색상에는 청각적 톤이 수반되어야 합니다.
- 시각 데이터는 시각 장애가 있는 사용자가 화면 낭독기를 통해 정보를 받아들이는 데 어려움을 겪지 않도록 단어로 설명되어야 합니다.
- 플레이어는 게임 내 소리를 3차원으로 들을 수 있어야 하며, 터치스크린, 3D 오디오 및 공간 음향을 사용하여 게임 세계를 탐색할 수 있어야 합니다.
테스터가 알아야 할 게임 지표
테스트 결과만으로는 스튜디오에서 릴리스의 성공 여부를 판단할 수 없습니다. 다음은 테스터가 결함 보고서와 함께 살펴봐야 하는 수치입니다.
DAU/MAU(일일 활성 사용자 / 월간 활성 사용자): 매일 게임을 플레이하는 활성 사용자 수와 월간 활성 사용자 수의 비율입니다. 흔히 '사용자 유지율'이라고도 합니다.
세션: 사용자가 앱을 열 때마다 세션으로 계산됩니다. 여기서는 일일 활성 사용자(DAU)당 평균 세션 수에 초점을 맞춥니다.
순위 다운로드: 특정 앱 스토어(iOS, Android 플레이) 월간 게임 다운로드 기준.
보유: 매우 중요한 지표 Android 무료 게임의 게임 테스터입니다. 사용자 유지율을 계산하기 위해 애플리케이션 다운로드 날짜를 기준으로 사용자를 코호트로 나눕니다.
성능 메트릭 : Bowman의 trac온라인 게임이나 지속적인 게임의 성능, 즉 클라이언트 하드웨어 플랫폼에서 게임이 실행되는 프레임 속도 또는 게임 서버의 경우 안정성을 나타내는 지표입니다. 성능 지표는 변경되는 기능 및 업데이트를 모니터링하는 데 사용할 수 있습니다.
게임 테스트의 주요 위험
아래와 같은 위험 요소들은 기술적으로는 정상적으로 작동하는 프로젝트를 상업적으로 실패로 이끄는 가장 흔한 원인입니다.
- 이 게임은 목표 고객층에게 매력적인 경험을 제공하지 못합니다.
- 이 게임은 플레이어 중심적인 디자인을 가지고 있지 않습니다.
- 재미와 중독성 있는 게임플레이 요소가 부족합니다.
- 이 게임은 독창적이지도 않고, 경쟁적이지도 않으며, 속도감도 빠르지 않습니다.
- 이 게임은 기술적인 문제, 제대로 작동하지 않는 기능, 심각한 버그, 형편없는 음악과 사운드, 또는 조악한 영상 때문에 실패했습니다.
- 게임 개발 비용이 예산을 초과했습니다.
- 미적 디자인과 게임플레이는 단순하게 유지되지 않습니다.
