KR20190019009A - 게임 테스트 자동화 장치 및 방법 - Google Patents
게임 테스트 자동화 장치 및 방법 Download PDFInfo
- Publication number
- KR20190019009A KR20190019009A KR1020180083824A KR20180083824A KR20190019009A KR 20190019009 A KR20190019009 A KR 20190019009A KR 1020180083824 A KR1020180083824 A KR 1020180083824A KR 20180083824 A KR20180083824 A KR 20180083824A KR 20190019009 A KR20190019009 A KR 20190019009A
- Authority
- KR
- South Korea
- Prior art keywords
- test
- game
- information
- script
- build
- Prior art date
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Debugging And Monitoring (AREA)
Abstract
게임 테스트를 자동화 할 수 있는 게임 테스트 자동화 장치가 개시된다. 게임 테스트 자동화 장치는 게임 서비스 내에서 테스트하고자 하는 게임 스크립트들의 조합인 테스트 프로시져(test procedure) 정보를 저장하는 데이터베이스, 및 상기 테스트 프로시져 정보에 기초하여 상기 게임 서비스의 게임 빌드에 대하여 테스트를 수행하고, 상기 테스트의 수행 과정에서 도출된 게임 상태 정보 및 상기 테스트에 대한 테스트 리포트를 생성하는 테스트 수행부를 포함할 수 있다.
Description
아래의 설명은 게임 테스트 자동화 장치 및 방법에 관한 것이다.
게임 서비스는 그래픽 기반으로 구성되므로, 텍스트 기반의 프로그램과 달리 컴퓨터가 자동으로 게임 서비스 내의 상황을 파악하기가 어려울 수 있다. 따라서, 그래픽 기반의 게임 서비스의 게임 빌드를 테스트하기 위해서는, 게임 빌드를 테스트하는 테스터가 직접 개별 게임 플레이를 수행함으로써 게임 빌드에 오류가 존재하는 지 여부를 검증해야 했다. 이러한 이유 때문에 테스트를 진행하기 위한 다수의 테스터 인력이 요구되는 문제점이 있었다. 또한, 테스트를 수행하기 위한 시나리오는 텍스트 문장 기반으로 작성되었으므로, 개발자가 의도한 시나리오와 테스터가 인지한 시나리오가 일치하지 않는 소통상의 문제점이 존재할 수 있었다.
일실시예에 따른 게임 테스트 자동화 장치는 게임 서비스 내에서 테스트하고자 하는 게임 스크립트들의 조합인 테스트 프로시져(test procedure) 정보를 저장하는 데이터베이스; 및 상기 테스트 프로시져 정보에 기초하여 상기 게임 서비스의 게임 빌드에 대하여 테스트를 수행하고, 상기 테스트의 수행 과정에서 도출된 게임 상태 정보 및 상기 테스트의 테스트 리포트를 생성하는 테스트 수행부를 포함할 수 있다.
일실시예에 따른 게임 테스트 자동화 장치는 게임 서비스의 테스트를 수행하는 테스트 디바이스와 통신을 수행하는 통신부를 더 포함하고, 상기 테스트 수행부는 상기 테스트 디바이스를 통해 게임 서비스의 게임 빌드에 대해 테스트를 수행하기 위해 상기 테스트 디바이스를 제어하는 제어 신호를 생성하고, 상기 통신부를 통해 상기 생성된 제어 신호를 상기 테스트 디바이스에 전송하고, 전송된 제어 신호에 기초하여 상기 테스트 디바이스에서 상기 게임 빌드에 대한 테스트를 수행하고, 상기 테스트의 수행 과정에서 도출된 게임 상태 정보 및 상기 테스트에 대한 테스트 결과 정보를 생성할 수 있다.
일실시예에 따른 게임 테스트 자동화 장치는 상기 게임 스크립트들 및 상기 테스트 프로시져 정보를 관리하는 게임 스크립트 및 테스트 프로시져 관리부를 더 포함하고, 상기 게임 스크립트 및 테스트 프로시져 관리부는 사용자 입력에 기초하여 상기 게임 스크립트들 또는 테스트 상기 프로시져 정보를 생성할 수 있다.
일실시예에 따른 게임 테스트 자동화 장치에서 상기 테스트 프로시져 정보는 상기 테스트 프로시져 정보에 포함된 게임 스크립트들의 실행 순서에 대한 정보를 포함하고, 상기 프로시져 정보는 상기 프로시져 정보에 포함된 게임 스크립트들 중 복수의 테스트 디바이스에 의해 동시에 실행되는 게임 스크립트들에 대한 정보를 포함하고, 상기 테스트 리포트는 상기 테스트 결과에 대한 정보, 상기 테스트가 수행되는 테스트 디바이스의 성능에 대한 정보, 로그 정보 및 테스트가 수행되는 상황이 포함된 영상 정보 중 적어도 하나를 포함할 수 있다.
일실시예에 따른 게임 테스트 자동화 방법은 게임 서비스 내에서 테스트하고자 하는 게임 스크립트들의 조합인 테스트 프로시져 정보를 생성하는 단계; 상기 생성된 테스트 프로시져 정보에 기초하여 상기 게임 서비스의 게임 빌드에 대하여 테스트를 수행하는 단계; 상기 테스트의 수행 과정에서 도출된 게임 상태 정보 및 상기 테스트에 대한 테스트 리포트를 생성하는 단계를 포함할 수 있다.
일실시예에 따른 게임 테스트 자동화 방법에서 상기 테스트를 수행하는 단계는 테스트 디바이스에서 테스트를 수행하기 위해 상기 테스트 디바이스를 제어하는 제어 신호를 생성하는 단계; 상기 생성된 제어 신호를 상기 테스트 디바이스에 전송하는 단계를 포함하고, 상기 테스트 결과 정보를 생성하는 단계는 상기 테스트 디바이스에서 수행되는 테스트의 수행 과정에서 도출된 게임 상태 정보 및 상기 수행된 테스트에 대한 테스트 리포트를 생성할 수 있다.
일실시예에 따른 게임 테스트 자동화 방법에서 상기 테스트 리포트는 상기 테스트 결과에 대한 정보, 상기 테스트가 수행되는 테스트 디바이스의 성능에 대한 정보, 로그 정보 및 테스트가 수행되는 상황이 포함된 영상 정보 중 적어도 하나를 포함할 수 있다.
도 1은 일실시예에 따른 개발자 및 테스터 관점에서 게임 테스트 자동화 방법을 도시하는 흐름도이다.
도 2는 일실시예에 따른 게임 테스트 자동화 장치의 전체적인 구성을 도시하는 도면이다.
도 3은 일실시예에 따른 게임 스크립트가 생성되는 방법을 설명하기 위한 화면의 일례를 도시하는 도면이다.
도 4는 일실시예에 따른 게임 스크립트 및 테스트 프로시져 관리부에 의해 생성된 테스트 프로시져의 일례를 도시하는 도면이다.
도 5는 일실시예에 따른 게임 테스트 자동화 장치의 디스플레이부에 도시되는 테스트 디바이스의 화면들의 일례를 도시한다.
도 6은 일실시예에 따른 테스트 자동화 장치에 의해 생성되는 테스트 리포트의 일례를 도시한다.
도 7은 일실시예에 따른 게임 테스트 자동화 장치에 의한 게임 테스트 자동화 방법을 설명하기 위한 흐름도이다.
도 2는 일실시예에 따른 게임 테스트 자동화 장치의 전체적인 구성을 도시하는 도면이다.
도 3은 일실시예에 따른 게임 스크립트가 생성되는 방법을 설명하기 위한 화면의 일례를 도시하는 도면이다.
도 4는 일실시예에 따른 게임 스크립트 및 테스트 프로시져 관리부에 의해 생성된 테스트 프로시져의 일례를 도시하는 도면이다.
도 5는 일실시예에 따른 게임 테스트 자동화 장치의 디스플레이부에 도시되는 테스트 디바이스의 화면들의 일례를 도시한다.
도 6은 일실시예에 따른 테스트 자동화 장치에 의해 생성되는 테스트 리포트의 일례를 도시한다.
도 7은 일실시예에 따른 게임 테스트 자동화 장치에 의한 게임 테스트 자동화 방법을 설명하기 위한 흐름도이다.
실시예들에 대한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 본 명세서의 범위는 개시된 실시예들의 특정한 형태로 한정되는 것이 아니라 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
한편, 어떤 실시예가 달리 구현 가능한 경우에 특정 블록 내에 명기된 기능 또는 동작이 순서도와 다르게 수행될 수 있다. 예를 들어, 연속하는 두 블록들이 실제로는 실질적으로 동시에 수행될 수도 있고, 관련된 기능 또는 동작에 따라서는 해당 블록들의 순서가 뒤바뀌어 수행될 수도 있다.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
게임 테스트 자동화 장치는 미리 결정된 테스트 시나리오에 기초하여 자동으로 게임 서비스에 대한 테스트를 수행하도록 함으로써 테스터가 직접 게임 플레이를 수행하지 않고 게임 서비스에 대한 테스트를 수행하는 장치를 의미할 수 있다. 여기에서 테스트는 개발자가 의도한 바대로 게임 서비스의 게임 빌드가 동작하는 지 여부를 검증하는 동작을 의미할 수 있다. 게임 빌드라는 용어는 게임 테스트 자동화 장치가 최종적으로 테스트하고자 하는 실행 파일을 의미할 수 있고, 스크립트란 용어는 테스트가 자동으로 진행되기 위하여 코드로 작성된 테스트 시나리오를 의미할 수 있다. 또한 테스트 프로시져(Test Procedure)라는 용어는 복수의 스크립트들이 테스트 과정에서 진행될 수 있도록 생성된 스크립트들의 조합을 의미할 수 있다.
도 1은 일실시예에 따른 개발자 및 테스터 관점에서의 게임 테스트 자동화 방법을 도시하는 흐름도이다.
도 1을 참조하면, 개발자(110)는 게임 빌드(120)를 개발하고, 개발된 게임 빌드(120)를 인터넷 상에 업로드할 수 있다. 개발된 게임 빌드(120)는 개발자(110)가 의도하지 않은 오류를 포함할 수 있기 때문에, 개발자의 의도대로 게임 빌드(120)가 동작하는 지 여부가 검증되기 위해서, 개발된 게임 빌드(120)는 테스트를 거칠 수 있다. 개발자는 과정(130)을 통해 게임 빌드(120)를 테스트하기 위한 게임 스크립트를 직접 작성할 수 있다.
테스트를 진행하기 위하여 테스터(113)의 테스트 디바이스 상에 게임 빌드(120)가 설치될 수 있고, 테스터(113)는 과정(130)을 통해 게임 빌드(120)를 테스트하기 위한 게임 스크립트를 작성할 수 있다. 또한, 테스터(113)는 과정(140)을 통해 작성된 게임 스크립트들이 조합된 테스트 프로시져(Test Procedure) 정보를 작성할 수 있다. 테스터(113)는 과정(150)을 통해 테스트 디바이스에 테스트 프로시져의 수행을 지시할 수 있다. 예를 들어, 테스터(113)에 의해 테스트 프로시져가 실행되는 게임 빌드(120) 상의 시점이 결정될 수 있고, 테스터(113)에 의해 설정된 시점이 도래하는 경우, 게임 테스트 자동화 장치는 자동적으로 테스트 프로시져 정보에 기초한 테스트를 수행할 수 있다. 테스터(113)는 게임 테스트 자동화 장치가 테스트 수행을 시작하는 시간을 예약할 수 있고, 게임 테스트 자동화 장치는 테스터(113)가 예약한 시간에 게임 빌드(120)의 테스트의 수행을 시작할 수 있다. 과정(160)에서 테스터(113) 및 개발자(110)는 테스트 수행 과정에서 생성된 테스트 결과 정보를 검토하고, 테스트 결과 정보를 통해 게임 빌드 상의 오류를 확인할 수 있고, 확인된 오류를 수정함으로써 게임 빌드를 개선시킬 수 있다.
도 2는 일실시예에 따른 게임 테스트 자동화 장치의 전체적인 구성을 도시하는 도면이다.
도 2를 참조하면, 게임 테스트 자동화 장치는 게임 스크립트 및 테스트 프로시져를 관리하는 게임 스크립트 및 테스트 프로시져 관리부(220), 게임 빌드에 대한 정보, 게임 스크립트 및 테스트 프로시져 정보를 저장하는 데이터베이스(250), 테스트 프로시져 정보에 기초하여 게임 서비스의 게임 빌드에 대한 테스트를 수행하는 테스트 수행부(210), 외부의 테스트 디바이스와 통신을 수행하는 통신부(230), 테스트 진행 상황을 디스플레이하는 디스플레이부(240)를 포함할 수 있다.
일실시예에 따르면, 게임 스크립트 및 테스트 프로시져 관리부(220)는 사용자 입력에 기초하여 게임 스크립트들 또는 게임 스크립트들이 조합된 테스트 프로시져 정보를 생성할 수 있다. 게임 스크립트들 및 테스트 프로시져 정보가 생성되는 구체적인 방법은 도 3 및 도 4를 통해 구체적으로 설명될 것이다. 게임 스크립트 및 테스트 프로시져 관리부(220)에 의해 생성된 게임 스크립트들 및 테스트 프로시져 정보는 데이터베이스(250)에 저장될 수 있다. 게임 서비스의 게임 빌드 또한 데이터베이스(250)에 저장될 수 있다. 저장되는 게임 빌드는 사전에 분석되어 용량, 버전, 탑재된 모듈 등과 같은 게임 빌드에 대한 정보가 결정될 수 있다.
테스트 수행부(210)는 데이터베이스(250)에 저장된 테스트 프로시져 정보에 기초하여 데이터베이스(250)에 저장된 게임 서비스의 게임 빌드에 대한 테스트를 수행할 수 있다. 예를 들어, 테스트 수행부(210)는 사용자 입력에 기초하여 데이터 베이스(250)에 저장된 게임 빌드 중 어떠한 게임 빌드에 대하여, 데이터베이스(250)에 저장된 테스트 프로시져 정보 중 어떠한 테스트 프로시져에 기초하여 테스트를 수행할 지 여부를 결정할 수 있고, 결정된 게임 빌드의 어떠한 시점에 결정된 테스트 프로시져에 대응하는 동작을 수행할 지 여부를 결정할 수 있다. 테스트 수행부(210)는 게임 빌드에 대한 테스트 수행 과정에서 도출된 게임 상태 정보 및 테스트의 테스트 결과 정보를 생성할 수 있다. 또한, 외부의 테스트 디바이스에 의해 테스트가 진행되는 경우, 테스트 수행부(210)는 테스트 디바이스를 통해 게임 서비스의 게임 빌드에 대한 테스트를 수행하기 위해 테스트 디바이스를 제어하는 제어 신호를 생성할 수 있고, 생성된 제어 신호를 통신부(230)를 통해 테스트 디바이스에 전송함으로써 테스트 디바이스를 제어할 수 있다. 제어 신호에 기초하여 테스트 디바이스에서 게임 빌드에 대한 테스트가 수행될 수 있고, 테스트 수행부(210)는 테스트 디바이스에서 수행된 테스트에 대한 정보에 기초하여 게임 상태 정보 및 테스트 결과 정보를 생성할 수 있다.
게임 상태 정보는 게임 서비스 내의 다양한 상태에 대한 정보를 포함할 수 있다. 예를 들어, 게임 상태 정보는 게임 서비스 내의 특정 이미지에 대한 정보(예를 들어, 특정한 이미지 객체가 무엇인지에 대한 정보), 특정 문자에 대한 정보, 게임 서비스의 현재 상황(예를 들어, 아이템 구매 상황)에 대한 정보들을 포함할 수 있다.
게임 상태 정보는 이미지 인식을 통해 결정될 수 있다. 예를 들어, 게임 서비스 내의 이미지 또는 텍스트가 OCR(Optical Character Reader)을 통해 인식될 수 있다. 또한 게임 상태 정보는 게임 서비스의 게임 빌드에 내장된 라이브러리에 기초하여 결정될 수 있다. 예를 들어, 게임 빌드에 내장된 라이브러리는 게임 상태 정보에 대응되는 텍스트 데이터를 포함할 수 있고, 테스트 수행부(210)는 게임 빌드에 내장된 라이브러리에 포함된 텍스트 데이터에 기초하여 게임 상태에 대한 정보를 결정할 수 있다. 예를 들어, 게임 빌드에 내장되는 라이브러리는 게임 서비스 내의 이미지 오브젝트에 대응되는 텍스트 정보, 추상화된 원격 호출(Abstract RPC(Remote Procedure Call))과 관련된 정보를 포함할 수 있다. 또 다른 예시에서, 게임 상태 정보는 테스트 수행 과정에서 생성된 로그 정보에 기초하여 결정될 수 있다. 예를 들어, 테스트 수행부(210)는 테스트 디바이스의 테스트 수행 과정에서 생성되는 로그 정보를 분석함으로써 게임 상태에 대한 정보를 결정할 수 있다. 로그 정보는 별도의 웹 프록시 서버를 통한 로그 후킹을 통해 획득될 수 있다.
일실시예에 따르면, 테스트 리포트는 테스트 결과에 대한 정보, 테스트가 수행되는 테스트 디바이스의 성능에 대한 정보, 로그 정보, 테스트가 수행되는 상황이 포함된 영상 정보 중 적어도 하나를 포함할 수 있다.
테스트 결과 정보에 대한 정보는 테스트 프로시져 정보에 포함된 개별 게임 스크립트에 대한 테스트 결과 정보를 포함할 수 있다. 테스트 수행부(210)는 개별 게임 스크립트에 포함된 개별 테스트 케이스 중 적어도 하나가 예외 상태라고 판단되면 게임 스크립트의 테스트에 에러가 발생된 것으로 결정할 수 있고, 적어도 하나의 테스트 케이스가 실패 상태로 판단되면 게임 스크립트의 테스트가 실패한 것으로 결정할 수 있다. 또한, 예외 상태 혹은 실패 상태로 판단된 테스트 케이스가 존재하지 않지만, 적어도 하나의 테스트 케이스가 미실행 상태로 판단된 경우, 테스트 수행부(210)는 게임 스크립트의 테스트가 실행 중인 것으로 결정할 수 있다. 모든 테스트 케이스가 성공 상태로 판단된 경우, 테스트 수행부(210)는 게임 스크립트의 테스트가 성공한 것으로 결정할 수 있다. 테스트 수행 중 사용자 입력에 기초하여 강제 종료 요청이 발생한 경우, 테스트 수행부(210)는 게임 스크립트의 테스트가 종료된 것으로 결정할 수 있다.
테스트 디바이스 성능에 대한 정보는 테스트가 수행되는 테스트 디바이스의 CPU, 메모리, 배터리 등에 대한 시계열적인 사용량에 대한 정보를 포함할 수 있다.
일실시예에 따르면, 테스트 리포트에 포함되는 로그 정보는, 테스트 상황을 캡쳐한 이미지 정보, 테스트 상황에 대한 텍스트 정보, 테스트 디바이스의 자체 로그 정보, 테스트 수행 과정에서 테스트 디바이스가 호출한 웹 전송 로그 정보 중 적어도 하나를 포함할 수 있다. 예를 들어, 이미지 정보는 미리 결정된 시간 주기에 따라 테스트 상황을 캡쳐한 이미지 정보를 포함할 수 있다. 텍스트 정보는 테스트 구간 별로 테스트 시나리오의 진행 상황 및 현재 상태에 대한 정보를 포함할 수 있다. 테스트 디바이스 로그 정보는 테스트 구간 별로 테스트 디바이스가 자체적으로 기록하는 로그 정보일 수 있다. 테스트 디바이스 로그 정보는 테스트가 비정상적으로 종료될 경우 종료 원인을 검증하는 데에 사용될 수 있다. 웹 전송 로그 정보는 테스트 구간 별로 테스트 디바이스가 호출한 웹 전송 로그 정보일 수 있다.
일 실시예에 따르면 테스트 리포트에 포함되는 테스트가 수행되는 상황이 포함된 영상 정보는 테스트 수행 과정이 모두 기록된 동영상 정보에 해당할 수 있다.
일실시예에 따르면 디스플레이부(240)는 테스트가 진행되는 상황을 디스플레이할 수 있다. 예를 들어, 디스플레이부(240)는 게임 테스트 자동화 장치에 의해 테스트가 진행되는 상황을 실시간으로 디스플레이하거나, 외부의 테스트 디바이스에 의해 게임 빌드에 대한 테스트가 진행되는 경우, 테스트가 수행되는 테스트 디바이스의 화면을 실시간으로 디스플레이할 수 있다. 또한, 게임 테스트 자동화 장치가 복수의 테스트 디바이스를 제어하는 경우, 복수의 테스트 디바이스의 각각의 현재 화면을 실시간으로 디스플레이할 수 있다. 테스터는 디스플레이부(240)를 통해 각각의 테스트 디바이스에서 진행되는 테스트 진행 상황을 인식할 수 있고 이를 통해 가용한 테스트 디바이스를 식별할 수 있다. 디스플레이부(240)를 통해 테스트 상황이 디스플레이되는 일례는 도 5를 통해 도시된다.
도 3은 일실시예에 따른 게임 스크립트가 생성되는 방법을 설명하기 위한 화면의 일례를 도시하는 도면이다.
화면(320)은 게임 서비스가 실행 중인 테스트 디바이스의 화면에 디스플레이된 인터페이스를 도시한다. 게임 테스트 자동화 장치는 화면(320)에 디스플레이된 인터페이스를 통해 게임 플레이가 진행되는 방식과 유사한 방식으로 게임 스크립트를 생성하기 위한 입력이 수신할 수 있다. 게임 테스트 자동화 장치의 게임 스크립트 및 테스트 프로시져 관리부는 화면(320)을 통해 입력된 내용에 대응하는 게임 스크립트 생성하여 화면(310)에 디스플레이할 수 있다. 예를 들어, 테스터 혹은 개발자에 의해 화면(310)의 보관함 버튼(321)이 탭(tap)되고, 그 다음 나가기 버튼(323)이 탭되고, 60초간 대기하는 동작이 수행된 경우, 화면(310)은 수행된 동작에 대응하여 생성된 게임 스크립트를 도시할 수 있다. 생성된 게임 스크립트는 보관함 확인과 관련된 테스트 케이스 1(311) 및 나가기 동작과 관련된 테스트 케이스 2(313)을 포함할 수 있다. 각각의 테스트 케이스(311, 313)는 동작 내용에 대한 정보(예: 버튼을 탭함.), 동작 수행 위치(예: 버튼의 위치)에 대한 정보 등을 포함할 수 있다.
도 4는 일실시예에 따른 게임 스크립트 및 테스트 프로시져 관리부에 의해 생성된 테스트 프로시져의 일례를 도시하는 도면이다.
일실시예에 따르면 테스트 프로시져 정보는 게임 스크립트들의 조합에 의해 결정될 수 있다. 또한 테스트 프로시져 정보는 테스트 프로시져 정보에 포함된 게임 스크립트들의 실행 순서에 대한 정보를 포함할 수 있다. 예를 들어, 테스트 프로시져 정보를 메인 스크립트가 수행되기 전에 수행되는 전처리 스크립트, 메인 스크립트, 메인 스크립트가 실행된 후에 실행되는 후처리 스크립트를 포함할 수 있고, 프로시저에 포함된 스크립트는 전처리 스크립트, 메인 스크립트, 후처리 스크립트 순으로 실행될 수 있다. 전처리 스크립트는 메인 스크립트가 수행되기 전에 수행되는 스크립트로써, 예를 들어 로그인 동작, 보관함을 채우기 전에 보관함을 비우는 동작을 포함할 수 있다. 메인 스크립트는 테스트하고자 하는 주된 스크립트들일 수 있고, 도 4를 참조하면 메인 스크립트는 메인 스크립트 1, 메인 스크립트 2, 메인 스크립트 3 순으로 실행될 수 있다. 후처리 스크립트는 메인 스크립트가 실행된 뒤 실행되는 스크립트를 의미할 수 있고, 메인 스크립트에 해당하는 동작들이 수행되기 전 상태로 상태 변경을 하는 동작을 포함할 수 있다. 각각의 스크립트에 포함되는 동작의 내용 및 순서 등은 제시된 예시에 한정되지 않는다.
일실시예에 따르면 테스트 프로시져 정보는 프로시져 정보에 포함된 게임 스크립트들 중 복수의 테스트 디바이스에 의해 동시에 실행되는 게임 스크립트들에 대한 정보를 포함할 수 있다. 예를 들어 메인 스크립트에 포함된 메인 스크립트 1, 메인 스크립트 2, 메인 스크립트 3은 각각 별도의 테스트 디바이스에 의해 동시에 실행될 수 있고, 동시에 실행되는 스크립트들에 대한 정보는 별도의 표시를 통해 테스트 프로시져 정보에 포함될 수 있다. 동시에 메인 스크립트들이 실행되는 경우 순차적으로 메인 스크립트들이 실행되는 경우보다 테스트의 시간의 효율성이 증대될 수 있다.
도 5는 일실시예에 따른 게임 테스트 자동화 장치의 디스플레이부에 도시되는 테스트 디바이스의 화면들의 일례를 도시한다.
도 5를 참조하면, 게임 테스트 자동화 장치의 디스플레이부는 3 개의 테스트 디바이스의 실시간 화면을 디스플레이할 수 있다. 제시된 예시에서는 화면(510)에 대응되는 테스트 디바이스는 현재 테스트를 수행 중이고, 나머지 화면(520, 530)에 대응되는 테스트 디바이스들은 현재 테스트를 수행하지 않고 있는 상황을 도시한다. 이 경우 화면(520, 530)에 대응되는 테스트 디바이스들은 추가적으로 테스트를 수행하기 위한 테스트 디바이스로 결정될 수 있다.
도 6은 일실시예에 따른 테스트 자동화 장치에 의해 생성되는 테스트 리포트의 일례를 도시한다.
도 6을 참조하면, 게임 스크립트에 포함된 테스트 케이스에 대한 테스트 결과에 대한 정보를 포함하는 영역(610), 게임 스크립트에 대한 테스트 결과에 대한 정보를 포함하는 영역(620), 로그 정보를 포함하는 영역(630) 및 테스트 디바이스의 성능 정보를 포함하는 영역(640)을 포함할 수 있다.
영역(610)을 참조하면 총 31개의 테스트 케이스에서 20개이 테스트 케이스가 성공 상태로 판단되고, 10개의 테스트 케이스가 미실행 상태로 판단되며, 1개의 테스트 케이스가 실패 상태로 판단된 것을 알 수 있다. 영역(620)을 참조하면 1개의 테스트 케이스가 실패 상태로 결정된 것에 기인하여 게임 스크립트가 실패한 것으로 결정된 것을 알 수 있다. 영역(630)은 테스트 수행에 따라 생성된 로그 및 기타 로그 정보를 제시할 수 있고, 영역(640)은 테스트 디바이스의 CPU, 메모리 등의 시계열적인 사용 정보를 제시할 수 있다.
도 7은 일실시예에 따른 게임 테스트 자동화 장치에 의한 게임 테스트 자동화 방법을 설명하기 위한 흐름도이다.
도 7을 참조하면, 단계(710)에서 게임 테스트 자동화 장치는 게임 서비스 내에서 테스트하고자 하는 게임 스크립트들의 조합인 테스트 프로시저 정보를 생성할 수 있다. 테스트 프로시저 정보는 게임 스크립트들이 실행되는 순서에 대한 정보 및 복수의 테스트 디바이스에 의해 동시에 수행되는 게임 스크립트들에 대한 정보를 포함할 수 있다.
단계(720)에서 게임 테스트 자동화 장치는 생성된 테스트 프로시져 정보에 기초하여 게임 서비스의 게임 빌드에 대한 테스트를 수행할 수 있다. 사용자 입력에 기초하여 결정된 게임 빌드 내의 특정 시점에 테스트 프로시져 정보에 포함된 게임 스크립트들이 실행될 수 있다. 게임 스크립트들이 실행됨에 따라 개발자가 의도하지 않은 오류가 게임 빌드 상에 발생하는 것을 확인할 수 있고, 이를 통해 게임 빌드에 내재된 오류가 검출될 수 있다. 외부의 테스트 디바이스에 의해 게임 빌드에 대한 테스트가 수행되는 경우, 게임 테스트 자동화 장치는 테스트 디바이스에서 게임 빌드에 대한 테스트를 수행하기 위해 테스트 디바이스를 제어하는 제어 신호를 생성하고, 생성된 제어 신호를 테스트 디바이스에 전송할 수 있고, 테스트 디바이스에서 수행되는 테스트의 수행 과정에서 도출된 게임 상태 정보 및 수행된 테스트에 대한 테스트 리포트를 생성할 수 있다. 테스트 리포트는 테스트 결과에 대한 정보, 테스트가 수행되는 테스트 디바이스의 성능에 대한 정보, 로그 정보 및 테스트가 수행되는 상황이 포함된 영상 정보 중 적어도 하나를 포함할 수 있다.
단계(730)에서 게임 테스트 자동화 장치는 테스트 수행 과정에서 도출된 게임 상태 정보 및 테스트에 대한 테스트 리포트를 생성할 수 있다.
실시예들에서 설명된 구성요소들은 하나 이상의 DSP (digital signal processor), 프로세서, 컨트롤러, ASIC (application specific integrated circuit), FPGA (field programmable gate array)와 같은 프로그래머블 논리 소자, 다른 전자 기기들 및 이것들의 조합 중 하나 이상을 포함하는 하드웨어 구성 요소에 의해 구현될 수 있다. 실시예들에서 설명된 과정들 또는 기능들 중 적어도 일부는 소프트웨어에 의해 구현될 수 있고, 해당 소프트웨어는 기록 매체에 기록될 수 있다. 실시예들에서 설명된 구성요소들, 기능들 및 과정들은 하드웨어와 소프트웨어의 조합에 의해 구현될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
Claims (1)
- 게임 테스트 자동화 장치 및 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180083824A KR102243379B1 (ko) | 2018-07-19 | 2018-07-19 | 게임 테스트 자동화 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180083824A KR102243379B1 (ko) | 2018-07-19 | 2018-07-19 | 게임 테스트 자동화 장치 및 방법 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170103543A Division KR101881804B1 (ko) | 2017-08-16 | 2017-08-16 | 게임 테스트 자동화 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190019009A true KR20190019009A (ko) | 2019-02-26 |
KR102243379B1 KR102243379B1 (ko) | 2021-04-22 |
Family
ID=65562427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180083824A KR102243379B1 (ko) | 2018-07-19 | 2018-07-19 | 게임 테스트 자동화 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102243379B1 (ko) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10727026B2 (en) | 2018-02-21 | 2020-07-28 | Nuflare Technology, Inc. | Charged particle beam inspection method |
WO2020210675A1 (en) * | 2019-04-12 | 2020-10-15 | GameDriver, Inc. | Video game testing and automation framework |
JP2021037116A (ja) * | 2019-09-03 | 2021-03-11 | 株式会社バンダイナムコエンターテインメント | 処理システム及びプログラム |
JP2021037117A (ja) * | 2019-09-03 | 2021-03-11 | 株式会社バンダイナムコエンターテインメント | 処理システム及びプログラム |
KR20220034327A (ko) | 2020-09-11 | 2022-03-18 | 김수한 | 딥러닝 오브젝트 검출 기반의 스마트폰 애플리케이션 자동 제어방법 |
KR20220053434A (ko) * | 2020-10-22 | 2022-04-29 | 주식회사 엔씨소프트 | 테스트 자동화 서비스 장치 및 방법 |
KR20220086872A (ko) | 2020-12-17 | 2022-06-24 | 한국전자통신연구원 | 인공지능 에이전트를 이용한 게임 품질 보증 방법 및 시스템 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101118602B1 (ko) * | 2011-10-10 | 2012-02-27 | 어니컴 주식회사 | 장면 기반 테스트 자동화 방법 및 그 시스템 |
KR20140122414A (ko) * | 2013-04-10 | 2014-10-20 | 에스케이플래닛 주식회사 | 검증 프로세스 관리 시스템 및 방법 |
KR20160100094A (ko) * | 2015-02-13 | 2016-08-23 | 어니컴 주식회사 | 스크립트를 이용한 자동 테스트 방법 및 시스템 |
-
2018
- 2018-07-19 KR KR1020180083824A patent/KR102243379B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101118602B1 (ko) * | 2011-10-10 | 2012-02-27 | 어니컴 주식회사 | 장면 기반 테스트 자동화 방법 및 그 시스템 |
KR20140122414A (ko) * | 2013-04-10 | 2014-10-20 | 에스케이플래닛 주식회사 | 검증 프로세스 관리 시스템 및 방법 |
KR20160100094A (ko) * | 2015-02-13 | 2016-08-23 | 어니컴 주식회사 | 스크립트를 이용한 자동 테스트 방법 및 시스템 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10727026B2 (en) | 2018-02-21 | 2020-07-28 | Nuflare Technology, Inc. | Charged particle beam inspection method |
WO2020210675A1 (en) * | 2019-04-12 | 2020-10-15 | GameDriver, Inc. | Video game testing and automation framework |
US11216358B2 (en) | 2019-04-12 | 2022-01-04 | GameDriver, Inc. | Video game testing and automation framework |
US11829286B2 (en) | 2019-04-12 | 2023-11-28 | GameDriver, Inc. | Video game testing and automation framework |
JP2021037116A (ja) * | 2019-09-03 | 2021-03-11 | 株式会社バンダイナムコエンターテインメント | 処理システム及びプログラム |
JP2021037117A (ja) * | 2019-09-03 | 2021-03-11 | 株式会社バンダイナムコエンターテインメント | 処理システム及びプログラム |
KR20220034327A (ko) | 2020-09-11 | 2022-03-18 | 김수한 | 딥러닝 오브젝트 검출 기반의 스마트폰 애플리케이션 자동 제어방법 |
KR20220053434A (ko) * | 2020-10-22 | 2022-04-29 | 주식회사 엔씨소프트 | 테스트 자동화 서비스 장치 및 방법 |
KR20220086872A (ko) | 2020-12-17 | 2022-06-24 | 한국전자통신연구원 | 인공지능 에이전트를 이용한 게임 품질 보증 방법 및 시스템 |
US11874764B2 (en) | 2020-12-17 | 2024-01-16 | Electronics And Telecommunications Research Institute | Method and system for guaranteeing game quality by using artificial intelligence agent |
Also Published As
Publication number | Publication date |
---|---|
KR102243379B1 (ko) | 2021-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101881804B1 (ko) | 게임 테스트 자동화 장치 및 방법 | |
KR20190019009A (ko) | 게임 테스트 자동화 장치 및 방법 | |
US10853232B2 (en) | Adaptive system for mobile device testing | |
JP7110415B2 (ja) | 故障注入方法、装置、電子設備、記憶媒体、及びプログラム | |
CN108427616B (zh) | 后台程序监控方法及监控装置 | |
US20160170867A1 (en) | Exposing method related data calls during testing in an event driven, multichannel architecture | |
CN111124919A (zh) | 一种用户界面的测试方法、装置、设备及存储介质 | |
EP2725494A1 (en) | Automatic testing apparatus for embedded software, automatic testing method thereof and test scenario composing method | |
CN110013672B (zh) | 用于机器运行的游戏的自动化测试的方法、设备、装置以及计算机可读存储介质 | |
US11237948B2 (en) | Rendering engine component abstraction system | |
KR100985749B1 (ko) | 내장형 시스템 소프트웨어 자동 테스트 시스템 및 방법과테스트 시나리오 작성 방법 | |
CN110610089B (zh) | 用户行为模拟方法、装置及计算机设备 | |
CN113094251B (zh) | 嵌入式系统测试方法、装置、计算机设备和存储介质 | |
CN112732576A (zh) | 基于用户界面的自动化测试方法、装置及设备 | |
CN115658529A (zh) | 用户页面的自动化测试方法以及相关设备 | |
US10831634B1 (en) | Replication of user interface events | |
KR20150025106A (ko) | 애플리케이션 검증결과 모니터링 서비스를 위한 검증장치, 단말장치, 시스템, 방법 및 컴퓨터로 판독 가능한 기록 매체 | |
KR101460860B1 (ko) | 상태 기반의 테스트 시나리오 모델을 이용한 gui 테스트 장치 및 방법 | |
KR101271232B1 (ko) | 소프트웨어 테스트 장치 및 그 방법 | |
CN110837467A (zh) | 软件测试方法、装置以及系统 | |
KR102430523B1 (ko) | 웹 기반 모바일 디바이스 검증 자동화 플랫폼 시스템 및 그 검증 방법 | |
CN116302766A (zh) | 故障注入测试方法、装置、电子设备及可读存储介质 | |
KR100901780B1 (ko) | 내장형 시스템 오류 수정을 위한 비정지 디버깅 장치 및방법 | |
KR101251792B1 (ko) | 디버거를 이용한 임베디드 소프트웨어 단위 테스트 자동화 장치 및 방법 | |
KR100992622B1 (ko) | 임베디드 플랫폼에서 테스트 자동화 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) |