KR102087208B1 - Mnemonic based method for gui test automation and apparatus using the same - Google Patents

Mnemonic based method for gui test automation and apparatus using the same Download PDF

Info

Publication number
KR102087208B1
KR102087208B1 KR1020180005855A KR20180005855A KR102087208B1 KR 102087208 B1 KR102087208 B1 KR 102087208B1 KR 1020180005855 A KR1020180005855 A KR 1020180005855A KR 20180005855 A KR20180005855 A KR 20180005855A KR 102087208 B1 KR102087208 B1 KR 102087208B1
Authority
KR
South Korea
Prior art keywords
gui
menu
test
mnemonic
module
Prior art date
Application number
KR1020180005855A
Other languages
Korean (ko)
Other versions
KR20190087724A (en
Inventor
최윤석
Original Assignee
주식회사 한글과컴퓨터
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 한글과컴퓨터 filed Critical 주식회사 한글과컴퓨터
Priority to KR1020180005855A priority Critical patent/KR102087208B1/en
Publication of KR20190087724A publication Critical patent/KR20190087724A/en
Application granted granted Critical
Publication of KR102087208B1 publication Critical patent/KR102087208B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은, GUI 테스트 대상 애플리케이션을 실행하는 애플리케이션 실행모듈; GUI 메뉴 항목을 나타내는 니모닉을 판독하여 GUI 메뉴 항목의 실행 영역을 감지하는 니모닉 판독모듈; 니모닉 판독부의 판독 결과를 이용하여 입력 디바이스를 제어함으로써 메뉴 항목을 테스트하는 입력 디바이스 제어모듈; 및 상기 테스트를 통해 테스트 항목에 할당된 핸들값을 분석하는 분석모듈을 포함하는 GUI 테스트 자동화 장치를 개시한다. 본 발명에 따르면, 메뉴에 표시된 니모닉 명을 이용하여 메뉴를 빠르게 찾고, 해당 메뉴를 실행함으로써 입력 디바이스를 제어하는 범위 및 테스트 시간을 획기적으로 줄일 수 있다.The present invention, the application execution module for executing the GUI test target application; A mnemonic reading module for reading a mnemonic representing a GUI menu item and detecting an execution region of the GUI menu item; An input device control module that tests a menu item by controlling the input device using the read result of the mnemonic readout; And an analysis module for analyzing a handle value assigned to a test item through the test. According to the present invention, by quickly finding a menu using a mnemonic name displayed on the menu and executing the menu, the range and test time for controlling the input device can be drastically reduced.

Description

니모닉 기반의 GUI 테스트 자동화 방법 및 이를 이용하는 장치{MNEMONIC BASED METHOD FOR GUI TEST AUTOMATION AND APPARATUS USING THE SAME}Mnemonic-Based Method for GUI Test Automation and Apparatus USing the SAME

본 발명은 애플리케이션 자동분석 방법 및 이를 이용하는 자동분석 장치에 관한 것으로, 더욱 상세하게는 애플리케이션의 메뉴 실행을 통해 기능을 점검함으로써, 애플리케이션이 설계된 사용자 인터페이스에 따라 제대로 동작하는지 여부를 자동으로 테스트하고 그 결과를 분석하는 방법 및 이를 이용하는 장치에 관한 것이다.The present invention relates to a method for automatically analyzing an application and an automatic analysis device using the same. More particularly, by checking a function through execution of a menu of an application, it is automatically tested whether the application works properly according to a designed user interface and the result. It relates to a method for analyzing and an apparatus using the same.

최근 개발되는 소프트웨어, 애플리케이션 또는 프로그램들은 다양한 플랫폼 및 다양한 운영체제 환경에서 동작하도록 개발되고 있으며, 또한 과거와 비교하여 여러 가지 기술의 융합에 따라 다양한 기능 포함하고 있는 것이 특징이다.Recently developed software, applications or programs are developed to operate on various platforms and various operating system environments, and also include various functions according to the convergence of various technologies compared to the past.

이러한 애플리케이션은 제작 단계에서 GUI의 기능이 설계대로 제대로 동작하는지 테스트하는 과정을 거치게 된다. 즉, 애플리케이션이 다양한 플랫폼 및 운영체제 환경에서 GUI를 통한 입력에 대해 기대되는 기능을 실행하고 합당한 결과를 출력하는지, 무한 루프의 오류로 인해서 애플리케이션을 구동하는 장치가 정지되는 일은 없는지를 판단하는 테스트가 수행된다.These applications go through the production stages of testing the functionality of the GUI as designed. That is, a test is performed to determine whether the application performs the expected function on the input through the GUI and outputs reasonable results on various platforms and operating system environments, and whether the device running the application is stopped due to an infinite loop of errors. do.

그런데 개발자는 이러한 테스트를 위해서 점검 항목 및 메뉴 분석 등의 작업을 수작업을 통해 수행해야 하는 경우가 대부분이다. 이는 테스트 환경을 사용자들이 애플리케이션을 이용하는 환경과 동일하게 맞추고, 사용자들이 애플리케이션을 이용하는 방법과 동일한 방법으로 테스트를 수행함으로써 실제 사용환경에서 발생하는 오류가 검출될 수 있기 때문이다. 그리고 오류 검출의 신뢰도 확립을 위해 사용자의 사용환경과 동일한 사용환경에서 사용자가 수행하는 방법과 동일한 방법에 의한 테스트가 반복적으로 수행되어야 한다.However, developers often have to carry out manual items such as check items and menu analysis for these tests. This is because errors in the actual environment can be detected by matching the test environment to the environment in which the user uses the application, and performing the test in the same manner as the user uses the application. And in order to establish the reliability of error detection, the test by the same method as that performed by the user in the same use environment as the user's use environment should be repeatedly performed.

상기 수작업에 의한 테스트 과정에서 개발자는 직접 점검 범위를 계획하고, 일반 사용자가 애플리케이션을 사용하는 환경 및 방법과 동일하도록 테스트 동작을 프로그래밍에 의해 설정하게 된다.In the manual test process, the developer directly plans a check range, and sets the test operation by programming to be identical to the environment and method in which the general user uses the application.

따라서 테스트를 진행하기 위해서는 사용자가 애플리케이션을 사용하는 과정을 모두 설정하여 수행해야 하며, 테스트 항목을 추가할수록 테스트의 준비를 위한 과정이 복잡해지고, 준비 시간이 크게 증가하게 되는 문제점이 있다.Therefore, in order to proceed with the test, the user must set up and use all the processes of using the application. As the test items are added, the process for preparing the test is complicated, and the preparation time is greatly increased.

한국 공개특허 10-2014-0004495(공개일 2014.01.13) "응용 프로그램의 자동 테스트 방법 및 그 전자 장치"Korean Patent Laid-Open Publication No. 10-2014-0004495 (published Jan. 13, 2014) "Automatic test method of an application and its electronic device"

본 발명이 해결하고자 하는 과제는, 메뉴에 표시된 니모닉 명을 이용하여 메뉴를 빠르게 찾고, 해당 메뉴를 실행함으로써 입력 디바이스를 제어하는 범위를 획기적으로 줄일 수 있는 GUI 테스트 자동화 방법 및 이를 이용하는 장치를 제공하는 것이다.SUMMARY OF THE INVENTION An object of the present invention is to provide a GUI test automation method and apparatus using the same that can dramatically reduce the scope of controlling an input device by quickly finding a menu using a mnemonic name displayed on a menu and executing the menu. will be.

본 발명이 추가적으로 해결하려는 과제는, 메뉴에 표시된 니모닉 명을 이용하여 메뉴의 실행 영역을 찾고, 메뉴 실행에 있어서 복수의 입력 디바이스를 이용함으로써 복수의 테스트를 동시에 수행하고 그 결과를 복합적으로 분석할 수 있는 GUI 테스트 자동화 방법 및 이를 이용하는 장치를 제공하는 것이다.The present invention further solves the problem by using the mnemonic name displayed on the menu to find the execution region of the menu, and executing the plurality of tests simultaneously by using a plurality of input devices in executing the menu, and analyzing the results in combination. To provide a GUI test automation method and a device using the same.

본 발명의 일 실시 예에 따른 GUI 테스트 자동화 장치는, GUI 테스트 대상 애플리케이션을 실행하는 애플리케이션 실행모듈; GUI 메뉴 항목을 나타내는 니모닉을 판독하여 GUI 메뉴 항목의 실행 영역을 감지하는 니모닉 판독모듈; 니모닉 판독부의 판독 결과를 이용하여 입력 디바이스를 제어함으로써 메뉴 항목을 테스트하는 입력 디바이스 제어모듈; 및 상기 테스트를 통해 테스트 항목에 할당된 핸들값을 분석하는 분석모듈을 포함하는 것을 특징으로 한다.GUI test automation apparatus according to an embodiment of the present invention, the application execution module for executing a GUI test target application; A mnemonic reading module for reading a mnemonic representing a GUI menu item and detecting an execution region of the GUI menu item; An input device control module that tests a menu item by controlling the input device using the read result of the mnemonic readout; And it characterized in that it comprises an analysis module for analyzing the handle value assigned to the test item through the test.

여기서, 상기 자동화 장치는, 입력 디바이스 제어모듈의 제어 대상인 입력 디바이스로서 마우스 및 키보드를 더 포함하는 것을 특징으로 한다.Herein, the automation device may further include a mouse and a keyboard as input devices to be controlled by the input device control module.

여기서, 상기 자동화 장치는, GUI 테스트 대상 애플리케이션의 GUI 화면을 출력하는 디스플레이 디바이스를 더 포함하는 것을 특징으로 한다.Here, the automation apparatus may further include a display device for outputting a GUI screen of the GUI test target application.

여기서, 상기 애플리케이션 실행모듈은, GUI 테스트 대상 애플리케이션이 실제 실행되는 환경과 동일한 상태에서 GUI 테스트 대상 애플리케이션을 실행하는 것을 특징으로 한다.The application execution module may be configured to execute the GUI test target application in the same state as the environment in which the GUI test target application is actually executed.

여기서, 상기 입력 디바이스 제어모듈은, 니모닉 판독에 기초하여 키보드 제어만을 이용하여 메뉴 항목을 실행시키는 것을 특징으로 한다.Here, the input device control module is characterized in that to execute a menu item using only keyboard control based on mnemonic reading.

여기서, 상기 입력 디바이스 제어모듈은, 상기 GUI 메뉴 항목의 실행 영역으로 상기 포인터를 이동시키고 해당 메뉴를 실행하도록 입력 디바이스를 제어하는 것을 특징으로 한다.The input device control module may control the input device to move the pointer to an execution region of the GUI menu item and to execute a corresponding menu.

여기서, 상기 입력 디바이스 제어모듈은, 입력 디바이스로서 마우스의 클릭 및 키보드의 키 입력을 제어하는 것을 특징으로 한다.Here, the input device control module is characterized in that the control of the mouse click and keyboard input of the input device.

여기서, 상기 니모닉 판독모듈은, 이미지 판독 방법을 이용하여 니모닉을 판독하는 것을 특징으로 한다.Here, the mnemonic reading module is characterized in that to read the mnemonics using an image reading method.

여기서, 상기 니모닉 판독모듈은, 상기 GUI 메뉴 영역을 복수 개로 구분하고, 구분된 영역별로 실행 가능 메뉴 영역 및 GUI 변화를 감지하는 것을 특징으로 한다.Here, the mnemonic reading module divides the GUI menu area into a plurality, and detects an executable menu area and a GUI change for each divided area.

여기서, 상기 분석모듈은, 상기 테스트 결과를 이용하여 GUI 설계상의 오류를 검출하는 것을 특징으로 한다.Here, the analysis module, characterized in that for detecting an error in the GUI design using the test results.

여기서, 상기 자동화 장치는, GUI 설계시에 GUI 테스트 대상 애플리케이션을 구성하는 요소에 할당된 기본값을 저장하는 저장 장치를 더 포함하고, 상기 분석모듈은, GUI 테스트를 통해 핸들값을 획득하고, 획득한 핸들값과 상기 할당된 기본값의 비교를 통해 GUI 설계상의 오류를 검출하는 것을 특징으로 한다.The automation device may further include a storage device configured to store default values assigned to elements constituting the GUI test target application during GUI design, and the analysis module may acquire and obtain a handle value through a GUI test. The error in the GUI design is detected by comparing the handle value with the assigned default value.

여기서, 상기 기본값은, GUI 설계시에 GUI 최상위 메뉴와 이로부터 분기되는 메뉴의 위치, 형태 및 메뉴에 의해 호출되는 기능에 할당된 핸들값인 것을 특징으로 한다.Here, the default value may be a handle value assigned to a GUI top menu and a position, a form of a menu branched therefrom, and a function called by the menu.

본 발명의 일 실시 예에 따른 GUI 테스트 자동화 방법은, GUI 테스트 대상 애플리케이션을 실행하는 단계; GUI 메뉴 항목을 나타내는 니모닉을 판독하여 GUI 메뉴 항목의 실행 영역을 감지하는 단계; 니모닉 판독을 이용하여 입력 디바이스를 제어함으로써 메뉴 항목을 테스트하는 단계; 및 상기 테스트를 통해 테스트 항목에 할당된 핸들값을 분석하는 단계를 포함하는 것을 특징으로 한다.GUI test automation method according to an embodiment of the present invention, executing the GUI test target application; Reading a mnemonic representing the GUI menu item to detect an execution region of the GUI menu item; Testing the menu item by controlling the input device using mnemonic readout; And analyzing the handle value assigned to the test item through the test.

여기서, 상기 자동화 방법은, 입력 디바이스 제어모듈의 제어 대상인 입력 디바이스로서 마우스 및 키보드를 더 포함하는 것을 특징으로 한다.Here, the automation method may further include a mouse and a keyboard as input devices to be controlled by the input device control module.

여기서, 상기 자동화 방법은, GUI 테스트 대상 애플리케이션의 GUI 화면을 출력하는 단계를 더 포함하는 것을 특징으로 한다.Herein, the automation method may further include outputting a GUI screen of the GUI test target application.

여기서, 상기 GUI 테스트 대상 애플리케이션을 실행하는 단계는, GUI 테스트 대상 애플리케이션이 실제 실행되는 환경과 동일한 상태에서 GUI 테스트 대상 애플리케이션을 실행하는 것을 특징으로 한다.Here, the step of executing the GUI test target application, characterized in that for running the GUI test target application in the same state as the environment in which the GUI test target application is actually executed.

여기서, 상기 메뉴 항목을 테스트하는 단계는, 입력 디바이스가 표시하는 포인터의 위치를 제어하는 단계를 포함하는 것을 특징으로 한다.The testing of the menu item may include controlling a position of a pointer displayed by the input device.

여기서, 상기 메뉴 항목을 테스트하는 단계는, 상기 GUI 메뉴 항목의 실행 영역으로 상기 포인터를 이동시키고 해당 메뉴를 실행하도록 입력 디바이스를 제어하는 것을 특징으로 한다.The testing of the menu item may include controlling the input device to move the pointer to an execution region of the GUI menu item and to execute a corresponding menu.

여기서, 상기 메뉴 항목을 테스트하는 단계는, 입력 디바이스로서 마우스의 클릭 및 키보드의 키 입력을 제어하는 것을 특징으로 한다.The testing of the menu item may include controlling a click of a mouse and a key input of a keyboard as an input device.

여기서, 상기 GUI 메뉴 항목의 실행 영역을 감지하는 단계는, 이미지 판독 방법을 이용하여 니모닉을 판독하는 것을 특징으로 한다.In the detecting of the execution region of the GUI menu item, the mnemonic is read using an image reading method.

여기서, 상기 GUI 메뉴 항목의 실행 영역을 감지하는 단계는, 상기 GUI 메뉴 영역을 복수 개로 구분하고, 구분된 영역별로 실행 가능 메뉴 영역 및 GUI 변화를 감지하는 것을 특징으로 한다.In the detecting of the execution region of the GUI menu item, the GUI menu region may be divided into a plurality, and the executable menu region and the GUI change may be detected for each divided region.

여기서, 상기 핸들값을 분석하는 단계는, 상기 테스트 결과를 이용하여 GUI 설계상의 오류를 검출하는 것을 특징으로 한다.In the analyzing of the handle value, an error in GUI design may be detected using the test result.

여기서, 상기 자동화 방법은, GUI 설계시에 GUI 테스트 대상 애플리케이션을 구성하는 요소에 할당된 기본값을 저장하는 단계를 더 포함하고, 상기 핸들값을 분석하는 단계는, GUI 테스트를 통해 핸들값을 획득하고, 획득한 핸들값과 상기 할당된 기본값의 비교를 통해 GUI 설계상의 오류를 검출하는 것을 특징으로 한다.The automation method may further include storing default values assigned to elements constituting the GUI test target application during GUI design, and analyzing the handle value may include obtaining a handle value through a GUI test. In addition, an error in the GUI design may be detected by comparing the acquired handle value with the assigned default value.

여기서, 상기 기본값은, GUI 설계시에 GUI 최상위 메뉴와 이로부터 분기되는 메뉴의 위치, 형태 및 메뉴에 의해 호출되는 기능에 할당된 핸들값인 것을 특징으로 한다.Here, the default value may be a handle value assigned to a GUI top menu and a position, a form of a menu branched therefrom, and a function called by the menu.

본 발명에 의하면, 메뉴에 표시된 니모닉 명을 이용하여 메뉴를 빠르게 찾고, 해당 메뉴를 실행함으로써 입력 디바이스를 제어하는 범위 및 테스트 시간을 획기적으로 줄일 수 있다.According to the present invention, by quickly finding a menu using a mnemonic name displayed on the menu and executing the menu, the range and test time for controlling the input device can be drastically reduced.

또한, 메뉴에 표시된 니모닉 명을 이용하여 메뉴의 실행 영역을 찾고, 메뉴 실행에 있어서 복수의 입력 디바이스를 이용하여 복수의 테스트를 동시에 수행함으로써 일회 테스트 범위를 확장시킬 수 있다.In addition, the execution range of the menu can be found by using the mnemonic name displayed on the menu, and the one-time test range can be extended by simultaneously performing a plurality of tests using a plurality of input devices in executing the menu.

도 1은 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 장치의 대략적인 블록도이다.
도 2는 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 장치를 포함하는 시스템 환경의 예시도이다.
도 3은 도 2에 관한 상세한 예시도이다.
도 4는 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 장치의 블록도이다.
도 5는 도 4의 제어부에 관한 상세한 블록도이다.
도 6은 본 발명의 일 실시 예에 따른 GUI 테스트 대상 애플리케이션 구동 장치에 해당하는 컴퓨팅 장치의 블록도이다.
도 7은 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 방법의 흐름도이다.
도 8a, 8b, 8c는 다양한 형태의 니모닉을 나타내는 예시도이다.
1 is a schematic block diagram of a GUI test automation apparatus according to an embodiment of the present invention.
2 is an exemplary diagram of a system environment including a GUI test automation apparatus according to an embodiment of the present invention.
3 is a detailed illustration of FIG. 2.
4 is a block diagram of a GUI test automation apparatus according to an embodiment of the present invention.
FIG. 5 is a detailed block diagram of the controller of FIG. 4.
6 is a block diagram of a computing device corresponding to a GUI test target application driving apparatus according to an exemplary embodiment.
7 is a flowchart illustrating a GUI test automation method according to an embodiment of the present invention.
8A, 8B and 8C are exemplary views illustrating various types of mnemonics.

이하, 첨부한 도면을 참조하여 GUI 테스트 자동화 장치 및 방법에 대한 바람직한 실시 예를 상세히 설명하기로 한다.Hereinafter, exemplary embodiments of the GUI test automation apparatus and method will be described in detail with reference to the accompanying drawings.

각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다. 또한 본 발명의 일 실시 예들에 대해서 특정한 구조적 내지 기능적 설명들은 단지 본 발명에 따른 실시 예를 설명하기 위한 목적으로 예시된 것으로, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는 것이 바람직하다.Like reference numerals in the drawings denote like elements. In addition, specific structural to functional descriptions of one embodiment of the present invention are only illustrated for the purpose of describing the embodiment according to the present invention, and unless otherwise defined, all terms used herein including technical or scientific terms are used. The terms have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art, and shall not be construed in ideal or excessively formal meanings unless expressly defined herein. It is preferable not to.

도 1은 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 장치의 대략적인 블록도이다.1 is a schematic block diagram of a GUI test automation apparatus according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 장치(100)는 스탠드 얼론 형태로 운영체제(176), 테스트 애플리케이션 모듈(175) 및 GUI 테스트 대상 애플리케이션 모듈(179)을 모두 메모리(177)에 탑재할 수 있다.Referring to FIG. 1, the GUI test automation apparatus 100 according to an embodiment of the present invention may store all of the operating system 176, the test application module 175, and the GUI test target application module 179 in a stand-alone form. 177) can be mounted.

또한, GUI 테스트 자동화 장치(100)는 네트워크를 통해 여러 대의 컴퓨팅 장치(200)에서 구동되는 GUI 테스트 대상 애플리케이션 모듈(275)을 테스트할 수 있다.In addition, the GUI test automation device 100 may test the GUI test target application module 275 that is driven by the plurality of computing devices 200 through a network.

도 2는 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 장치를 포함하는 시스템 환경의 예시도이다.2 is an exemplary diagram of a system environment including a GUI test automation apparatus according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일 실시 예에 따른 시스템 환경(1)은 GUI 테스트 자동화 장치(100), 다수의 GUI 테스트 대상 애플리케이션 구동 장치(200), 데이터베이스(300) 및 네트워크(400)를 포함한다. 도 2를 구체적으로 나타내면 도 3과 같다.Referring to FIG. 2, the system environment 1 according to an exemplary embodiment may include a GUI test automation apparatus 100, a plurality of GUI test target application driving apparatuses 200, a database 300, and a network 400. Include. 2 is shown in FIG. 3 in detail.

도 3은 도 2에 관한 상세한 예시도이다.3 is a detailed illustration of FIG. 2.

도 3을 참조하면, GUI 테스트 자동화 장치(100)는 운영체제(176) 및 테스트 애플리케이션 모듈(175)을 메모리(177)에 탑재하고, GUI 테스트 대상 애플리케이션 구동 장치(200)는 운영체제(276) 및 GUI 테스트 대상 애플리케이션 모듈(275)을 메모리(277)에 탑재한다.Referring to FIG. 3, the GUI test automation apparatus 100 includes an operating system 176 and a test application module 175 in a memory 177, and the GUI test target application driving apparatus 200 includes an operating system 276 and a GUI. The test object application module 275 is mounted in the memory 277.

네트워크(400)는 유선 및 무선 네트워크, 예를 들어 인터넷(internet), 인트라넷(intranet) 및 엑스트라넷(extranet), 셀룰러, 예를 들어 무선 전화 네트워크, LAN(local area network), WAN(wide area network), WiFi 네트워크, 애드혹 네트워크 및 이들의 조합을 비롯한 임의의 적절한 통신 네트워크 일 수 있다.Network 400 may be a wired and wireless network, such as the Internet, intranet and extranet, cellular, such as a wireless telephone network, a local area network, a wide area network. ), A WiFi network, an ad hoc network, and a combination thereof.

데이터베이스(300)는 니모닉 판독을 위한 기준 이미지 및 테스트 결과에 기초하여 GUI 변화를 판독하는데 이용되는 기준 이미지에 관한 데이터베이스를 포함할 수 있다.Database 300 may include a database of reference images used to read GUI changes based on the reference image for mnemonic reading and test results.

네트워크(400)는 허브, 브리지, 라우터, 스위치 및 게이트웨이와 같은 네트워크 요소들의 연결을 포함할 수 있다. 네트워크(400)는 인터넷과 같은 공용 네트워크 및 안전한 기업 사설 네트워크와 같은 사설 네트워크를 비롯한 하나 이상의 연결된 네트워크들, 예컨대 다중 네트워크 환경을 포함할 수 있다. 네트워크(400)에의 액세스는 하나 이상의 유선 또는 무선 액세스 네트워크들을 통해 제공될 수 있다. 이하 도 3에 나타낸 구성에 따라 GUI 테스트 자동화 장치(100)에 대해 설명하기로 한다.Network 400 may include a connection of network elements such as hubs, bridges, routers, switches, and gateways. Network 400 may include one or more connected networks, such as a multi-network environment, including a public network such as the Internet and a private network such as a secure corporate private network. Access to network 400 may be provided through one or more wired or wireless access networks. Hereinafter, the GUI test automation apparatus 100 will be described according to the configuration shown in FIG. 3.

도 4는 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 장치의 블록도이다.4 is a block diagram of a GUI test automation apparatus according to an embodiment of the present invention.

도 4를 참조하면, GUI 테스트 자동화 장치(100)는 입력 디바이스(110), 디스플레이 디바이스(120), 출력 디바이스(130), 저장 장치(140), 통신 장치(150), 전원 장치(160) 및 제어부(170)를 포함한다. 그리고 제어부(170)는 테스트 애플리케이션 모듈(175)을 포함한다. 통신 장치(150)는 송신부(151) 및 수신부(152)를 포함한다.Referring to FIG. 4, the GUI test automation apparatus 100 includes an input device 110, a display device 120, an output device 130, a storage device 140, a communication device 150, a power supply device 160, and The control unit 170 is included. The controller 170 includes a test application module 175. The communication device 150 includes a transmitter 151 and a receiver 152.

입력 디바이스(110)는 GUI 테스트 대상 애플리케이션 모듈을 테스트하기 위해 테스트 애플리케이션 모듈을 구동하고 조작하는 데 필요한 입력을 수행하는 키보드, 터치스크린, 마우스, 전자펜 및 음성 입력장치, 예를 들어 마이크로폰을 포함하되, 이에 한정되는 것은 아니다. The input device 110 may include a keyboard, a touch screen, a mouse, an electronic pen, and a voice input device, such as a microphone, for performing input required to drive and manipulate the test application module for testing the GUI test application module. It is not limited to this.

디스플레이 디바이스(120)는 테스트 애플리케이션 모듈을 구동하는 화면의 프레임 출력을 수행하는 브라운관(cathode-ray tube, CRT), 액정 디스플레이(liquid crystal display, LCD), 플라즈마 디스플레이 패널(plasma display panel, PDP), 발광다이오드 (light emitting diode, LED) 디스플레이, 유기 발광다이오드(organic light emitting diode, OLED) 디스플레이를 포함하되, 이에 한정되는 것은 아니다.The display device 120 includes a cathode-ray tube (CRT), a liquid crystal display (LCD), a plasma display panel (PDP), which performs a frame output of a screen driving the test application module. Light emitting diode (LED) displays, and organic light emitting diode (OLED) displays include, but are not limited to these.

출력 디바이스(130)는 프린터, 플로터, 빔프로젝터, 텍스트 음성 변환(text to sound, TTS) 장치와 스피커 및 이어폰을 포함하되, 이에 한정되는 것은 아니다.The output device 130 includes, but is not limited to, a printer, a plotter, a beam projector, a text to sound (TTS) device, a speaker, and an earphone.

저장 장치(140)는 GUI 테스트 자동화 장치(100)로부터 분리가 가능/불가능한 모든 형태로서, 자기테이프, 자기드럼, 플로피 디스크, ZIP 드라이브 및 하드 디스크 드라이브(hard disk drive, HDD)와 같은 자기 방식의 저장장치, SD 카드, USB 메모리 및 솔리드 스테이트 드라이브(solid state drive, SSD)와 같은 플래시 메모리를 이용하는 전기 방식의 저장장치 및 CD-ROM 드라이브, DVD-ROM 드라이브, 블루레이 디스크(blu-ray disc) 드라이브와 같은 광학 방식의 저장장치를 포함하되, 이에 한정되는 것은 아니다. The storage device 140 may be any type of removable / non-removable device from the GUI test automation device 100. The storage device 140 may be provided in a magnetic manner such as a magnetic tape, a magnetic drum, a floppy disk, a ZIP drive, and a hard disk drive (HDD). Electrical storage and CD-ROM drives, DVD-ROM drives, blu-ray discs using flash memory such as storage devices, SD cards, USB memory and solid state drives (SSDs) Optical storage devices such as, but not limited to, drives.

통신 장치(150)는 네트워크(400)의 각종 통신망에 대응하는 통신 모듈, 예를 들어 블루투스 모듈, WiFi 모듈, 이더넷 인터페이스 카드, USB 모듈, 셀룰러 무선통신 모듈, 모뎀 및 무선 공유기를 포함하되, 이에 한정되는 것은 아니다. 통신 장치(150)는 내부에 송신부(151) 및 수신부(152)를 포함한다.The communication device 150 includes, but is not limited to, a communication module corresponding to various communication networks of the network 400, for example, a Bluetooth module, a WiFi module, an Ethernet interface card, a USB module, a cellular wireless communication module, a modem, and a wireless router. It doesn't happen. The communication device 150 includes a transmitter 151 and a receiver 152 therein.

전원 장치(160)는 AC를 DC로 변환하는 파워 서플라이, 어댑터, SMPS와 리튬이온 전지, 납축전지, 연료 전지 및 바이오에탄올 전지와 같은 2차 전지와 그 밖의 1차 전지를 포함하되, 이에 한정되는 것은 아니다.The power supply unit 160 includes, but is not limited to, power supplies, adapters for converting AC to DC, secondary batteries such as SMPS and lithium ion batteries, lead acid batteries, fuel cells and bioethanol batteries, and other primary batteries. It is not.

제어부(170)는 프로세서 및 운영체제와 테스트 애플리케이션 모듈(175)이 로드된 메모리 영역을 포함한다. 그리고 제어부(170)는 사용자 선택 또는 설정에 따라 테스트 애플리케이션 모듈이 포함하는 명령어 셋을 실행한다. 이하 제어부(170)에 대하여 상세히 설명하도록 한다.The controller 170 includes a memory area in which the processor, the operating system, and the test application module 175 are loaded. The controller 170 executes a command set included in the test application module according to a user selection or setting. Hereinafter, the control unit 170 will be described in detail.

도 5는 도 4의 제어부에 관한 상세한 블록도이다.5 is a detailed block diagram of the controller of FIG. 4.

도 5를 참조하면, 제어부(170)는 프로세서(central processing unit, CPU)(178)와, 운영체제(176) 및 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 방법에 관한 테스트 애플리케이션 모듈(175)이 로드된 메모리(177)를 포함한다. 구체적으로 제어부(170)는 메모리(176) 영역에서, 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 방법을 수행하는 컴퓨터 명령어 셋이 포함된 애플리케이션 실행모듈(171), 니모닉 판독모듈(172), 입력 디바이스 제어모듈(173) 및 분석모듈(174)을 포함한다.Referring to FIG. 5, the controller 170 includes a processor (central processing unit, CPU) 178, an operating system 176, and a test application module 175 relating to a GUI test automation method according to an embodiment of the present invention. Memory 177 loaded. Specifically, the control unit 170 in the memory 176, the application execution module 171, the mnemonic reading module 172, including the computer instruction set for performing a GUI test automation method according to an embodiment of the present invention, input And a device control module 173 and analysis module 174.

제어부(170)는 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 방법이 구현되도록 GUI 테스트 자동화 장치(100) 내의 각 구성요소 및 모듈들을 제어한다.The controller 170 controls each component and modules in the GUI test automation apparatus 100 to implement the GUI test automation method according to an embodiment of the present invention.

운영 체제(175)는 GUI 테스트 자동화 장치(100)의 파일 시스템, 각종 인터페이스를 관리 및 컴포넌트들의 동작을 제어하기 위한 컴퓨터 운영 프로그램이다. 운영 체제(175)는 그 예로서, 유선 및 모바일 디바이스의 운영 체제, 예를 들어 MS 윈도우, 유닉스, 리눅스, XOS, 안드로이드, iOS 운영 체제를 포함하고, 다만 이에만 한정되는 것은 아니다.The operating system 175 is a computer operating program for managing the file system, various interfaces, and controlling the operation of the components of the GUI test automation apparatus 100. Operating system 175 includes, but is not limited to, operating systems of wired and mobile devices, for example, MS Windows, Unix, Linux, XOS, Android, iOS operating systems.

테스트 애플리케이션 모듈(174)은 본 발명에 기술된 것과 같은 다양한 기능을 제공하기 위해 운영 체제(176) 상에서 실행되도록 구성된 실행가능 프로그램이다. 테스트 애플리케이션 모듈(175)은 애플리케이션 실행모듈(171), 니모닉 판독모듈(172), 입력 디바이스 제어모듈(173) 및 분석모듈(174)을 포함한다. 테스트 애플리케이션 모듈(175)이 포함하는 각종 모듈들(171 내지 174)에 대한 자세한 설명은 후술하기로 한다.Test application module 174 is an executable program configured to be executed on operating system 176 to provide various functionality as described herein. The test application module 175 includes an application execution module 171, a mnemonic reading module 172, an input device control module 173, and an analysis module 174. Detailed description of the various modules 171 to 174 included in the test application module 175 will be described later.

도 4 및 도 5에 도시된 GUI 테스트 자동화 장치(100) 구성에서 테스트 애플리케이션 모듈(175) 내의 구성은 설명의 편의를 위해 기능적으로 구분한 구성으로, 하드웨어적으로는 하나의 프로세서에 의해 처리되는 논리적인 기능으로 구성될 수 있는 것으로, 제시된 구분에 의해 본 발명을 한정하는 것은 아니다.In the GUI test automation device 100 illustrated in FIGS. 4 and 5, the configuration in the test application module 175 is a functionally divided configuration for convenience of description, and is logically processed by one processor in hardware. It can be configured as a phosphorus function, it does not limit the invention by the presented division.

또한, 각 구성간의 연결 관계가 연결선으로 도시되어 있거나, 상호 간의 연결 관계가 일일이 표현되어 있지 않지만, 연결선이 도시되지 않은 구성 간에도 제어 또는 데이터 교환을 위한 통신, 전달이 발생될 수 있으며, 제시된 바에 의해서만 본 발명을 한정하는 것은 아니다.In addition, although the connection relationship between each configuration is shown as a connection line, or the connection relationship between each other is not expressed individually, communication or transmission for control or data exchange may occur even between the configurations in which the connection line is not shown, and only as shown. It does not limit the invention.

본 발명의 일 실시 예에 따른 GUI 테스트 대상 애플리케이션 구동 장치(200)는 컴퓨팅 장치(500)에 해당될 수 있다. 이하 컴퓨팅 장치(500)에 해당하는 본 발명의 일 실시 예에 따른 GUI 테스트 대상 애플리케이션 구동 장치(200)는 실시 예를 통해 보다 구체적으로 설명될 수 있다.The GUI test target application driving apparatus 200 according to an exemplary embodiment may correspond to the computing device 500. Hereinafter, the GUI test target application driving apparatus 200 according to an embodiment of the present invention corresponding to the computing device 500 may be described in more detail with reference to the following embodiments.

컴퓨팅 장치(500)는 하나 이상의 CPU(central processing unit)들, 메모리, 대용량 저장소, 입력 인터페이스 장치, 출력 인터페이스 장치로 구성된 컴퓨팅 시스템을 포함할 수 있다. 컴퓨팅 시스템의 요소들은 버스를 통해 서로 통신할 수 있다.The computing device 500 may include a computing system consisting of one or more central processing units (CPUs), memory, mass storage, an input interface device, and an output interface device. The elements of the computing system can communicate with each other via a bus.

컴퓨팅 장치의 하드웨어 플랫폼은 개인용 컴퓨터, 핸드헬드 또는 랩톱 디바이스, 다중 프로세서 시스템, 마이크로프로세서 기반 시스템, 프로그램 가전제품, 및 이상의 시스템들 또는 디바이스들 중 임의의 것을 포함하는 분산 컴퓨팅 환경, 예컨대 클라우드 기반 컴퓨팅 시스템을 비롯한 많은 형태들로 구현될 수 있다.The hardware platform of the computing device may be a distributed computing environment, such as a cloud based computing system, including any of a personal computer, handheld or laptop device, a multiprocessor system, a microprocessor based system, a program appliance, and any of the above systems or devices. It can be implemented in many forms, including.

도 6은 본 발명의 일 실시 예에 따른 GUI 테스트 대상 애플리케이션 구동 장치에 해당하는 컴퓨팅 장치의 블록도이다.6 is a block diagram of a computing device corresponding to a GUI test target application driving apparatus according to an exemplary embodiment.

도 6을 참조하면, 컴퓨팅 장치(500)는 입력 인터페이스 장치(510), 출력 인터페이스 장치(520), 메모리(531), 저장장치(532), 전원 장치(540), 프로세서(550), 네트워크 인터페이스 장치(560), 무선통신 장치(570) 및 버스(580)를 포함한다.Referring to FIG. 6, the computing device 500 includes an input interface device 510, an output interface device 520, a memory 531, a storage device 532, a power supply 540, a processor 550, and a network interface. Device 560, wireless communication device 570, and bus 580.

입력 인터페이스 장치(510)는 사용자의 입력에 따라 문서작성에 필요한 문자 또는 개체를 입력한다. 입력 인터페이스 장치(510)는 키보드(keyboard), 터치스크린(touch screen), 마우스(mouse), 전자펜(stylus pen) 및 펜 태블릿(pen tablet)을 포함하되, 이에 한정되는 것은 아니다.The input interface device 510 inputs a character or an object necessary for creating a document according to a user's input. The input interface device 510 includes, but is not limited to, a keyboard, a touch screen, a mouse, a stylus pen, and a pen tablet.

출력 인터페이스 장치(520)는 문서편집 애플리케이션 모듈 관련 사용자 인터페이스 등을 표시하는 디스플레이(display) 및 문서를 프린트 출력하는 프린터(printer)를 포함한다. 또한, 출력 인터페이스 장치(520)는 문서 내의 문자를 음성합성(text to speech, TTS) 엔진을 이용하여 음성으로 출력하는 스피커(speaker), 헤드폰(head-phone) 및 헤드셋(head-set)을 포함한다.The output interface device 520 includes a display for displaying a user interface related to a document editing application module and the like, and a printer for printing and outputting a document. In addition, the output interface device 520 includes a speaker, a head-phone, and a headset for outputting text in a document as a speech using a text to speech (TTS) engine. do.

프로세서(550)는 메모리(531) 및/또는 저장 장치(532)에 저장된 본 발명의 일 실시 예에 따른 데이터 백업 방법에 관한 문서편집 애플리케이션/서버 모듈(174/274)이 포함하고 있는 컴퓨터 명령어 셋을 실행할 수 있다. 프로세서(550)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU) 또는 본 발명에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(531)와 저장 장치(532)는 휘발성 저장 매체 및/또는 비휘발성 저장 매체로 구성될 수 있다. 예를 들어, 메모리(531)는 읽기 전용 메모리(read only memory, ROM) 및/또는 랜덤 액세스 메모리(random access memory, RAM)로 구성될 수 있다.The processor 550 is a computer instruction set included in a document editing application / server module 174/274 relating to a data backup method according to an embodiment of the present invention stored in a memory 531 and / or a storage device 532. You can run The processor 550 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which the methods according to the present invention are performed. The memory 531 and the storage device 532 may be configured of a volatile storage medium and / or a nonvolatile storage medium. For example, the memory 531 may be configured as read only memory (ROM) and / or random access memory (RAM).

무선통신 장치(570)는 근거리 무선통신, 무선 데이터 통신 및 무선 음성 통신을 위한 장치를 포함한다.The wireless communication device 570 includes a device for short range wireless communication, wireless data communication, and wireless voice communication.

컴퓨팅 장치(500)에 포함된 각각의 구성 요소들은 버스(580)에 의해 연결되어 서로 통신을 수행한다.Each component included in the computing device 500 is connected by a bus 580 to communicate with each other.

이하 상기 설명한 GUI 테스트 자동화 장치(100)가 테스트 애플리케이션 모듈(175)에 포함된 컴퓨터 명령어 셋의 연산을 통해 실행하는 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 방법에 대해 도 4, 도 5 및 도 7을 참조하여 설명하기로 한다.Hereinafter, a GUI test automation method according to an exemplary embodiment of the present invention executed by the GUI test automation apparatus 100 described above through calculation of a computer instruction set included in the test application module 175 will be described with reference to FIGS. This will be described with reference to 7.

도 7은 본 발명의 일 실시 예에 따른 GUI 테스트 자동화 방법의 흐름도이다.7 is a flowchart illustrating a GUI test automation method according to an embodiment of the present invention.

도 7을 참조하면, GUI 테스트 자동화 방법(S100)은 S110 내지 S160 단계를 포함한다.Referring to FIG. 7, the GUI test automation method S100 includes steps S110 to S160.

먼저, GUI 테스트 자동화 장치(100)의 저장 장치(140)는 GUI 테스트 대상 애플리케이션을 구성하는 요소에 할당된 기본값을 저장한다(S110).First, the storage device 140 of the GUI test automation device 100 stores default values assigned to elements constituting the GUI test target application (S110).

기본값은 GUI 설계시에 최상위 메뉴와 이로부터 분기되는 메뉴의 위치, 형태 및 메뉴에 의해 호출되는 기능에 할당된 핸들값에 해당한다. 여기서 핸들(handle)값이란 구체적인 어떤 대상에 붙여진 번호이며 문법적으로는 32비트의 정수값이다. 도스 프로그래밍에서는 거의 유일하게 파일 핸들만이 사용되었으며 그래서 도스에서 핸들은 곧 파일 핸들을 의미하는 경우가 많았다. 그러나 윈도우즈에서는 여러 가지 종류의 핸들이 사용되고 있다. 만들어진 윈도우에는 윈도우 핸들(hWnd)을 붙여 윈도우를 번호로 관리한다.The default value corresponds to the handle value assigned in the GUI design to the position, type and location of the top-level menu and the menu branching from it. In this case, the handle value is a number given to a specific object and grammatically an integer value of 32 bits. In DOS programming, almost exclusively file handles were used, so in DOS, handles often meant file handles. But there are many different types of handles in Windows. The created window is attached with a window handle (hWnd) to manage the window by number.

입력 디바이스(110)를 이용하여 메뉴를 선택하면 운영체제는 메시지를 발생시키고, 이 메시지와 함께 해당 메뉴 항목의 ID를 메뉴를 선택한 윈도우에 보낸다. 이때 분석모듈(174)은 함수를 이용하여 ID를 획득할 수 있다. 메뉴 항목의 ID도 일종의 핸들값에 해당한다. 또한 분석모듈(174)은 API 함수를 사용하여 해당 윈도우에 할당된 핸들값을 획득할 수 있다.When the menu is selected using the input device 110, the operating system generates a message and sends the ID of the menu item to the window where the menu is selected along with the message. In this case, the analysis module 174 may obtain an ID by using a function. The ID of the menu item is also a handle value. In addition, the analysis module 174 may obtain a handle value assigned to the corresponding window using an API function.

다음으로, 애플리케이션 실행모듈(171)은 GUI 테스트 대상 애플리케이션 모듈을 실행한다(S120). 구체적으로 애플리케이션 실행모듈(171)은, 일반 사용자가 GUI 테스트 대상 애플리케이션을 실제로 실행하는 방법과 동일한 방법으로, 예를 들면 마우스 더블 클릭 또는 마우스 선택 후 키보드 엔터 키 입력 또는 명령 입력창을 통한 실행파일명 입력 후 엔터키 입력에 의한 방법으로 GUI 테스트 대상 애플리케이션을 실행할 수 있다. 또한, 애플리케이션 실행모듈(171)은 GUI 대상 애플리케이션 구동 장치(200)에 실행 명령어를 전송함으로써 GUI 테스트 대상 애플리케이션을 실행할 수도 있다.Next, the application execution module 171 executes the GUI test target application module (S120). In more detail, the application execution module 171 may execute a GUI test target application in the same way as a general user. For example, after double-clicking a mouse or selecting a mouse, an executable file name is input through a keyboard enter key or a command input window. After that, you can run the GUI target application by pressing Enter key. In addition, the application execution module 171 may execute the GUI test target application by transmitting an execution command to the GUI target application driving apparatus 200.

다음으로, 디스플레이 디바이스(120)는 GUI 대상 애플리케이션 모듈의 GUI 화면을 출력한다(S130). GUI 화면을 출력하는 단계는 사용자에게 테스트 과정의 모니터링을 제공하기 위한 과정이다. 따라서 사용자의 모니터링 없이도, 미리 설정된 테스트 알고리즘에 의해 GUI 테스트가 자동으로 진행되므로 GUI 화면 출력이 반드시 요구되는 것은 아니다.Next, the display device 120 outputs a GUI screen of the GUI target application module (S130). The step of outputting the GUI screen is a process for providing the user with monitoring of the test process. Therefore, since the GUI test is automatically performed by a predetermined test algorithm without monitoring by the user, the GUI screen output is not necessarily required.

다음으로 니모닉 판독모듈(172)은 GUI 메뉴 항목을 나타내는 니모닉을 판독하여 메뉴 항목의 실행 영역을 감지한다(S140). 이 경우 니모닉 판독모듈(172)은 영상 비교를 통한 문자 인식 방법을 이용하여 캡처된 GUI 영상 속에 있는 니모닉 영역을 감지하고, 니모닉 명을 판독할 수 있다.Next, the mnemonic reading module 172 reads the mnemonic indicating the GUI menu item and detects an execution region of the menu item (S140). In this case, the mnemonic reading module 172 may detect a mnemonic region in the captured GUI image by using a character recognition method through image comparison, and read the mnemonic name.

즉 니모닉 판독모듈(172)은 애플리케이션이 실행된 메인 창에 표시된 사용자 인터페이스 메뉴 상에 표시되는 니모닉 명을 이미지 판독하여 메뉴의 실행 영역을 감지한다. 이 경우 니모닉 판독모듈(172)은 니모닉의 위치를 판독하기 위해 디스플레이 디바이스(120)의 프레임을 캡처하고, 이를 데이터베이스 내의 기준 이미지와 비교하여 니모닉을 판독한다.That is, the mnemonic reading module 172 detects an image of the mnemonic name displayed on the user interface menu displayed in the main window on which the application is executed and detects an execution region of the menu. In this case, the mnemonic reading module 172 captures a frame of the display device 120 to read the position of the mnemonic, and compares it with a reference image in the database to read the mnemonic.

도 8a, 8b, 8c 다양한 형태의 니모닉을 나타내는 예시도이다.8A, 8B, and 8C are exemplary diagrams illustrating various types of mnemonics.

도 8a를 참조하면, 메인 윈도우 상단에 파일(F), 편집(E), 입력(), 모양(J) 등이 표시된 메뉴 항목이 나타나 있다. 여기서, (F), (E)와 같이 괄호로 된 알파벳 대문자가 해당 메뉴 항목의 니모닉 명을 나타낸다.Referring to FIG. 8A, a menu item displaying a file (F), an edit (E), an input (), a shape (J), and the like is displayed at the top of the main window. Here, capital letters in parentheses such as (F) and (E) indicate the mnemonic name of the menu item.

니모닉 명 입력에 의한 메뉴 항목의 실행은 키보드 입력만으로도 가능하다. 도 8a에서 모양(J) 메뉴 항목을 예를 들면, 커서의 위치와 상관없이 Alt+J 키 입력에 의해 모양 메뉴 항목의 하부 메뉴 창이 열린다. 그리고 하부 메뉴 항목을 나타내는 니모닉 명에 해당하는 키 입력 만으로 해당 하부 메뉴가 실행된다.The execution of a menu item by mnemonic name input is possible only by keyboard input. For example, in FIG. 8A, the lower menu window of the shape menu item is opened by pressing the Alt + J key regardless of the position of the cursor. The submenu is executed only by key input corresponding to the mnemonic name indicating the submenu item.

니모닉은 단축키와 구별되는 것으로서, 단축키는 반드시 기능키와 알파벳의 조합을 눌러야 특정 메뉴를 실행시킬 수 있으나, 니모닉을 이용하는 경우 상위 메뉴가 선택되고 하위 메뉴가 표시된 상태에서 니모닉에 해당하는 알파벳 키 눌림에 의해 하위 메뉴가 실행될 수 있다.Mnemonics are distinguished from hotkeys. Shortcuts must be made by pressing a combination of function keys and alphabets to launch a particular menu. Sub menu can be executed by the.

니모닉은 도 8a에서처럼 주로 양괄호 안에서 밑줄이 그어진 알파벳 대문자 또는 도 8b에서처럼 메뉴명에 밑줄로 표시되거나, 도 8c에서처럼 최근의 리본메뉴에서 Alt 키에 의해 활성화된다. 따라서 메뉴 영역에서 니모닉 판독 전에, Alt 키를 이용한 니모닉 명의 활성화가 필요한 경우도 있을 수 있다. 니모닉은 필기체도 아니고, 그림자 등의 노이즈가 있는 것도 아니기 때문에 니모닉 감지모듈(172)의 이미지 판독에 의한 니모닉 인식률은 100%이다.Mnemonics are underlined in capital letters underlined in parentheses, as in FIG. 8A, or underlined in menu names, as in FIG. 8B, or activated by the Alt key in recent ribbons, as in FIG. 8C. Therefore, there may be cases where activation of the mnemonic name using the Alt key is required before reading the mnemonic in the menu area. Since the mnemonic is neither a handwriting nor a noise such as a shadow, the mnemonic recognition rate by the image reading of the mnemonic detection module 172 is 100%.

입력 디바이스 제어모듈(173)은 니모닉 판독을 이용하여 입력 디바이스를 제어하여 메뉴 항목을 테스트한다(S150). 일반적으로 GUI 테스트 과정에서 입력 디바이스로 마우스 및 키보드가 사용될 수 있다. 그러나 본 발명의 실시 예에서는 탐색된 니모닉에 기초하면 키보드만을 이용하여 메뉴 항목을 실행시켜 가면서 GUI 테스트를 수행할 수 있다.The input device control module 173 tests the menu item by controlling the input device by using mnemonic reading (S150). In general, a mouse and keyboard can be used as input devices during GUI testing. However, in an embodiment of the present invention, based on the found mnemonic, a GUI test can be performed while executing a menu item using only a keyboard.

구체적으로 니모닉을 이용하여 GUI 테스트를 수행하는 방법은 2가지로 나뉠 수 있다. 첫 번째 방법은 램덤하게 알파벳 키를 입력하여 니모닉 트리를 작성하고, 작성된 니모닉 트리를 이용하여 GUI 테스트를 수행하는 것이다. 두 번째 방법은 영상 비교를 통해 니모닉 명을 인식해서 니모닉 트리를 작성하고, 작성된 니모닉 트리를 이용하여 GUI 테스트를 수행하는 것이다.Specifically, there are two ways to perform GUI tests using mnemonics. The first method is to randomly enter an alphabetic key to create a mnemonic tree, and then use the created mnemonic tree to perform a GUI test. The second method is to create mnemonic tree by recognizing mnemonic name through image comparison, and to perform GUI test using mnemonic tree.

도 8a를 참조하며, 최상위 메뉴 항목은 알파벳 F, E, U, D, J, K, Q, W 및 H로 표현되는 니모닉 명으로 대표된다. 그리고 이러한 메뉴 항목에 주로 사용되는 니모닉 명은 일정 패턴이 있고, 하나의 패턴이 완성되면 메뉴 항목이 추가되는 경우 외에는 패턴의 변화가 적다. 따라서 과거 니모닉 명을 그대로 사용하는 경우도 있다. 최상위 메뉴 항목의 니모닉 명을 판독하기 위해서, 알파벳 키를 램덤하게 누르고 GUI 변화를 감지함으로써 니모닉 명을 판독하고 해당 메뉴 항목을 실행시킬 수 있다. 이러한 과정은 키 입력 만으로도 충분하다. 여기서, GUI 변화란 메뉴 항목이 선택된 경우 하이라이트 되는 것도 포함되고, 하위 메뉴 창이 열리는 것도 포함된다. 즉 GUI 변화란 색체적인 변화와 동적인 변화를 의미한다.Referring to FIG. 8A, the top menu items are represented by mnemonic names represented by the letters F, E, U, D, J, K, Q, W, and H. In addition, the mnemonic name mainly used for such a menu item has a certain pattern, and when one pattern is completed, there is little change in the pattern except when a menu item is added. Therefore, the mnemonic name of the past may be used as it is. To read the mnemonic name of the top-level menu item, you can read the mnemonic name and execute the menu item by randomly pressing an alphabet key and detecting a GUI change. This process is enough for keystrokes. Here, the GUI change includes highlighting when a menu item is selected and includes opening a submenu window. In other words, GUI change means color change and dynamic change.

두 번째 방법은 키 입력 없이 영상 비교를 통해 최상위 메뉴 항목의 니모닉 명을 판독하는 것이다. 메뉴 항목을 빨리 판독하기 위해 GUI 화면을 분할하고, 분할된 영역 별로 영상 비교를 하는 방법이 사용될 수 있다. 즉 GUI 메뉴 영상을 캡처하고, 영상을 복수의 영역으로 나누고, 각 영역별에서 니모닉 명을 판독하는 것이다.The second method is to read the mnemonic name of the top menu item through image comparison without key input. In order to quickly read the menu item, a GUI screen may be divided and an image comparison may be performed for each divided area. That is, the GUI menu image is captured, the image is divided into a plurality of regions, and mnemonic names are read in each region.

GUI 변화는 이미지 대조에 의해 감지될 수 있다. 예를 들어 데이터베이스(300)에 저장된 이미지를 이용하여 메뉴 실행 전의 메뉴의 색과 메뉴 선택 시의 메뉴의 색을 비교하여 GUI 변화를 감지할 수 있다.GUI changes can be detected by image contrast. For example, the GUI change may be detected by comparing the color of the menu before the menu execution with the color of the menu when the menu is selected using the image stored in the database 300.

특히 입력 디바이스 제어모듈(173)은 키보드 제어만을 이용하여 메뉴 항목을 실행시켜 가면서 GUI 테스트를 수행한다(S151). 니모닉을 기초로 메뉴의 실행 가능한 영역이 찾아지면, 메뉴 실행은 마우스 및/또는 키보드를 이용할 수 있다.In particular, the input device control module 173 performs a GUI test while executing a menu item using only keyboard control (S151). If an executable region of the menu is found based on the mnemonic, the menu execution may use a mouse and / or a keyboard.

다음으로 분석모듈(174)은 테스트를 통해 테스트 항목에 할당된 핸들값을 분석한다(S160). 구체적으로 분석모듈(174)은 테스트 과정에서 획득한 핸들값과 GUI 설계시에 할당된 기본값을 비교하여 설계 오류가 있는지 여부를 분석한다.Next, the analysis module 174 analyzes the handle value assigned to the test item through the test (S160). In detail, the analysis module 174 analyzes whether there is a design error by comparing a handle value obtained in the test process with a default value assigned in the GUI design.

그 밖에 분석모듈(174)은 실행되는 테스트 프로그램의 실행화면에 대해 기본값을 설정하고, 이를 복수의 블록으로 구분하여, 블록별 변화를 파악하며, 블록별 변화를 통해 메뉴의 존재, 메뉴의 실행에 따른 기능의 존재와 같은 사항들을 분석한다. 이러한 분석이 이루어지면, 분석모듈(174)은 각 기능을 미리 지정된 형태로 반복적으로 실행시켜 애플리케이션의 실행을 테스트하고, 실행에 따른 오류, 정상 동작여부와 같은 사항을 기록한 리포트를 생성한다. In addition, the analysis module 174 sets a default value for the execution screen of the test program to be executed, divides it into a plurality of blocks, grasps the change for each block, and changes the block for the existence of the menu and execution of the menu. Analyze such things as the existence of the function. When such an analysis is performed, the analysis module 174 repeatedly executes each function in a predetermined form to test the execution of the application, and generates a report that records errors such as execution and normal operation according to the execution.

분석모듈(174)은 기준값 및 리포트를 저장 장치(140)에 저장한다.The analysis module 174 stores the reference value and the report in the storage device 140.

저장 장치(140)는 분석모듈(174)에 의해 생성되는 기준값을 저장하고, 분석모듈(174)의 요청에 따라 기준값들을 제공한다. 또한, 저장 장치(140)에는 분석모듈(174)에서 테스트 진행에 따라 생성되는 리포트가 저장된다. 이러한 리포트는 사용자의 요청에 따라 디스플레이 디바이스(120)와 같은 다른 장치에 제공될 수 있다.The storage device 140 stores the reference value generated by the analysis module 174 and provides the reference values at the request of the analysis module 174. In addition, the storage device 140 stores a report generated as the test progresses in the analysis module 174. Such a report may be provided to another apparatus, such as display device 120, upon the user's request.

이와 같이 본 발명의 일 실시 예에 따르면, 메뉴에 표시된 니모닉 명을 이용하여 메뉴를 빠르게 찾고, 해당 메뉴를 실행함으로써 입력 디바이스를 제어하는 범위 및 테스트 시간을 획기적으로 줄일 수 있다.As described above, according to an exemplary embodiment of the present disclosure, the range and test time for controlling the input device can be drastically reduced by quickly finding a menu using the mnemonic name displayed on the menu and executing the corresponding menu.

또한, 메뉴에 표시된 니모닉 명을 이용하여 메뉴의 실행 영역을 찾고, 메뉴 실행에 있어서 복수의 입력 디바이스를 이용하여 복수의 테스트를 동시에 수행함으로써 일회 테스트 범위를 확장시킬 수 있다.In addition, the execution range of the menu can be found by using the mnemonic name displayed on the menu, and the one-time test range can be extended by simultaneously performing a plurality of tests using a plurality of input devices in executing the menu.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The foregoing description of the present invention is intended for illustration, and it will be understood by those skilled in the art that the present invention may be easily modified in other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are exemplary in all respects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is shown by the following claims rather than the above description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the present invention. do.

100: GUI 테스트 자동화 장치
110: 입력 디바이스
120: 디스플레이 디바이스
140: 저장 장치
171: 프로그램 실행모듈
172: 니모닉 판독모듈
173: 입력 디바이스 제어모듈
174: 분석모듈
200: GUI 테스트 대상 애플리케이션 구동 장치
100: GUI test automation device
110: input device
120: display device
140: storage device
171: program execution module
172: mnemonic reading module
173: input device control module
174: analysis module
200: device for driving GUI target application

Claims (24)

GUI 테스트 대상 애플리케이션을 실행하는 애플리케이션 실행모듈;
실행된 애플리케이션의 GUI 메뉴 항목을 나타내는 니모닉을 판독하여 GUI 메뉴 항목의 실행 명령을 감지하는 니모닉 판독모듈;
니모닉 판독모듈의 판독 결과를 이용하여 입력 디바이스를 제어함으로써 메뉴 항목을 테스트하는 입력 디바이스 제어모듈; 및
상기 테스트를 통해 테스트 항목에 할당된 핸들값을 분석하는 분석모듈을 포함하며,
상기 니모닉 판독모듈은,
영상 비교를 통한 문자 인식 방법을 이용하여 캡처된 GUI 영상 속에 있는 니모닉 영역을 감지하고, 니모닉 명을 판독하는 것을 특징으로 하는, GUI 테스트 자동화 장치.
An application execution module for executing a GUI test target application;
A mnemonic reading module for reading a mnemonic indicating a GUI menu item of an executed application to detect an execution command of the GUI menu item;
An input device control module for testing a menu item by controlling the input device using the read result of the mnemonic reading module; And
It includes an analysis module for analyzing the handle value assigned to the test item through the test,
The mnemonic reading module,
And detecting a mnemonic area in the captured GUI image by using a character recognition method through image comparison, and reading the mnemonic name.
청구항 1에 있어서,
상기 애플리케이션 실행모듈은,
GUI 테스트 자동화 장치 내의 로컬 영역 또는 외부 리모트 영역에서 상기 GUI 테스트 대상 애플리케이션을 실행하는 것을 특징으로 하는, GUI 테스트 자동화 장치.
The method according to claim 1,
The application execution module,
And executing the GUI test target application in a local area or an external remote area within a GUI test automation device.
청구항 2에 있어서,
상기 애플리케이션 실행모듈은,
외부 복수의 리모트 영역에서 각각의 GUI 테스트 대상 애플리케이션을 실행하는 것을 특징으로 하는, GUI 테스트 자동화 장치.
The method according to claim 2,
The application execution module,
A GUI test automation device characterized in that each GUI test target application is executed in a plurality of external remote areas.
청구항 3에 있어서,
상기 애플리케이션 실행모듈은,
이종의 운영체제 및 이종의 하드웨어로 구성되는 다양한 플랫폼의 외부 복수의 리모트 영역에서 각각의 GUI 테스트 대상 애플리케이션을 실행하는 것을 특징으로 하는, GUI 테스트 자동화 장치.
The method according to claim 3,
The application execution module,
A GUI test automation device characterized in that each GUI test target application is executed in a plurality of remote areas outside of various platforms composed of heterogeneous operating systems and heterogeneous hardware.
청구항 1에 있어서,
상기 GUI 테스트 자동화 장치는,
GUI 테스트 대상 애플리케이션의 GUI 화면을 출력하는 디스플레이 디바이스를 더 포함하는 것을 특징으로 하는, GUI 테스트 자동화 장치.
The method according to claim 1,
The GUI test automation device,
And a display device for outputting a GUI screen of the GUI test target application.
청구항 1에 있어서,
상기 입력 디바이스 제어모듈은,
니모닉 판독에 기초하여 키보드 제어만을 이용하여 메뉴 항목을 실행시키는 것을 특징으로 하는, GUI 테스트 자동화 장치.
The method according to claim 1,
The input device control module,
And execute a menu item using only keyboard control based on mnemonic reading.
청구항 6에 있어서,
상기 입력 디바이스 제어모듈은,
니모닉 판독에 기초하여 기능 키와 알파벳 키를 제어하여 메뉴 항목을 실행시키는 것을 특징으로 하는, GUI 테스트 자동화 장치.
The method according to claim 6,
The input device control module,
And controlling a function key and an alphabetic key to execute a menu item based on the mnemonic reading.
삭제delete 청구항 1에 있어서,
상기 니모닉 판독모듈은,
상기 GUI 메뉴 영역을 복수 개로 구분하고, 구분된 영역별로 실행 가능 메뉴 영역 및 GUI 변화를 감지하는 것을 특징으로 하는, GUI 테스트 자동화 장치.
The method according to claim 1,
The mnemonic reading module,
And dividing the GUI menu area into a plurality, and detecting an executable menu area and a GUI change for each divided area.
청구항 9에 있어서,
상기 분석모듈은,
상기 테스트 결과를 이용하여 GUI 설계상의 오류를 검출하는 것을 특징으로 하는, GUI 테스트 자동화 장치.
The method according to claim 9,
The analysis module,
GUI test automation device, characterized in that for detecting errors in the GUI design using the test results.
청구항 1에 있어서,
상기 GUI 테스트 자동화 장치는,
GUI 설계시에 GUI 테스트 대상 애플리케이션을 구성하는 요소에 할당된 기본값을 저장하는 저장 장치를 더 포함하고,
상기 분석모듈은,
GUI 테스트를 통해 핸들값을 획득하고, 획득한 핸들값과 상기 할당된 기본값의 비교를 통해 GUI 설계상의 오류를 검출하는 것을 특징으로 하는, GUI 테스트 자동화 장치.
The method according to claim 1,
The GUI test automation device,
In the design of the GUI further includes a storage device for storing the default value assigned to the elements constituting the GUI test application,
The analysis module,
And obtaining a handle value through a GUI test, and detecting an error in the GUI design by comparing the acquired handle value with the assigned default value.
청구항 11에 있어서,
상기 기본값은,
GUI 설계시에 GUI 최상위 메뉴와 이로부터 분기되는 메뉴의 위치, 형태 및 메뉴에 의해 호출되는 기능에 할당된 핸들값인 것을 특징으로 하는, GUI 테스트 자동화 장치.
The method according to claim 11,
The default value is
A GUI test automation device, characterized in that the GUI value is a handle value assigned to the position of the GUI top menu and the menu branching from the menu, and the function called by the menu.
GUI 테스트 대상 애플리케이션을 실행하는 단계;
실행된 애플리케이션의 GUI 메뉴 항목을 나타내는 니모닉을 판독하여 GUI 메뉴 항목의 실행 영역을 감지하는 단계;
니모닉 판독을 이용하여 입력 디바이스를 제어함으로써 메뉴 항목을 테스트하는 단계; 및
상기 테스트를 통해 테스트 항목에 할당된 핸들값을 분석하는 단계를 포함하며,
상기 GUI 메뉴 항목의 실행 영역을 감지하는 단계는,
영상 비교를 통한 문자 인식 방법을 이용하여 캡처된 GUI 영상 속에 있는 니모닉 영역을 감지하고, 니모닉 명을 판독하는 것을 특징으로 하는, GUI 테스트 자동화 방법.
Executing a GUI test target application;
Detecting the execution region of the GUI menu item by reading a mnemonic representing the GUI menu item of the executed application;
Testing the menu item by controlling the input device using mnemonic readout; And
Analyzing the handle value assigned to the test item through the test;
Detecting an execution region of the GUI menu item,
And detecting a mnemonic region in the captured GUI image by using a character recognition method through image comparison, and reading the mnemonic name.
청구항 13에 있어서,
상기 애플리케이션을 실행하는 단계는;
GUI 테스트 자동화 장치 내의 로컬 영역 또는 외부 리모트 영역에서 상기 GUI 테스트 대상 애플리케이션을 실행하는 것을 특징으로 하는, GUI 테스트 자동화 방법.
The method according to claim 13,
Executing the application comprises:
And executing the GUI test target application in a local area or an external remote area within a GUI test automation device.
청구항 14에 있어서,
상기 애플리케이션을 실행하는 단계는,
외부 복수의 리모트 영역에서 각각의 GUI 테스트 대상 애플리케이션을 실행하는 것을 특징으로 하는, GUI 테스트 자동화 방법.
The method according to claim 14,
Running the application,
And executing each GUI test target application in a plurality of external remote areas.
청구항 15에 있어서,
상기 GUI 테스트 대상 애플리케이션을 실행하는 단계는,
이종의 운영체제 및 이종의 하드웨어로 구성되는 다양한 플랫폼의 외부 복수의 리모트 영역에서 각각의 GUI 테스트 대상 애플리케이션을 실행하는 것을 특징으로 하는, GUI 테스트 자동화 방법.
The method according to claim 15,
Running the GUI test target application,
A GUI test automation method, characterized in that each GUI test target application is executed in a plurality of remote areas outside of various platforms composed of heterogeneous operating systems and heterogeneous hardware.
청구항 13에 있어서,
상기 GUI 테스트 자동화 방법은,
GUI 테스트 대상 애플리케이션의 GUI 화면을 출력하는 단계를 더 포함하는 것을 특징으로 하는, GUI 테스트 자동화 방법.
The method according to claim 13,
The GUI test automation method,
And outputting a GUI screen of the GUI test target application.
청구항 13에 있어서,
상기 메뉴 항목을 테스트하는 단계는,
니모닉 판독에 기초하여 키보드 제어만을 이용하여 메뉴 항목을 실행시키는 것을 특징으로 하는, GUI 테스트 자동화 방법.
The method according to claim 13,
Testing the menu item,
And execute a menu item using only keyboard control based on the mnemonic reading.
청구항 18에 있어서,
상기 메뉴 항목을 테스트하는 단계는,
니모닉 판독에 기초하여 기능 키와 알파벳 키를 제어하여 메뉴 항목을 실행시키는 것을 특징으로 하는, GUI 테스트 자동화 방법.
The method according to claim 18,
Testing the menu item,
And executing a menu item by controlling a function key and an alphabetic key based on the mnemonic reading.
삭제delete 청구항 13에 있어서,
상기 GUI 메뉴 항목의 실행 영역을 감지하는 단계는,
상기 GUI 메뉴 영역을 복수 개로 구분하고, 구분된 영역별로 실행 가능 메뉴 영역 및 GUI 변화를 감지하는 것을 특징으로 하는, GUI 테스트 자동화 방법.
The method according to claim 13,
Detecting an execution region of the GUI menu item,
And classifying the GUI menu area into a plurality, and detecting an executable menu area and a GUI change for each divided area.
청구항 21에 있어서,
상기 핸들값을 분석하는 단계는,
상기 테스트 결과를 이용하여 GUI 설계상의 오류를 검출하는 것을 특징으로 하는, GUI 테스트 자동화 방법.
The method according to claim 21,
Analyzing the handle value,
GUI test automation method, characterized in that for detecting errors in the GUI design using the test results.
청구항 13에 있어서,
상기 GUI 테스트 자동화 방법은,
GUI 설계시에 GUI 테스트 대상 애플리케이션을 구성하는 요소에 할당된 기본값을 저장하는 단계를 더 포함하고,
상기 핸들값을 분석하는 단계는,
GUI 테스트를 통해 핸들값을 획득하고, 획득한 핸들값과 상기 할당된 기본값의 비교를 통해 GUI 설계상의 오류를 검출하는 것을 특징으로 하는, GUI 테스트 자동화 방법.
The method according to claim 13,
The GUI test automation method,
Storing the default values assigned to the elements constituting the GUI-tested application at GUI design time;
Analyzing the handle value,
Obtaining a handle value through a GUI test, and detecting an error in a GUI design by comparing the obtained handle value with the assigned default value.
청구항 23에 있어서,
상기 기본값은,
GUI 설계시에 GUI 최상위 메뉴와 이로부터 분기되는 메뉴의 위치, 형태 및 메뉴에 의해 호출되는 기능에 할당된 핸들값인 것을 특징으로 하는, GUI 테스트 자동화 방법.
The method according to claim 23,
The default value is
A GUI test automation method, characterized in that the GUI value is the handle value assigned to the position of the GUI top menu and the menu branching therefrom, the type and function called by the menu.
KR1020180005855A 2018-01-17 2018-01-17 Mnemonic based method for gui test automation and apparatus using the same KR102087208B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180005855A KR102087208B1 (en) 2018-01-17 2018-01-17 Mnemonic based method for gui test automation and apparatus using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180005855A KR102087208B1 (en) 2018-01-17 2018-01-17 Mnemonic based method for gui test automation and apparatus using the same

Publications (2)

Publication Number Publication Date
KR20190087724A KR20190087724A (en) 2019-07-25
KR102087208B1 true KR102087208B1 (en) 2020-03-10

Family

ID=67468868

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180005855A KR102087208B1 (en) 2018-01-17 2018-01-17 Mnemonic based method for gui test automation and apparatus using the same

Country Status (1)

Country Link
KR (1) KR102087208B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111737157B (en) * 2020-08-10 2020-12-01 北京志翔科技股份有限公司 Concurrency test method and system for user graphical interface

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030200508A1 (en) * 2002-04-18 2003-10-23 International Business Machines Corporation Apparatus, system and method of automatically assigning mnemonics in a user interface
KR101796009B1 (en) * 2017-03-07 2017-12-01 주식회사 한글과컴퓨터 Program automatic analysis system and automatic analysis method using the same

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140004495A (en) 2012-07-03 2014-01-13 삼성전자주식회사 Method for testing application program automatically and an electronic device thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030200508A1 (en) * 2002-04-18 2003-10-23 International Business Machines Corporation Apparatus, system and method of automatically assigning mnemonics in a user interface
KR101796009B1 (en) * 2017-03-07 2017-12-01 주식회사 한글과컴퓨터 Program automatic analysis system and automatic analysis method using the same

Also Published As

Publication number Publication date
KR20190087724A (en) 2019-07-25

Similar Documents

Publication Publication Date Title
EP3757779B1 (en) Application assessment system to achieve interface design consistency across micro services
US9280451B2 (en) Testing device
US8826240B1 (en) Application validation through object level hierarchy analysis
US20170277374A1 (en) Visual regression analysis
US20160042358A1 (en) Mapping user actions to historical paths to determine a predicted endpoint
US11816470B2 (en) Impact driven continuous deployment system
US10261658B2 (en) Automating user operations using screen shots and file names
US10095608B2 (en) Application test automation transmitting data via phone/voice calls
US20160239202A1 (en) Gesture Input Processing Method and Electronic Device Supporting the Same
WO2020177385A1 (en) Virtual machine function detection method and apparatus, electronic device and storage medium
US10095328B2 (en) Virtual input device system
US8381104B2 (en) Systems and methods for providing context recognition
US10135684B2 (en) Differential staging of devices in bulk enrollment
CN109358827A (en) Method, system, equipment and the storage medium of serially printing are applied in control
KR102087208B1 (en) Mnemonic based method for gui test automation and apparatus using the same
US20130249810A1 (en) Text entry mode selection
KR102103590B1 (en) Method for automatic test of program compatibility and apparatus using the same
WO2021055058A1 (en) Locally implemented terminal latency mitigation
KR102087209B1 (en) Color difference based method for gui test automation and apparatus using the same
US11307850B2 (en) Efficient change analysis in poly-lingual corpus hierarchies
CN106484625A (en) A kind of method based on universal test Software Development Platform test subsystems
KR102087210B1 (en) Method for producing test case through algorithm and extracting test case using pair-wise testing, and apparatus using the same
US11360764B2 (en) Adversarial language analysis for code scanning
KR102005718B1 (en) Situation information indexing type actual operation based script generation method for mobile device
KR102103591B1 (en) Method for extracting test case with boundary value analysis and equivalence partitioning, and apparatus using the same

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant