KR20120121950A - Application Graphic User Interface Test Automation System and Method Thereof - Google Patents
Application Graphic User Interface Test Automation System and Method Thereof Download PDFInfo
- Publication number
- KR20120121950A KR20120121950A KR1020110039865A KR20110039865A KR20120121950A KR 20120121950 A KR20120121950 A KR 20120121950A KR 1020110039865 A KR1020110039865 A KR 1020110039865A KR 20110039865 A KR20110039865 A KR 20110039865A KR 20120121950 A KR20120121950 A KR 20120121950A
- Authority
- KR
- South Korea
- Prior art keywords
- application
- test
- database
- script
- data
- Prior art date
Links
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
Abstract
Description
The present invention relates to an interface test tool for checking whether a user interface (UI) of software used in a smartphone operates normally on a corresponding plurality of hardware. In more detail, the present invention for the application operated by the user's input through the GUI (Graphic User Interface) of the mobile application, the application automatically grasps the GUI menu structure and through this automatically generate a test script to the GUI of the application and The present invention relates to an application interface test automation system that can easily test basic operating conditions.
As the smartphone market expands rapidly, the mobile software sector is growing rapidly, and a mobile application called application is rapidly appearing in the market.
In the development and deployment stage of these applications, it is essential to test the stability of the application. Due to the nature of the application, stability tests are performed to see if the function works correctly on one or more devices.
As important as the functionality of these applications, reliability tests are manually tested by manual testers. This stability test, called the blackbox test, is essential for not only the initial development and deployment of the application, but also for the update of the application. The main task is simple repetition.
As a result, hundreds of applications are developed, hundreds of devices are applied, and tens of manual tests are performed exponentially.
In order to solve the manual resource problem, each developer develops a test automation system and applies it to a simple repetitive test, and manual testers are placed in a difficult automation task called Ad-Hoc test to improve the test efficiency. Much effort is being made.
However, the existing test automation system has 1) increased redevelopment of test scripts due to frequent application structure changes, 2) increased communication with developers about test failures caused by failure of structural changes to the test department, and 3) application GUI changes. Demand for frequent replacement of the image to be compared, 4) the burden of modifying the application under test for testing, and 5) the development of test scripts and the increase in maintenance of the test automation system. There is a new occurrence.
Many existing test automation systems, introduced by many developers to increase the stability and efficiency of tests, have invested in new resources to maintain the test automation system without adequately lowering existing input resources. Consuming
An object of the present invention is to provide an application interface test automation system that can be carried out by eliminating the black box test that is repeatedly performed in the application developer in order to solve the above-described problems, and can be carried out with a minimum of resources.
The application interface test automation system of the present invention automatically generates a test script that can test the application by grasping the structure and UI of the automatically updated interface without modifying the application even during application update occurring in the application lifecycle. It is an object of the present invention to provide an application interface test automation system.
The present invention for solving the above problems is a software menu structure analysis unit including a binary analysis unit and a script generation unit, a test execution unit including an image comparison unit and a report generation unit; And a database generator and a reference GUI database, wherein the binary appender decompiles a binary file to extract object attributes and resource data of a user interface, and transmits the extracted object attributes and resource data to the database generator. The unit generates all testable test scripts of the application and transmits the test script to the database generator and the image comparator, and the database generator generates reference data from the received data and the test script and stores them in the reference GUI database. The image comparator creates test data from the received data and the test script and compares it with reference data stored in the reference GUI database. In addition, the report generator provides an application test system, characterized in that for generating an application operation information report received from the image comparison unit.
In the application test system, the script generation unit provides an application test system, characterized in that for randomly generating the inspection order of the UI.
In the application test system, the database generation unit provides an application test system, characterized in that for updating the image that changes according to the version of the target test application stored in the reference GUI database for each version.
In the application test system, the report generation unit provides an application test system, characterized in that it includes a malfunction location of the application and a malfunction screen state.
The present invention includes a first step of receiving a binary file, two steps of analyzing the binary file to extract the GUI object properties and resource data, three steps to create a menu tree structure from the GUI object properties and resource data, from the menu tree Step 4 of generating a test script; step 5 of generating a reference GUI database by operating the test script in an emulation system; step 6 of comparing the result of executing the test script on each mobile device with the reference GUI database; and It provides a method for testing the UI of an application that includes seven steps, which report the result of the six comparisons.
The present invention provides a method for testing the UI of the application, wherein the test script of step 3 is a method of testing the UI of the application, characterized in that the order of the UI is random.
In the method of testing the UI of the application, the step 4 is to test the UI of the application, characterized in that for updating the image that is changed according to the version of the target test application stored in the reference GUI database for each version Provide a method.
The present invention provides a method for testing the UI of the application, wherein the comparison result of step 6 provides an application test system, characterized in that it includes a malfunction location of the application, the malfunction screen state.
The present invention provides an application interface test automation system that automatically generates a script for testing an application by grasping the structure and shape (graphic) of an automatically updated interface without modifying the application even with frequent updates of the application.
The present invention provides an application interface test automation system that supports random menu access methods and can check errors that cannot be detected by existing test automation systems or manual tests.
The present invention provides an application interface test automation system that provides a detailed report that can grasp not only the malfunction of the application but also the malfunction location, the screen state in which the malfunction occurred, the menu executed before and after the malfunction menu, and the cause of the malfunction.
1 is a view showing the configuration of the present invention
2 is a flowchart showing a method of implementing the present invention.
3 is a diagram illustrating a process of decompiling a binary file.
4 is a diagram illustrating an application menu structure in a tree form;
FIG. 5 illustrates mapping a GUI screen of an application to attributes of the extracted GUI object and storing the GUI screen of the application as a database.
6 is a flowchart showing the operation of the
7 is a flowchart showing the operation of the
An embodiment of the present invention includes a software menu
Looking at the application user interface test method of the present embodiment in detail with reference to Figure 2, when the executable file of the application, that is, a binary file is input (s100), the
3 shows a process in which the
The
The test script may support random traverse. Existing menu test methods execute menus sequentially, so that specific menus operate only after execution of specific menus in a specific order, making it difficult to simulate random menu access that may occur when the actual application is running. There is a problem that it is difficult to find errors that can occur in order. Random traverse can be implemented by storing the access path for accessing each menu from the top menu to the corresponding menu, and randomly mixing the test order for all menus. Such a random traverse algorithm is exemplary only, and the optimization of the above-described algorithm does not return to the uppermost menu and converts it into a method such as approaching the next menu in the shortest path, so that it belongs to the scope of application of the person skilled in the art. It is self-explanatory.
The
Looking at the operation method of the
The
The
The report can provide a detailed report that can identify not only the malfunction of the application GUI, but also the location of the malfunction, the malfunction screen state, the menu executed before and after the malfunction menu, and the cause of the malfunction, which were difficult to implement in the existing test automation system. have.
Although the above-described embodiments of the present invention have been described with specific apparatus and method for the purpose of explanation of the present invention, the scope of the present invention is not limited to this, but the scope of the right to the apparatus or method easily replaceable by those skilled in the art It is self-evident.
100: software menu structure analysis unit
101: binary analysis unit
102: script generation unit
110: test execution unit
111: image comparison unit
112: report generator
120: reference storage
121: database generator
122: reference GUI database
Claims (8)
A test execution unit including an image comparison unit and a report generation unit; And
In the application test system comprising a database generator and a reference GUI database,
The binary analyzer decompiles a binary file, extracts object property data and resource data of a user interface, and transmits the extracted object attribute data to the database generator.
The script generator generates a test script capable of testing all UIs of an application and transmits the test script to the database generator and the image comparator.
The database generator creates reference data using the received object property data, the resource data, and the test script, and stores the reference data in the reference GUI database.
The image comparison unit creates reference data using the received object property data, the resource data, and the test script, and compares the reference data with reference data stored in the reference GUI database.
The report generation unit generates an application operation information report received from the image comparison unit.
Analyzing the binary file to extract GUI object attributes and resource data;
Generating a menu tree structure from the GUI object attribute and resource data;
Generating a test script from the menu tree;
Executing the test script in an emulation system to generate a reference GUI database;
Comparing the result of executing the test script on each mobile device with the reference GUI database; And
And reporting the comparison result of the six steps. 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110039865A KR20120121950A (en) | 2011-04-28 | 2011-04-28 | Application Graphic User Interface Test Automation System and Method Thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110039865A KR20120121950A (en) | 2011-04-28 | 2011-04-28 | Application Graphic User Interface Test Automation System and Method Thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20120121950A true KR20120121950A (en) | 2012-11-07 |
Family
ID=47508282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110039865A KR20120121950A (en) | 2011-04-28 | 2011-04-28 | Application Graphic User Interface Test Automation System and Method Thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20120121950A (en) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019942A (en) * | 2012-12-31 | 2013-04-03 | 广东欧珀移动通信有限公司 | Method and system for automatically testing applications to be tested based on android system |
CN104252410A (en) * | 2013-06-27 | 2014-12-31 | 阿里巴巴集团控股有限公司 | Method and equipment for testing control in page |
KR20150035151A (en) * | 2013-09-27 | 2015-04-06 | 에스케이플래닛 주식회사 | System, terminal device, verification apparatus, method and computer-readable medium for testing application performance |
WO2015050348A1 (en) * | 2013-10-01 | 2015-04-09 | 주식회사 안랩 | Method for verifying application on basis of object extraction, and device thereof |
KR20150136838A (en) * | 2014-05-28 | 2015-12-08 | 엔트릭스 주식회사 | Method for testing cloud streaming server, apparatus and system therefor |
CN106095685A (en) * | 2016-06-20 | 2016-11-09 | 浪潮电子信息产业股份有限公司 | The method shown based on LINUX system server capability test interface |
CN108549608A (en) * | 2018-04-18 | 2018-09-18 | 武汉极意网络科技有限公司 | A kind of the UI sectional drawings test method and system of APP |
CN109614329A (en) * | 2018-12-06 | 2019-04-12 | 中国航空工业集团公司洛阳电光设备研究所 | A kind of software test case auxiliary design method based on Interface Control File |
US10313207B2 (en) | 2014-03-10 | 2019-06-04 | Sk Techx Co., Ltd. | Method for testing cloud streaming server, and apparatus and system therefor |
KR20190093274A (en) | 2018-02-01 | 2019-08-09 | 주식회사 한글과컴퓨터 | Method for producing test case through algorithm and extracting test case using pair-wise testing, and apparatus using the same |
KR20190093959A (en) | 2018-02-02 | 2019-08-12 | 주식회사 한글과컴퓨터 | Method for extracting test case with boundary value analysis and equivalence partitioning, and apparatus using the same |
KR20190105439A (en) * | 2018-03-05 | 2019-09-17 | 어니컴 주식회사 | Apparatus and method for testing application |
KR20190113050A (en) * | 2018-03-27 | 2019-10-08 | 한국과학기술원 | Method and system for automatic configuration test case generation of mobile application |
KR20190135074A (en) * | 2018-05-28 | 2019-12-06 | 슈어소프트테크주식회사 | Ui testing automation method using deep learning algorithem and tree and appratus for the same |
KR20220034327A (en) | 2020-09-11 | 2022-03-18 | 김수한 | Smart phone application automated control method based on deep-learning object detection |
KR20230173343A (en) | 2022-06-17 | 2023-12-27 | 어니소프트 주식회사 | Device and method for testing application |
KR102620097B1 (en) * | 2023-07-05 | 2024-01-02 | 쿠팡 주식회사 | Method and apparatus for providing code test |
-
2011
- 2011-04-28 KR KR1020110039865A patent/KR20120121950A/en not_active Application Discontinuation
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019942A (en) * | 2012-12-31 | 2013-04-03 | 广东欧珀移动通信有限公司 | Method and system for automatically testing applications to be tested based on android system |
CN103019942B (en) * | 2012-12-31 | 2015-04-29 | 广东欧珀移动通信有限公司 | Method and system for automatically testing applications to be tested based on android system |
CN104252410A (en) * | 2013-06-27 | 2014-12-31 | 阿里巴巴集团控股有限公司 | Method and equipment for testing control in page |
KR20150035151A (en) * | 2013-09-27 | 2015-04-06 | 에스케이플래닛 주식회사 | System, terminal device, verification apparatus, method and computer-readable medium for testing application performance |
WO2015050348A1 (en) * | 2013-10-01 | 2015-04-09 | 주식회사 안랩 | Method for verifying application on basis of object extraction, and device thereof |
KR101527745B1 (en) * | 2013-10-01 | 2015-06-11 | 주식회사 안랩 | Method and apparatus for verifying application by using object extracting |
US10313207B2 (en) | 2014-03-10 | 2019-06-04 | Sk Techx Co., Ltd. | Method for testing cloud streaming server, and apparatus and system therefor |
KR20150136838A (en) * | 2014-05-28 | 2015-12-08 | 엔트릭스 주식회사 | Method for testing cloud streaming server, apparatus and system therefor |
CN106095685A (en) * | 2016-06-20 | 2016-11-09 | 浪潮电子信息产业股份有限公司 | The method shown based on LINUX system server capability test interface |
KR20190093274A (en) | 2018-02-01 | 2019-08-09 | 주식회사 한글과컴퓨터 | Method for producing test case through algorithm and extracting test case using pair-wise testing, and apparatus using the same |
KR20190093959A (en) | 2018-02-02 | 2019-08-12 | 주식회사 한글과컴퓨터 | Method for extracting test case with boundary value analysis and equivalence partitioning, and apparatus using the same |
KR20190105439A (en) * | 2018-03-05 | 2019-09-17 | 어니컴 주식회사 | Apparatus and method for testing application |
KR20190113050A (en) * | 2018-03-27 | 2019-10-08 | 한국과학기술원 | Method and system for automatic configuration test case generation of mobile application |
CN108549608A (en) * | 2018-04-18 | 2018-09-18 | 武汉极意网络科技有限公司 | A kind of the UI sectional drawings test method and system of APP |
KR20190135074A (en) * | 2018-05-28 | 2019-12-06 | 슈어소프트테크주식회사 | Ui testing automation method using deep learning algorithem and tree and appratus for the same |
CN109614329A (en) * | 2018-12-06 | 2019-04-12 | 中国航空工业集团公司洛阳电光设备研究所 | A kind of software test case auxiliary design method based on Interface Control File |
CN109614329B (en) * | 2018-12-06 | 2021-11-02 | 中国航空工业集团公司洛阳电光设备研究所 | Software test case aided design method based on interface control file |
KR20220034327A (en) | 2020-09-11 | 2022-03-18 | 김수한 | Smart phone application automated control method based on deep-learning object detection |
KR20230173343A (en) | 2022-06-17 | 2023-12-27 | 어니소프트 주식회사 | Device and method for testing application |
KR102620097B1 (en) * | 2023-07-05 | 2024-01-02 | 쿠팡 주식회사 | Method and apparatus for providing code test |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20120121950A (en) | Application Graphic User Interface Test Automation System and Method Thereof | |
CN105094783B (en) | method and device for testing stability of android application | |
CN105302716B (en) | Test method, device under the development mode of interflow | |
US8448146B2 (en) | Generation of functional tests for re-hosted applications | |
US9098633B2 (en) | Application testing | |
KR101132560B1 (en) | System and method for automatic interface testing based on simulation for robot software components | |
US9298596B2 (en) | Test framework for computing jobs | |
KR101410099B1 (en) | Function Test Apparatus based on Unit Test Cases Reusing and Function Test Method thereof | |
US20130311827A1 (en) | METHOD and APPARATUS for automatic testing of automation software | |
CN103365770A (en) | Mobile terminal software testing system and software testing method | |
Okezie et al. | A critical analysis of software testing tools | |
CN114297666A (en) | Cloud deployment automation vulnerability mining system based on fuzzy test | |
US20180232299A1 (en) | Composing future tests | |
CN104750601A (en) | Test method and test device | |
US20110138360A1 (en) | LEVERAGING THE RELATIONSHIP BETWEEN OBJECT IDs AND FUNCTIONS IN DIAGNOSING SOFTWARE DEFECTS DURING THE POST-DEPLOYMENT PHASE | |
CN111309581A (en) | Application performance detection method and device in database upgrading scene | |
CN104536880A (en) | GUI program testing case augmentation method based on symbolic execution | |
Kim | Mobile applications software testing methodology | |
De Lucia et al. | ePadEvo: A tool for the detection of behavioral design patterns | |
CN113051582A (en) | Computer software technology development and debugging system | |
GB2537341A (en) | The sequenced common action and flow representation automation model (SCAFRA) | |
CN111163309A (en) | Testing method based on behavior simulation, television equipment and storage medium | |
US20170123959A1 (en) | Optimized instrumentation based on functional coverage | |
Yichen et al. | Modeling embedded software test requirement based on MARTE | |
Wehrmeister et al. | Framework to simulate the behavior of embedded real-time systems specified in UML models |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E601 | Decision to refuse application |