KR20220053434A - Apparatus and method for test automation service - Google Patents
Apparatus and method for test automation service Download PDFInfo
- Publication number
- KR20220053434A KR20220053434A KR1020200137892A KR20200137892A KR20220053434A KR 20220053434 A KR20220053434 A KR 20220053434A KR 1020200137892 A KR1020200137892 A KR 1020200137892A KR 20200137892 A KR20200137892 A KR 20200137892A KR 20220053434 A KR20220053434 A KR 20220053434A
- Authority
- KR
- South Korea
- Prior art keywords
- test
- user
- target terminals
- matching
- scripts
- 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
- A63F13/35—Details of game servers
- A63F13/358—Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/28—Error detection; Error correction; Monitoring by checking the correct order of processing
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
개시되는 실시예들은 테스트 자동화 서비스를 제공하는 기술에 관한 것이다.Disclosed embodiments relate to techniques for providing test automation services.
온라인 게임을 비롯한 대부분의 소프트웨어들은 수많은 사용자들에게 배포 및 이용되기 때문에, 사용자들의 다양한 요구를 충족시킬 수 있도록 우수한 품질로 제작되어야 한다.Since most software, including online games, are distributed and used by many users, they must be produced with high quality to meet the diverse needs of users.
이를 위해, 소프트웨어를 배포하거나 소프트웨어를 배포한 이후 새 버전(version)을 업데이트하기 전에, 기능성, 신뢰성, 사용성, 효율성, 유지보수성, 이식성 등 여러 품질 특성의 측면에서 소프트웨어를 테스트할 필요가 있다.To this end, it is necessary to test the software in terms of several quality characteristics, such as functionality, reliability, usability, efficiency, maintainability, portability, etc., before distributing software or updating a new version after distributing software.
그러나, 최근 소프트웨어의 구조가 복잡해짐에 따라 테스트할 항목도 점차 많아져, 하나의 테스트 시나리오를 하나의 기기에만 처음부터 끝까지 적용하여 테스트를 수행하는 경우 테스트에 과도한 시간이 소요되는 문제가 발생하고 있다.However, recently, as the structure of software becomes more complex, the number of items to be tested is gradually increasing, and when a test is performed by applying one test scenario to one device from beginning to end, there is a problem that the test takes an excessive amount of time. .
개시되는 실시예들은 하나의 테스트 시나리오를 여러 기기에서 나누어 수행하기 위한 것이다.The disclosed embodiments are for performing one test scenario by dividing it in several devices.
개시되는 일 실시예에 따른 테스트 자동화 서비스 방법은, 사용자에게 기 정의된 하나 이상의 테스트 시나리오의 목록 및 서버와 연결된 테스트 대상 단말의 목록을 포함하는 테스트 옵션을 제공하는 동작, 테스트 옵션에 대한 사용자의 선택에 기초하여, 하나 이상의 테스트 시나리오의 목록 중 사용자가 선택한 테스트 시나리오에 대응되는 복수의 테스트 스크립트를 획득하는 동작, 획득한 복수의 테스트 스크립트와 테스트 대상 단말의 목록 중 사용자가 선택한 복수의 테스트 대상 단말을 각각 매칭하는 동작 및 사용자가 선택한 복수의 테스트 대상 단말 각각에서 매칭된 테스트 스크립트가 수행되도록 서버에 테스트 요청을 전송하는 동작을 포함한다. The test automation service method according to the disclosed embodiment provides an operation of providing a test option including a list of one or more predefined test scenarios and a list of a test target terminal connected to a server to a user, a user's selection of the test option Based on the operation of obtaining a plurality of test scripts corresponding to the test scenario selected by the user from the list of one or more test scenarios, It includes an operation of matching each and an operation of transmitting a test request to the server so that the matched test script is performed in each of a plurality of test target terminals selected by the user.
테스트 옵션은, 하나 이상의 테스트 시나리오 각각을 구성하는 테스트 시나리오 별 테스트 스크립트의 목록을 더 포함할 수 있고, 매칭하는 동작은, 사용자로부터 사용자가 선택한 테스트 시나리오를 구성하는 테스트 스크립트의 목록과 사용자가 선택한 복수의 테스트 대상 단말 사이의 매칭 정보를 획득하는 동작 및 매칭 정보에 기초하여 획득한 복수의 테스트 스크립트와 사용자가 선택한 복수의 테스트 대상 단말을 각각 매칭하는 동작을 포함할 수 있다. The test option may further include a list of test scripts for each test scenario constituting each of one or more test scenarios, and the matching operation includes a list of test scripts constituting a test scenario selected by the user and a plurality of test scripts selected by the user. It may include an operation of obtaining matching information between the test target terminals of , and an operation of respectively matching a plurality of test scripts obtained based on the matching information and a plurality of test target terminals selected by the user.
매칭하는 동작은, 획득한 복수의 테스트 스크립트와 사용자가 선택한 복수의 테스트 대상 단말을 기 설정된 매칭 기준에 기초하여 매칭할 수 있다. In the matching operation, a plurality of acquired test scripts and a plurality of test target terminals selected by the user may be matched based on a preset matching criterion.
매칭하는 동작은, 사용자가 선택한 복수의 테스트 대상 단말 각각에 적어도 하나의 테스트 스크립트를 매칭할 수 있다. In the matching operation, at least one test script may be matched to each of the plurality of test target terminals selected by the user.
매칭하는 동작은, 획득한 복수의 테스트 스크립트 각각이 사용자가 선택한 복수의 테스트 대상 단말에 중복하여 적용되지 않도록 매칭할 수 있다. The matching operation may be performed so that each of the plurality of acquired test scripts is not repeatedly applied to the plurality of test target terminals selected by the user.
매칭하는 동작은, 사용자가 선택한 복수의 테스트 대상 단말 각각에 대응되는 기 생성된 폴더 내에 획득한 복수의 테스트 스크립트를 나누어 저장함으로써, 특정 폴더에 대응되는 테스트 대상 단말과 특정 폴더 내에 저장된 테스트 스크립트를 매칭할 수 있다. In the matching operation, the test script stored in the specific folder is matched with the test target terminal corresponding to the specific folder by dividing and storing a plurality of test scripts obtained in a pre-generated folder corresponding to each of the plurality of test target terminals selected by the user can do.
개시되는 일 실시예에 따른 테스트 자동화 서비스 장치는, 하나 이상의 프로세서에 의해 실행되도록 구성되는 하나 이상의 프로그램을 저장하는 메모리를 포함하는 장치로서, 프로그램은, 사용자에게 기 정의된 하나 이상의 테스트 시나리오의 목록 및 서버와 연결된 테스트 대상 단말의 목록을 포함하는 테스트 옵션을 제공하는 동작, 테스트 옵션에 대한 사용자의 선택에 기초하여, 하나 이상의 테스트 시나리오의 목록 중 사용자가 선택한 테스트 시나리오에 대응되는 복수의 테스트 스크립트를 획득하는 동작, 획득한 복수의 테스트 스크립트와 테스트 대상 단말의 목록 중 사용자가 선택한 복수의 테스트 대상 단말을 각각 매칭하는 동작 및 사용자가 선택한 복수의 테스트 대상 단말 각각에서 매칭된 테스트 스크립트가 수행되도록 서버에 테스트 요청을 전송하는 동작을 실행하기 위한 명령어들을 포함한다. A test automation service apparatus according to an embodiment of the present disclosure is a device including a memory for storing one or more programs configured to be executed by one or more processors, wherein the program includes a list of one or more test scenarios predefined to a user and Acquire a plurality of test scripts corresponding to the test scenario selected by the user from the list of one or more test scenarios based on the operation of providing a test option including a list of test target terminals connected to the server, and the user's selection of the test option operation, the operation of matching each of the plurality of test target terminals selected by the user from the list of the acquired plurality of test scripts and the test target terminals, and testing the server so that the matched test script is performed on each of the plurality of test target terminals selected by the user Contains instructions for executing the operation of sending the request.
테스트 옵션은, 하나 이상의 테스트 시나리오 각각을 구성하는 테스트 시나리오 별 테스트 스크립트의 목록을 더 포함할 수 있고, 매칭하는 동작은, 사용자로부터 사용자가 선택한 테스트 시나리오를 구성하는 테스트 스크립트의 목록과 사용자가 선택한 복수의 테스트 대상 단말 사이의 매칭 정보를 더 획득하는 동작 및 매칭 정보에 기초하여 획득한 복수의 테스트 스크립트와 사용자가 선택한 복수의 테스트 대상 단말을 각각 매칭하는 동작을 포함할 수 있다. The test option may further include a list of test scripts for each test scenario constituting each of one or more test scenarios, and the matching operation includes a list of test scripts constituting a test scenario selected by the user and a plurality of test scripts selected by the user. may include an operation of further acquiring matching information between the test target terminals of
매칭하는 동작은, 획득한 복수의 테스트 스크립트와 사용자가 선택한 복수의 테스트 대상 단말을 기 설정된 매칭 기준에 기초하여 매칭할 수 있다. In the matching operation, a plurality of acquired test scripts and a plurality of test target terminals selected by the user may be matched based on a preset matching criterion.
매칭하는 동작은, 사용자가 선택한 복수의 테스트 대상 단말 각각에 적어도 하나의 테스트 스크립트를 매칭할 수 있다. In the matching operation, at least one test script may be matched to each of the plurality of test target terminals selected by the user.
매칭하는 동작은, 획득한 복수의 테스트 스크립트 각각이 사용자가 선택한 복수의 테스트 대상 단말에 중복하여 적용되지 않도록 매칭할 수 있다. The matching operation may be performed so that each of the plurality of acquired test scripts is not repeatedly applied to the plurality of test target terminals selected by the user.
매칭하는 동작은, 사용자가 선택한 복수의 테스트 대상 단말 각각에 대응되는 기 생성된 폴더 내에 획득한 복수의 테스트 스크립트를 나누어 저장함으로써, 특정 폴더에 대응되는 테스트 대상 단말과 특정 폴더 내에 저장된 테스트 스크립트를 매칭할 수 있다. In the matching operation, the test script stored in the specific folder is matched with the test target terminal corresponding to the specific folder by dividing and storing a plurality of test scripts obtained in a pre-generated folder corresponding to each of the plurality of test target terminals selected by the user can do.
개시되는 실시예들에 따르면, 테스트 시나리오를 구성하는 복수의 테스트 스크립트를 복수의 테스트 대상 단말에서 나누어 수행함으로써, 테스트에 소요되는 시간을 획기적으로 경감시킬 수 있다. According to the disclosed embodiments, a plurality of test scripts constituting a test scenario are divided and performed by a plurality of test target terminals, thereby remarkably reducing the time required for a test.
도 1은 일 실시예에 따른 테스트 자동화 서비스 시스템을 설명하기 위한 블록도
도 2는 일 실시예에 따른 테스트 자동화 서비스 장치의 블록도
도 3은 일 실시예에 따른 테스트 자동화 서비스 화면을 나타낸 예시도
도 4는 일 실시예에 따라 테스트가 수행된 결과를 설명하기 위한 예시도
도 5는 일 실시예에 따른 테스트 자동화 서비스 방법을 설명하기 위한 흐름도
도 6은 일 실시예에 따른 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도1 is a block diagram illustrating a test automation service system according to an embodiment;
2 is a block diagram of a test automation service apparatus according to an embodiment;
3 is an exemplary diagram illustrating a test automation service screen according to an embodiment;
4 is an exemplary diagram for explaining a result of a test performed according to an embodiment;
5 is a flowchart illustrating a test automation service method according to an embodiment;
6 is a block diagram illustrating and explaining a computing environment including a computing device according to an embodiment;
이하, 도면을 참조하여 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 개시되는 실시예들은 이에 제한되지 않는다.Hereinafter, specific embodiments will be described with reference to the drawings. The following detailed description is provided to provide a comprehensive understanding of the methods, devices, and/or systems described herein. However, this is merely an example and the disclosed embodiments are not limited thereto.
실시예들을 설명함에 있어서, 관련된 공지기술에 대한 구체적인 설명이 개시되는 실시예들의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 개시되는 실시예들에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.In describing the embodiments, if it is determined that a detailed description of a related known technology may unnecessarily obscure the gist of the disclosed embodiments, the detailed description thereof will be omitted. And, the terms to be described later are terms defined in consideration of functions in the disclosed embodiments, which may vary according to intentions or customs of users and operators. Therefore, the definition should be made based on the content throughout this specification. The terminology used in the detailed description is for the purpose of describing the embodiments only, and should in no way be limiting. Unless explicitly used otherwise, expressions in the singular include the meaning of the plural. In this description, expressions such as “comprising” or “comprising” are intended to indicate certain features, numbers, steps, acts, elements, some or a combination thereof, one or more other than those described. It should not be construed to exclude the presence or possibility of other features, numbers, steps, acts, elements, or any part or combination thereof.
도 1은 일 실시예에 따른 테스트 자동화 서비스 시스템을 설명하기 위한 블록도이다.1 is a block diagram illustrating a test automation service system according to an embodiment.
도 1을 참조하면, 일 실시예에 따른 테스트 자동화 서비스 시스템은 제1 서버(1), 제2 서버(2), 제3 서버(3), 테스트 후보 단말(4) 및 테스트 자동화 서비스 장치(100)를 포함한다.Referring to FIG. 1 , a test automation service system according to an embodiment includes a
이하의 실시예들에서, '테스트'는 소프트웨어가 일정 수준의 품질을 가질 수 있도록 소프트웨어의 개발 단계, 양산 단계 또는 배포 후 단계에서 검수하는 행위를 의미한다. 즉 다시 말하면, '테스트'는 소프트웨어에 대한 품질 보증(QA; Quality Assurance) 활동 및 품질 관리(QC; Quality Control) 활동을 포함하는 개념이다.In the following embodiments, 'testing' refers to an act of inspecting software in a development stage, mass production stage, or post-distribution stage so that the software can have a certain level of quality. In other words, 'test' is a concept that includes Quality Assurance (QA) activities and Quality Control (QC) activities for software.
구체적으로, '테스트'는 소프트웨어에 잔존한 결함을 발견하거나, 비효율적으로 구성된 부분을 개선하거나, 소프트웨어가 소프트웨어 개발 명세서 상의 요구사항을 준수하였는지 확인하거나, 사용자의 요구를 충족하는지 확인하거나, 기 설정된 구동 환경 하에서 적절히 동작하는지 확인하는 등의 다양한 목적을 갖고 수행될 수 있다.Specifically, 'test' is to find defects remaining in the software, to improve inefficiently configured parts, to confirm that the software complies with the requirements in the software development specification, to confirm that it meets the user's needs, or to run a preset operation. It can be performed for a variety of purposes, such as ensuring that it operates properly under the environment.
제1 서버(1) 및 제2 서버(2)는 소프트웨어 테스트를 수행하기 위해 필요한 파일들이 등록되는 장치로서, 테스트 자동화 서비스 장치(100)로부터 특정 파일들에 대한 접근 요청을 수신하여 테스트 자동화 서비스 장치(100)로 요청 받은 파일들의 원본 또는 사본을 송신할 수 있다.The
한편, 도 1에서 제1 서버(1) 및 제2 서버(2)는 따로 도시되어 있으며, 이는 각 서버에 등록되는 파일의 종류가 상이하다는 점에서 각 서버를 기능적으로 구분하기 위한 것이다. 즉, 제1 서버(1) 및 제2 서버(2)는 실제로 서로 다른 컴퓨팅 장치일 수 있으나, 반드시 이에 한정되는 것은 아니며, 동일한 컴퓨팅 장치를 기능적으로 구분한 것에 불과할 수도 있다.Meanwhile, in FIG. 1 , the
제3 서버(3)는 테스트 후보 단말(4)과 연결되어 테스트 자동화 서비스 장치(100)로부터 받은 요청에 따라 테스트 후보 단말(4) 중 적어도 일부의 테스트 대상 단말에 소프트웨어 테스트 수행을 위한 정보를 송신하는 장치이다.The
구체적으로, 제3 서버(3)는 사용자가 테스트하고자 하는 소프트웨어를 테스트 후보 단말(4)에 제공하는 서버로서, 예를 들어 사용자가 A라는 특정 게임에 대해 테스트하고자 하는 경우, 제3 서버(3)는 테스트 후보 단말(4)에 게임 A를 서비스하는 서버를 의미한다.Specifically, the
이때, '게임'이란 한 명 또는 그 이상의 게이머들이 게이밍 디바이스에 탑재되거나 연결된 입력장치를 이용하여 즐길 수 있는 소프트웨어를 의미한다. 통상 플레이어 캐릭터를 직접 조작하거나, 게임 내 오브젝트의 움직임을 조작하는 등의 방식으로 진행되며, 롤플레잉, 어드벤쳐, 아케이드 등으로 장르가 구분되기도 한다.In this case, the term 'game' refers to software that one or more gamers can enjoy using an input device mounted on or connected to a gaming device. Usually, it is performed by directly manipulating the player character or by manipulating the movement of objects in the game, and genres such as role-playing, adventure, and arcade are sometimes classified.
또한, '게이밍 디바이스'는 게임 소프트웨어를 실행하되 입력장치를 통한 사용자의 입력에 따라 연산을 수행하며, 출력장치를 통해 결과를 출력하는 하드웨어로서, 예를 들어 스마트폰(Smart Phone), 태블릿 PC(Tablet PC), 스마트 워치(Smart Watch), 스마트 밴드(Smart Band) 또는 개인용 컴퓨터(Personal Computer) 등의 형태일 수 있다. 이외에도 상술한 정의를 만족하는 장치라면 게이밍 디바이스에 속하는 것으로 해석된다.In addition, the 'gaming device' is hardware that executes game software but performs calculations according to the user's input through the input device and outputs the result through the output device, for example, a smartphone (Smart Phone), tablet PC ( It may be in the form of a tablet PC), a smart watch, a smart band, or a personal computer. In addition, if the device satisfies the above definition, it is interpreted as belonging to the gaming device.
테스트 후보 단말(4)은 제3 서버(3)와 연결된 단말로서, 테스트 대상 단말을 포함하고, 테스트 대상 단말은 테스트 자동화 서비스 장치(100)로부터 제3 서버(3)로 전송되는 요청에 따라 자동화된 소프트웨어 테스트가 수행되는 장치를 의미한다.The
실효성 있는 소프트웨어 테스트를 위해서는, 테스트 대상 단말은 테스트하고자 하는 소프트웨어를 지원 가능한 최대한 많은 종류의 단말을 포함해야 한다. 예를 들어, B라는 모바일 게임을 테스트하고자 하는 경우, 테스트 대상 단말은 모바일 게임 B를 지원하는 최대한 많은 종류의 모바일 디바이스를 포함해야 한다.For effective software testing, the test target terminal should include as many types of terminals as possible to support the software to be tested. For example, if a mobile game B is to be tested, the test target terminal should include as many types of mobile devices as possible that support the mobile game B.
도 1에서는 예시적으로 테스트 후보 단말(4)을 총 N개의 단말(4-1, 4-2, ..., 4-N)들의 집합으로 도시하였으나, 이는 하나 이상의 단말이 제3 서버(3)에 연결될 수 있음을 나타낸 것이며, 테스트 후보 단말(4)은 제3 서버(3)의 소켓(socket) 또는 트래픽(traffic) 등을 고려하여 기 설정된 한도 내에서 연결될 수 있음에 유의해야 한다.1 exemplarily shows the
도 1을 참조하여 상술한 실시예들에서, 제1 서버(1), 제2 서버(2), 제3 서버(3), 테스트 후보 단말(4) 및 테스트 자동화 서비스 장치(100)가 주고받는 일련의 정보들은 통신 네트워크를 통해 전송될 수 있으며, 이때 통신 네트워크는 인터넷, 하나 이상의 로컬 영역 네트워크(local area networks), 광역 네트워크(wire area networks), 셀룰러 네트워크, 모바일 네트워크, 그 밖에 다른 종류의 네트워크들, 또는 이러한 네트워크들의 조합을 포함할 수 있다.
In the embodiments described above with reference to FIG. 1 , the
도 2는 일 실시예에 따른 테스트 자동화 서비스 장치(100)의 블록도이다.2 is a block diagram of a test
도시된 바와 같이, 일 실시예에 따른 테스트 자동화 서비스 장치(100)는 테스트 옵션 제공부(110), 획득부(120), 매칭부(130) 및 테스트 요청부(140)를 포함한다.
As shown, the test
테스트 옵션 제공부(110)는 사용자에게 기 정의된 하나 이상의 테스트 시나리오의 목록 및 서버와 연결된 테스트 대상 단말의 목록을 포함하는 테스트 옵션을 제공한다.
The test
구체적으로, '테스트 옵션'은 소프트웨어 테스트와 관련하여 사용자들이 테스트 시나리오나 테스트 대상 단말 등을 선택할 수 있도록 사용자에게 제공되는 선택 가능한 세부 사항을 의미한다. Specifically, the 'test option' refers to selectable details provided to a user so that the user can select a test scenario or a test target terminal in relation to software testing.
이하의 실시예들에서, '테스트 시나리오'는 사용자가 소프트웨어 테스트를 수행함으로써 특정한 목적을 달성할 수 있도록 하나 이상의 테스트 스크립트의 조합 및 수행될 순서를 정의한 정보를 의미한다.In the following embodiments, a 'test scenario' means information defining a combination of one or more test scripts and an order to be performed so that a user can achieve a specific purpose by performing a software test.
예를 들어, 게임 A의 게임 캐릭터 B가 게임 몹 C를 1회 공격하는 테스트를 수행하는 테스트 시나리오는, 게임 내 마우스 포인터를 게임 몹 C 위에 올린 채 왼쪽 클릭(click)을 하는 동작, 게임 캐릭터 B가 게임 몹 C 근처로 이동하는 동작, 게임 캐릭터 B가 자신이 착용한 무기로 게임 몹 C에 공격을 가하는 동작, 공격에 따라 게임 몹 C의 체력 및 상태에 변화를 적용하는 동작 등과 관련된 테스트 스크립트의 조합 및 순서를 정의한다. For example, a test scenario in which game character B of game A attacks game mob C once is tested. of the test script related to the motion of moving near game mob C, the motion of game character B attacking the game mob C with the weapon he is wearing, and the motion of applying changes to the health and state of game mob C according to the attack. Define combinations and sequences.
또한 이하의 실시예들에서, '테스트 스크립트'는 개발자가 소프트웨어 테스트를 수행하기 위해 필요한 하나 이상의 액션(action)을 코드 형태로 기술한 파일을 의미한다. 이하에서는 설명의 편의를 위해, 테스트 스크립트를 기술한 코드를 테스트 코드로 지칭하도록 한다. Also, in the following embodiments, a 'test script' refers to a file in which one or more actions necessary for a developer to perform a software test are described in code form. Hereinafter, for convenience of description, the code describing the test script will be referred to as the test code.
일 실시예에 따르면, 테스트 옵션은 하나 이상의 테스트 시나리오 각각을 구성하는 테스트 시나리오 별 테스트 스크립트의 목록을 더 포함할 수 있다. According to an embodiment, the test option may further include a list of test scripts for each test scenario constituting each of one or more test scenarios.
예를 들어, C-1, C-2, C-3라는 테스트 스크립트가 모여 C라는 테스트 시나리오를 구성하는 경우, 테스트 옵션 제공부(110)는 C라는 테스트 시나리오에 대한 하위 항목으로 C-1, C-2, C-3라는 테스트 스크립트의 목록을 제공할 수 있다.
For example, when the test scripts C-1, C-2, and C-3 are gathered to form a test scenario called C, the test
획득부(120)는 테스트 옵션에 대한 사용자의 선택에 기초하여, 하나 이상의 테스트 시나리오의 목록 중 사용자가 선택한 테스트 시나리오에 대응되는 복수의 테스트 스크립트를 획득한다.
The
매칭부(130)는 획득부(120)가 획득한 복수의 테스트 스크립트와 테스트 대상 단말의 목록 중 사용자가 선택한 복수의 테스트 대상 단말을 각각 매칭한다.
The
일 실시예에 따르면, 매칭부(130)는 테스트 옵션에 하나 이상의 테스트 시나리오 각각을 구성하는 테스트 시나리오 별 테스트 스크립트의 목록이 더 포함되는 경우, 사용자로부터 사용자가 선택한 테스트 시나리오를 구성하는 테스트 스크립트의 목록과 사용자가 선택한 복수의 테스트 대상 단말 사이의 매칭 정보를 획득할 수 있다.
According to an embodiment, when the test option further includes a list of test scripts for each test scenario constituting each of one or more test scenarios, the
이어서, 해당 실시예에서 매칭부(130)는 획득한 매칭 정보에 기초하여 획득부(120)가 획득한 복수의 테스트 스크립트와 사용자가 선택한 복수의 테스트 대상 단말을 각각 매칭할 수 있다.
Subsequently, in the corresponding embodiment, the
일 실시예에 따르면, 매칭부(130)는 획득부(120)가 획득한 복수의 테스트 스크립트와 사용자가 선택한 복수의 테스트 대상 단말을 기 설정된 매칭 기준에 기초하여 매칭할 수 있다.
According to an embodiment, the
예를 들어, 매칭부(130)는 사용자가 선택한 복수의 테스트 대상 단말 중 출시일이 빠른 단말부터 순차적으로 획득부(120)가 획득한 복수의 테스트 스크립트와 매칭할 수 있다.
For example, the
또한 다른 예로써, 매칭부(130)는 사용자가 선택한 복수의 테스트 대상 단말 중 단말의 기종이 스마트폰, 태블릿 PC, 기타에 속하는 단말 순으로 획득부(120)가 획득한 복수의 테스트 스크립트와 매칭할 수 있다.
As another example, the
또한 다른 예로써, 매칭부(130)는 사용자가 선택한 복수의 테스트 대상 단말 각각과 획득부(120)가 획득한 복수의 테스트 스크립트 각각을 무작위로 매칭할 수도 있다.
Also, as another example, the
일 실시예에 따르면, 매칭부(130)는 사용자가 선택한 복수의 테스트 대상 단말 각각에 적어도 하나의 테스트 스크립트를 매칭할 수 있다. 이에 따라, 매칭부(130)는 사용자가 선택한 테스트 대상 단말 중 테스트 스크립트가 적용되지 않는 단말이 발생하는 것을 방지할 수 있다.
According to an embodiment, the
한편, 일 실시예에 따르면, 매칭부(130)는 획득부(120)가 획득한 복수의 테스트 스크립트 각각이 사용자가 선택한 복수의 테스트 대상 단말에 중복하여 적용되지 않도록 매칭할 수 있다. 이에 따라, 매칭부(130)는 하나의 테스트 스크립트가 2개 이상의 단말에 적용됨으로써 전체 테스트 시나리오 수행에 불필요한 시간이 소요되는 것을 방지할 수 있다.
Meanwhile, according to an embodiment, the
일 실시예에 따르면, 매칭부(130)는 사용자가 선택한 복수의 테스트 대상 단말 각각에 대응되는 기 생성된 폴더 내에 획득부(120)가 획득한 복수의 테스트 스크립트를 나누어 저장함으로써, 특정 폴더에 대응되는 테스트 대상 단말과 특정 폴더 내에 저장된 테스트 스크립트를 매칭할 수 있다.
According to an embodiment, the
예를 들어, 사용자가 X, Y, Z라는 3개의 테스트 대상 단말을 선택한 경우, 테스트 자동화 서비스 장치(100) 내부 또는 외부에 마련된 저장 공간에 단말 X와 대응되는 '폴더 X', 단말 Y와 대응되는 '폴더 Y', 단말 Z와 대응되는 '폴더 Z'가 생성될 수 있고, 이 경우 매칭부(130)는 단말 X에서 수행될 테스트 스크립트는 '폴더 X'에, 단말 Y에서 수행될 테스트 스크립트는 '폴더 Y'에, 단말 Z에서 수행될 테스트 스크립트는 '폴더 Z'에 저장할 수 있다.
For example, when the user selects three test target terminals X, Y, and Z, the 'folder X' corresponding to the terminal X and the terminal Y correspond to the storage space provided inside or outside the test automation service apparatus 100 A 'folder Y' and a 'folder Z' corresponding to the terminal Z may be created, and in this case, the
테스트 요청부(140)는 사용자가 선택한 복수의 테스트 대상 단말 각각에서 매칭된 테스트 스크립트가 수행되도록 서버에 테스트 요청을 전송한다.
The
이를 통해, 사용자는 하나의 테스트 시나리오를 구성하는 테스트 스크립트들이 여러 테스트 대상 단말들을 통해 분산되어 수행되도록 함으로써, 하나의 테스트 시나리오 전체를 수행하는 데 소요되는 시간을 경감시킬 수 있다. Through this, the user can reduce the time required to perform the entire test scenario by allowing the test scripts constituting one test scenario to be distributed and performed through several test target terminals.
도 3은 일 실시예에 따른 테스트 자동화 서비스 화면을 나타낸 예시도이다.3 is an exemplary diagram illustrating a test automation service screen according to an embodiment.
도 3을 참조하면, 화면 좌측에는 '테스트 옵션 편집 페이지'가, 화면 우측 상단에는 '빌드 등록 페이지'가, 화면 우측 하단에는 '테스트 스크립트 관리 페이지'가 도시된다.Referring to FIG. 3 , a 'test option edit page' is shown on the left side of the screen, a 'build registration page' is shown on the upper right of the screen, and a 'test script management page' is shown on the bottom right of the screen.
먼저, '테스트 옵션 편집 페이지'는 테스트 옵션 제공부(110)를 통해 사용자에게 제공되는 그래픽 유저 인터페이스(GUI; Graphical User Interface)로서, '이름', '설명', '테스트 자원', '기기', '결과 수신자', '자동 실행' 등의 항목을 포함한다.First, the 'test option editing page' is a graphic user interface (GUI) provided to a user through the test
'이름'은 소프트웨어 테스트를 구별하기 위해 사용자가 임의로 입력 가능한 항목이며, '설명'은 해당 소프트웨어 테스트에 대해 사용자가 주석(comment)을 기재하는 항목이다.A 'name' is an item that a user can arbitrarily input to distinguish a software test, and a 'description' is an item in which a user writes a comment about the software test.
한편, '테스트 자원'은 소프트웨어 테스트의 수행에 사용될 파일 및 테스트 시나리오 등을 선택할 수 있는 항목이다.On the other hand, the 'test resource' is an item that can select a file and test scenario to be used for performing a software test.
구체적으로, 사용자는 안드로이드(Android) 운영체제 또는 iOS 운영체제 중 하나를 선택하여 해당 운영체제 하에서의 테스트 가상 환경을 선택할 수 있다. 이를 위해, '테스트 자원' 항목에는 안드로이드 운영체제 하의 테스트 가상 환경 파일의 목록을 제공하는 그래픽 객체(301)와, iOS 운영체제 하의 테스트 가상 환경 파일의 목록을 제공하는 그래픽 객체(302)가 포함된다.Specifically, the user may select one of the Android operating system and the iOS operating system to select a test virtual environment under the corresponding operating system. To this end, the 'test resource' item includes a
아울러, '테스트 자원' 항목에는 사용자가 원하는 테스트 시나리오를 선택할 수 있도록 기 정의된 하나 이상의 테스트 시나리오의 목록을 제공하는 그래픽 객체(303)가 포함된다.In addition, the 'test resource' item includes a
또한, 사용자는 제2 서버(2)에 등록된 테스트 스크립트 외에도, 자신이 원하는 테스트 스크립트를 직접 업로드하여 테스트 대상 단말에 적용되도록 할 수 있는데, 이를 위해 '테스트 자원' 항목에는 사용자가 클릭을 통해 사용자의 컴퓨팅 장치 내 저장 공간에 저장된 테스트 스크립트를 업로드할 수 있는 '파일 선택' 그래픽 객체(305)가 포함된다.In addition, in addition to the test script registered in the
'기기'는 사용자가 테스트 후보 단말(4) 중에 테스트 대상 단말을 선택할 수 있는 항목으로서, 이를 위해 '기기' 항목에는 '기기 선택' 그래픽 객체(306)가 포함된다.The 'device' is an item through which the user can select a test target terminal from among the
'결과 수신자'는 사용자가 테스트 결과를 수신 받을 대상을 지정할 수 있는 항목이며, 이를 위해 '결과 수신자' 항목에는 수신자 입력란(307)이 마련된다. 또한, 테스트가 전부 수행된 이후에만 아니라 테스트가 수행되는 중간에도 사용자가 중간 결과를 확인할 수 있도록, '결과 수신자' 항목에는 '중간 결과 받기' 체크 버튼(308)이 마련된다.The 'result recipient' is an item through which the user can designate a target to receive the test result. In addition, a 'Receive intermediate result' check button 308 is provided in the 'Result Recipient' item so that the user can check the intermediate result not only after the entire test is performed, but also during the test.
'자동 실행'은 제1 서버(1)에 신규 빌드 파일이 등록된 경우 사용자의 테스트 옵션 선택을 통한 개입 없이 자동으로 소프트웨어 테스트가 수행되도록, 자동 실행 여부를 결정하는 체크 버튼 및 경과 시간 조건에 대한 입력란이 마련된다.'Auto-run' refers to the check button that determines whether to automatically run and the elapsed time condition so that the software test is automatically performed without the user's intervention through the user's test option selection when a new build file is registered in the first server (1). An input field is provided.
한편, '빌드 등록 페이지'는 제1 서버(1)와의 사이에서 동기화된 빌드 파일의 목록을 사용자에게 제공하는 GUI로서, 서로 연관된 빌드 파일들을 상위 빌드 집합(빌드 1, 빌드 2 등) 아래에 나열하여 표시한다(빌드 1-1, 1-2, 1-3, 2-1, 2-2, 2-3 등).On the other hand, the 'build registration page' is a GUI that provides the user with a list of build files synchronized with the
이때, 빌드 파일을 제1 서버(1)에 등록하고자 하는 제3자는 '빌드 등록 페이지'에 로그인하여 빌드 파일을 등록할 수 있고, 등록을 마친 이후에는 '로그아웃' 그래픽 객체(439)를 클릭함으로써 '빌드 등록 페이지'에서 로그아웃할 수 있다.At this time, a third party who wants to register the build file in the
뿐만 아니라, '빌드 등록 페이지'의 이용자는 각 상위 빌드 집합 옆에 도시된 '다운로드' 그래픽 객체(310, 311)를 클릭함으로써 연관된 빌드 파일들을 손쉽게 다운로드 받을 수 있다.In addition, the user of the 'build registration page' can easily download related build files by clicking the 'download'
이때, '빌드 파일'은 개발자가 작성한 소스 코드(source code) 파일이 컴퓨팅 장치에서 실행 가능한 소프트웨어 산출물의 형태로 구현된 파일을 의미한다.In this case, the 'build file' refers to a file in which a source code file written by a developer is implemented in the form of a software product executable in a computing device.
한편, '테스트 스크립트 관리 페이지'는 제2 서버(2)와의 사이에서 동기화된 테스트 스크립트의 목록을 사용자에게 제공하는 GUI로서, 사용자 정보 표시(312)를 통해 현재 '테스트 스크립트 관리 페이지'를 이용 중인 사용자의 정보를 표시한다.On the other hand, the 'test script management page' is a GUI that provides the user with a list of test scripts synchronized with the
또한, '테스트 스크립트명' 항목(313)을 통해 등록된 각 테스트 스크립트의 명칭을 제공하고, '최근 commit' 항목(314)을 통해 최근에 각 테스트 스크립트를 수정한 내용에 대한 설명을 제공하고, '최근 등록' 항목(315)을 통해 최근에 각 테스트 스크립트를 등록한 일자를 제공한다.In addition, the name of each registered test script is provided through the 'test script name'
이상의 도 3에 도시된 각 항목, 그래픽 객체, 체크 버튼, 입력란 등은 예시적인 것으로, 이외에도 추가적인 구성이 '테스트 옵션 편집 페이지', '빌드 등록 페이지' 또는 '테스트 스크립트 관리 페이지'에 포함될 수 있음은 자명하다. Each item, graphic object, check button, input box, etc. shown in FIG. 3 above are exemplary, and in addition, additional configurations may be included in the 'test option edit page', 'build registration page' or 'test script management page' self-evident
도 4는 일 실시예에 따라 테스트가 수행된 결과를 설명하기 위한 예시도이다. 4 is an exemplary diagram for explaining a result of a test performed according to an embodiment.
도 4의 상단에 기재된 '테스트 결과 리포트 페이지'에서 알 수 있듯이, 일 실시예에 따라 테스트 대상 단말에서 테스트가 수행되는 경우, 수행된 테스트의 결과는 테스트 자동화 서비스 장치(100)에 무선 또는 유선으로 연결된 디스플레이(미도시)나 테스트 대상 단말의 화면을 통해 테이블이 포함된 리포트 페이지의 형태로 출력될 수 있다. 그러나 테스트의 결과가 제공되는 형태는 이에 한정되는 것은 아니며, 시각적으로 출력되지 않고 별도의 저장소(미도시)에 저장될 수도 있다.
As can be seen from the 'test result report page' described at the top of FIG. 4 , when a test is performed in a test target terminal according to an embodiment, the result of the performed test is transmitted to the test
도 4에 도시된 테이블의 1열의 항목들은 각 테스트 대상 단말에서 어떠한 테스트 스크립트가 수행되었는지, 테스트 스크립트가 수행됨으로써 어떠한 액션이 발생했는지 나타낸다.
Items in
이하에서는 설명의 편의를 위해, 각 테스트 스크립트는 도 4의 '테스트 스크립트명' 항목에 정의된 명칭으로 지칭하도록 한다. Hereinafter, for convenience of description, each test script is referred to as a name defined in the 'test script name' item of FIG. 4 .
먼저 도 4에 도시된 테이블 1열의 '테스트 스크립트명' 항목과 테이블 4열 내지 6열의 '단말 A', '단말 B', '단말 C' 항목을 참조하면, 테스트는 총 3개의 테스트 대상 단말(단말 A, 단말 B, 단말 C)에서 이루어졌으며, 각 단말 별로 테스트 스크립트 수행에 따라 발생한 액션의 수행 결과가 'Pass' 또는 'Skip'으로 나타남을 알 수 있다.
First, referring to the 'test script name' item in table 1 column shown in FIG. 4 and the 'terminal A', 'terminal B', and 'terminal C' items in
한편, 테이블 2열의 '테스트 영역' 항목과 테이블 3열의 '태깅된 액션' 항목을 참조하면, 각 테스트 스크립트에 따라 테스트 대상 단말에서 수행된 액션들이 어떤 사항을 테스트하는지 알 수 있다. On the other hand, referring to the 'test area' item in the second column of the table and the 'tagged action' item in the third column of the table, it is possible to know which actions are tested by the actions performed on the test target terminal according to each test script.
이를 종합하여 살펴보면, 구체적으로, 단말 A에서는 'Test1_설치_실행', 'Test_우편', 'Test_NPC'라는 3개의 테스트 스크립트가 수행되었고, 단말 B에서는 'Test2_설치_실행', 'Test_강화', 'Test_카드교체'라는 3개의 테스트 스크립트가 수행되었으며, 단말 C에서는 'Test3_설치_실행', 'Test3_상인'이라는 2개의 테스트 스크립트가 수행되었음을 알 수 있다. In summary, specifically, three test scripts 'Test1_install_execution', 'Test_mail', and 'Test_NPC' were performed in terminal A, and 'Test2_install_execution', 'Test It can be seen that three test scripts called _strengthening' and 'Test_card replacement' were performed, and in terminal C, two test scripts called 'Test3_install_execution' and 'Test3_merchant' were performed.
또한, 예를 들어, 단말 A에서 'Test_우편'이라는 테스트 스크립트가 수행됨에 따라 '쪽지 보내기', '쪽지 받기', '쪽지 삭제'라는 3개의 액션이 발생했으며, 3개의 액션의 수행 결과가 모두 'Pass'임을 알 수 있다. 반면, 단말 B에서 'Test2_설치_실행'이라는 테스트 스크립트가 수행됨에 따라 '게임 설치, 실행', 'CDN 업데이트'라는 2개의 액션이 발생했으며, 그 중 'CDN 업데이트'라는 액션의 수행 결과는 'Skip'임을 알 수 있다. Also, for example, as the test script 'Test_mail' was executed in terminal A, three actions such as 'send note', 'receive note', and 'delete note' occurred, and the results of the three actions were It can be seen that all are 'Pass'. On the other hand, as the test script 'Test2_install_execution' was executed in terminal B, two actions, 'game installation and execution' and 'CDN update' occurred, and the result of the action of 'CDN update' was You can see that it is 'Skip'.
이상의 도 4에 도시된 각 테이블 내 행(row)과 열(column)의 배치, 조합 및 각 셀(cell) 내의 내용은 예시적인 것으로, 실시예에 따라 사용자에게 다양한 형태로 테스트의 수행 결과가 제공될 수 있음은 자명하다. The arrangement and combination of rows and columns in each table shown in FIG. 4 and the contents in each cell are exemplary, and according to the embodiment, the test results are provided to the user in various forms. It is obvious that it can be
도 5는 일 실시예에 따른 테스트 자동화 서비스 방법을 설명하기 위한 흐름도이다. 도 5에 도시된 방법은 예를 들어, 상술한 테스트 자동화 서비스 장치(100)에 의해 수행될 수 있다.
5 is a flowchart illustrating a test automation service method according to an embodiment. The method shown in FIG. 5 may be performed, for example, by the above-described test
우선, 테스트 자동화 서비스 장치(100)는 사용자에게 기 정의된 하나 이상의 테스트 시나리오의 목록 및 서버와 연결된 테스트 대상 단말의 목록을 포함하는 테스트 옵션을 제공한다(510).
First, the test
이후, 테스트 자동화 서비스 장치(100)는 테스트 옵션에 대한 사용자의 선택에 기초하여, 하나 이상의 테스트 시나리오의 목록 중 사용자가 선택한 테스트 시나리오에 대응되는 복수의 테스트 스크립트를 획득한다(520).
Thereafter, the test
이후, 테스트 자동화 서비스 장치(100)는 획득한 복수의 테스트 스크립트와 테스트 대상 단말의 목록 중 사용자가 선택한 복수의 테스트 대상 단말을 각각 매칭한다(530).
Thereafter, the test
이후, 테스트 자동화 서비스 장치(100)는 사용자가 선택한 복수의 테스트 대상 단말 각각에서 매칭된 테스트 스크립트가 수행되도록 서버에 테스트 요청을 전송한다(540).
Thereafter, the test
도시된 흐름도에서는 상기 방법을 복수 개의 동작으로 나누어 기재하였으나, 적어도 일부의 동작들은 순서를 바꾸어 수행되거나, 다른 동작과 결합되어 함께 수행되거나, 생략되거나, 세부 동작들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 동작이 부가되어 수행될 수 있다. In the illustrated flowchart, the method is described by dividing the method into a plurality of operations, but at least some operations are performed in a different order, are performed in combination with other operations, are omitted, are performed separately, or are performed as detailed operations, or are not shown. One or more operations may be added and performed.
도 6은 일 실시예에 따른 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술된 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.
6 is a block diagram illustrating and describing a
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 테스트 자동화 서비스 장치(100)일 수 있다.
The illustrated
컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
Computer-
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램, 및 상기 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 프로그램의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. Meanwhile, an embodiment of the present invention may include a program for performing the methods described in this specification on a computer, and a computer-readable recording medium including the program. The computer-readable recording medium may include program instructions, local data files, local data structures, etc. alone or in combination. The media may be specially designed and configured for the present invention, or may be commonly used in the field of computer software. Examples of computer-readable recording media include hard disks, magnetic media such as floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and program instructions specially configured to store and execute program instructions such as ROMs, RAMs, flash memories, etc. Hardware devices are included. Examples of the program may include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 청구범위뿐만 아니라 이 청구범위와 균등한 것들에 의해 정해져야 한다. Although representative embodiments of the present invention have been described in detail above, those of ordinary skill in the art to which the present invention pertains will understand that various modifications are possible without departing from the scope of the present invention with respect to the above-described embodiments. . Therefore, the scope of the present invention should not be limited to the described embodiments, and should be defined by the following claims as well as the claims and equivalents.
1: 제1 서버
2: 제2 서버
3: 제3 서버
4(4-1, 4-2, ..., 4-N): 테스트 후보 단말
10: 컴퓨팅 환경
12: 컴퓨팅 장치
14: 프로세서
16: 컴퓨터 판독 가능 저장 매체
18: 통신 버스
20: 프로그램
22: 입출력 인터페이스
24: 입출력 장치
26: 네트워크 통신 인터페이스
100: 테스트 자동화 서비스 장치
110: 테스트 옵션 제공부
120: 획득부
130: 매칭부
140: 테스트 요청부1: first server
2: Second server
3: 3rd server
4 (4-1, 4-2, ..., 4-N): test candidate terminal
10: Computing Environment
12: computing device
14: Processor
16: computer readable storage medium
18: communication bus
20: Program
22: input/output interface
24: input/output device
26: network communication interface
100: test automation service device
110: test option providing unit
120: acquisition unit
130: matching unit
140: test request unit
Claims (12)
상기 테스트 옵션에 대한 상기 사용자의 선택에 기초하여, 상기 하나 이상의 테스트 시나리오의 목록 중 상기 사용자가 선택한 테스트 시나리오에 대응되는 복수의 테스트 스크립트를 획득하는 동작;
상기 획득한 복수의 테스트 스크립트와 상기 테스트 대상 단말의 목록 중 상기 사용자가 선택한 복수의 테스트 대상 단말을 각각 매칭하는 동작; 및
상기 사용자가 선택한 복수의 테스트 대상 단말 각각에서 매칭된 테스트 스크립트가 수행되도록 상기 서버에 테스트 요청을 전송하는 동작을 포함하는, 테스트 자동화 서비스 방법.providing a test option including a list of one or more predefined test scenarios and a list of test target terminals connected to the server to the user;
acquiring a plurality of test scripts corresponding to the test scenario selected by the user from the list of the one or more test scenarios based on the user's selection of the test option;
matching each of the plurality of test scripts and the plurality of test target terminals selected by the user from the list of the test target terminals; and
and transmitting a test request to the server so that a matched test script is executed in each of the plurality of test target terminals selected by the user.
상기 테스트 옵션은,
상기 하나 이상의 테스트 시나리오 각각을 구성하는 테스트 시나리오 별 테스트 스크립트의 목록을 더 포함하고,
상기 매칭하는 동작은,
상기 사용자로부터 상기 사용자가 선택한 테스트 시나리오를 구성하는 테스트 스크립트의 목록과 상기 사용자가 선택한 복수의 테스트 대상 단말 사이의 매칭 정보를 획득하는 동작; 및
상기 매칭 정보에 기초하여 상기 획득한 복수의 테스트 스크립트와 상기 사용자가 선택한 복수의 테스트 대상 단말을 각각 매칭하는 동작을 포함하는, 테스트 자동화 서비스 방법.The method according to claim 1,
The test option is
Further comprising a list of test scripts for each test scenario constituting each of the one or more test scenarios,
The matching operation is
obtaining, from the user, matching information between a list of test scripts constituting the test scenario selected by the user and a plurality of test target terminals selected by the user; and
and matching each of the plurality of obtained test scripts and the plurality of test target terminals selected by the user based on the matching information.
상기 매칭하는 동작은,
상기 획득한 복수의 테스트 스크립트와 상기 사용자가 선택한 복수의 테스트 대상 단말을 기 설정된 매칭 기준에 기초하여 매칭하는, 테스트 자동화 서비스 방법.The method according to claim 1,
The matching operation is
A test automation service method for matching the plurality of obtained test scripts and the plurality of test target terminals selected by the user based on a preset matching criterion.
상기 매칭하는 동작은,
상기 사용자가 선택한 복수의 테스트 대상 단말 각각에 적어도 하나의 테스트 스크립트를 매칭하는, 테스트 자동화 서비스 방법.The method according to claim 1,
The matching operation is
A test automation service method for matching at least one test script to each of the plurality of test target terminals selected by the user.
상기 매칭하는 동작은,
상기 획득한 복수의 테스트 스크립트 각각이 상기 사용자가 선택한 복수의 테스트 대상 단말에 중복하여 적용되지 않도록 매칭하는, 테스트 자동화 서비스 방법.The method according to claim 1,
The matching operation is
The test automation service method, wherein each of the acquired test scripts is matched so as not to be duplicately applied to the plurality of test target terminals selected by the user.
상기 매칭하는 동작은,
상기 사용자가 선택한 복수의 테스트 대상 단말 각각에 대응되는 기 생성된 폴더 내에 상기 획득한 복수의 테스트 스크립트를 나누어 저장함으로써, 특정 폴더에 대응되는 테스트 대상 단말과 상기 특정 폴더 내에 저장된 테스트 스크립트를 매칭하는, 테스트 자동화 서비스 방법.The method according to claim 1,
The matching operation is
By dividing and storing the plurality of obtained test scripts in a folder that is previously created corresponding to each of the plurality of test target terminals selected by the user, the test target terminal corresponding to the specific folder and the test script stored in the specific folder are matched, Test automation service methods.
상기 하나 이상의 프로세서에 의해 실행되도록 구성되는 하나 이상의 프로그램을 저장하는 메모리를 포함하는 장치로서,
상기 프로그램은,
사용자에게 기 정의된 하나 이상의 테스트 시나리오의 목록 및 서버와 연결된 테스트 대상 단말의 목록을 포함하는 테스트 옵션을 제공하는 동작;
상기 테스트 옵션에 대한 상기 사용자의 선택에 기초하여, 상기 하나 이상의 테스트 시나리오의 목록 중 상기 사용자가 선택한 테스트 시나리오에 대응되는 복수의 테스트 스크립트를 획득하는 동작;
상기 획득한 복수의 테스트 스크립트와 상기 테스트 대상 단말의 목록 중 상기 사용자가 선택한 복수의 테스트 대상 단말을 각각 매칭하는 동작; 및
상기 사용자가 선택한 복수의 테스트 대상 단말 각각에서 매칭된 테스트 스크립트가 수행되도록 상기 서버에 테스트 요청을 전송하는 동작을 실행하기 위한 명령어들을 포함하는, 테스트 자동화 서비스 장치.one or more processors; and
an apparatus comprising a memory to store one or more programs configured to be executed by the one or more processors;
The program is
providing a test option including a list of one or more predefined test scenarios and a list of test target terminals connected to the server to the user;
acquiring a plurality of test scripts corresponding to the test scenario selected by the user from the list of the one or more test scenarios based on the user's selection of the test option;
matching each of the plurality of test scripts and the plurality of test target terminals selected by the user from the list of the test target terminals; and
and instructions for executing an operation of transmitting a test request to the server so that a matched test script is executed in each of the plurality of test target terminals selected by the user.
상기 테스트 옵션은,
상기 하나 이상의 테스트 시나리오 각각을 구성하는 테스트 시나리오 별 테스트 스크립트의 목록을 더 포함하고,
상기 매칭하는 동작은,
상기 사용자로부터 상기 사용자가 선택한 테스트 시나리오를 구성하는 테스트 스크립트의 목록과 상기 사용자가 선택한 복수의 테스트 대상 단말 사이의 매칭 정보를 더 획득하는 동작; 및
상기 매칭 정보에 기초하여 상기 획득한 복수의 테스트 스크립트와 상기 사용자가 선택한 복수의 테스트 대상 단말을 각각 매칭하는 동작을 포함하는, 테스트 자동화 서비스 장치.8. The method of claim 7,
The test option is
Further comprising a list of test scripts for each test scenario constituting each of the one or more test scenarios,
The matching operation is
further obtaining, from the user, matching information between a list of test scripts constituting the test scenario selected by the user and a plurality of test target terminals selected by the user; and
and matching each of the plurality of obtained test scripts and the plurality of test target terminals selected by the user based on the matching information.
상기 매칭하는 동작은,
상기 획득한 복수의 테스트 스크립트와 상기 사용자가 선택한 복수의 테스트 대상 단말을 기 설정된 매칭 기준에 기초하여 매칭하는, 테스트 자동화 서비스 장치.8. The method of claim 7,
The matching operation is
A test automation service apparatus for matching the plurality of obtained test scripts and the plurality of test target terminals selected by the user based on a preset matching criterion.
상기 매칭하는 동작은,
상기 사용자가 선택한 복수의 테스트 대상 단말 각각에 적어도 하나의 테스트 스크립트를 매칭하는, 테스트 자동화 서비스 장치.8. The method of claim 7,
The matching operation is
A test automation service apparatus for matching at least one test script to each of the plurality of test target terminals selected by the user.
상기 매칭하는 동작은,
상기 획득한 복수의 테스트 스크립트 각각이 상기 사용자가 선택한 복수의 테스트 대상 단말에 중복하여 적용되지 않도록 매칭하는, 테스트 자동화 서비스 장치.8. The method of claim 7,
The matching operation is
A test automation service apparatus that matches each of the obtained plurality of test scripts so as not to be applied to the plurality of test target terminals selected by the user in duplicate.
상기 매칭하는 동작은,
상기 사용자가 선택한 복수의 테스트 대상 단말 각각에 대응되는 기 생성된 폴더 내에 상기 획득한 복수의 테스트 스크립트를 나누어 저장함으로써, 특정 폴더에 대응되는 테스트 대상 단말과 상기 특정 폴더 내에 저장된 테스트 스크립트를 매칭하는, 테스트 자동화 서비스 장치.8. The method of claim 7,
The matching operation is
By dividing and storing the plurality of obtained test scripts in a folder that is previously created corresponding to each of the plurality of test target terminals selected by the user, the test target terminal corresponding to the specific folder and the test script stored in the specific folder are matched, Test automation service device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200137892A KR102481502B1 (en) | 2020-10-22 | 2020-10-22 | Apparatus and method for test automation service |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200137892A KR102481502B1 (en) | 2020-10-22 | 2020-10-22 | Apparatus and method for test automation service |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220053434A true KR20220053434A (en) | 2022-04-29 |
KR102481502B1 KR102481502B1 (en) | 2022-12-26 |
Family
ID=81428814
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200137892A KR102481502B1 (en) | 2020-10-22 | 2020-10-22 | Apparatus and method for test automation service |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102481502B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009116535A (en) * | 2007-11-05 | 2009-05-28 | Sony Corp | Automatic test system, automatic test method and program |
KR101196522B1 (en) | 2010-11-03 | 2012-11-01 | 주식회사 엔씨소프트 | Stress test system for online game server based on script and method thereof |
KR20190019009A (en) * | 2018-07-19 | 2019-02-26 | 넷마블 주식회사 | Method and apparatus for automating game test |
-
2020
- 2020-10-22 KR KR1020200137892A patent/KR102481502B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009116535A (en) * | 2007-11-05 | 2009-05-28 | Sony Corp | Automatic test system, automatic test method and program |
KR101196522B1 (en) | 2010-11-03 | 2012-11-01 | 주식회사 엔씨소프트 | Stress test system for online game server based on script and method thereof |
KR20190019009A (en) * | 2018-07-19 | 2019-02-26 | 넷마블 주식회사 | Method and apparatus for automating game test |
Also Published As
Publication number | Publication date |
---|---|
KR102481502B1 (en) | 2022-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200264902A1 (en) | Configuration for Application Using Microservices | |
US9983892B2 (en) | Deep linking to mobile application states through programmatic replay of user interface events | |
US20180276111A1 (en) | Mock services for software infrastructures | |
Lou | A comparison of Android native app architecture MVC, MVP and MVVM | |
CN110928791B (en) | Program testing method, program testing device, computer equipment and storage medium | |
US20160085658A1 (en) | Analytics For Mobile Applications | |
US9858094B2 (en) | Monitoring and actuation of view controller parameters to reach deep states without manual developer intervention | |
US11422785B2 (en) | Container orchestration framework | |
KR20150064063A (en) | Secure identification of computing device and secure identification methods | |
CN110944048A (en) | Service logic configuration method and device | |
US11200155B2 (en) | System and method for automated application testing | |
US10705858B2 (en) | Automatic import of third party analytics | |
US11872488B2 (en) | Method and system for providing game using switching between continuous and automatic battle and manual battle | |
CN108369503A (en) | Automatic system response to external field replaceable units (FRU) process | |
CN115994085A (en) | Code coverage rate test processing method, device, equipment and storage medium | |
US20180349102A1 (en) | Apparatus and method for converting large-scale application | |
US11232019B1 (en) | Machine learning based test coverage in a production environment | |
KR102481502B1 (en) | Apparatus and method for test automation service | |
US20200097271A1 (en) | Method and system for operating a software application on a processor of a mobile device | |
KR102481249B1 (en) | Apparatus and method for test automation service | |
US20150222485A1 (en) | Dynamic server configuration and initialization | |
US11779842B2 (en) | Method and system for providing game using continuous and automatic battle function | |
KR102481527B1 (en) | Apparatus and method for test automation service | |
CN104980473A (en) | UI resource loading method and system | |
KR102481254B1 (en) | Apparatus and method for test automation service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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) | ||
GRNT | Written decision to grant |