KR102096085B1 - Apparatus and method for monitoring application - Google Patents
Apparatus and method for monitoring application Download PDFInfo
- Publication number
- KR102096085B1 KR102096085B1 KR1020180044405A KR20180044405A KR102096085B1 KR 102096085 B1 KR102096085 B1 KR 102096085B1 KR 1020180044405 A KR1020180044405 A KR 1020180044405A KR 20180044405 A KR20180044405 A KR 20180044405A KR 102096085 B1 KR102096085 B1 KR 102096085B1
- Authority
- KR
- South Korea
- Prior art keywords
- app
- terminal
- driving
- information
- test
- 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/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
앱 테스트 장치 및 방법을 제시하며, 앱 테스트 장치는 앱 테스트를 위한 단말과 통신하는 통신부, 및 앱 테스트 중인 단말로부터 테스트 관련 정보를 수신하고, 수신된 정보를 미리 설정된 구동 조건으로 필터링하여 앱의 구동 상황을 제공하는 제어부를 포함하고, 제어부는, 앱의 실행에 따른 활동 내역을 나타내는 실행상태, 단말의 운영체제버전, 단말의 단말종류, 및 단말의 접속지역에 대한 정보 중 적어도 하나의 조건을 필터링을 위한 구동 조건으로 설정한다.App test device and method are presented, and the app test device receives test-related information from a communication unit communicating with a terminal for app testing, and a terminal under app testing, and filters the received information with preset driving conditions to drive the app. It includes a control unit that provides a situation, and the control unit filters at least one condition of an execution state indicating an activity history according to the execution of the app, an operating system version of the terminal, a terminal type of the terminal, and information about a connection area of the terminal. Set as the driving condition for.
Description
본 명세서에서 개시되는 실시예들은 앱 테스트 장치 및 방법에 관한 것으로, 보다 상세하게는 앱의 크래시와 같은 치명적인 문제가 발생하기 전에 앱의 구동 상황을 확인할 수 있는 앱 테스트 장치 및 방법에 관한 것이다.Embodiments disclosed in the present specification relate to an app test device and method, and more particularly, to an app test device and method capable of confirming a driving state of an app before a fatal problem such as an app crash occurs.
최근 IT기술이 급격히 발전하고 하나의 전자 단말 안에 다양한 종류의 하드웨어모듈이 탑재되고 있다. 특히 디지털 기반의 여러 제품이나 서비스가 융합되어 새로운 서비스나 제품이 탄생하는 디지털컨버전스 현상이 가속화되면서 이들 각 전자 단말을 운용할 수 있는 운영체제 또한 다양하게 출시되고 있다.Recently, IT technology has rapidly developed and various types of hardware modules are mounted in one electronic terminal. In particular, as the digital convergence phenomenon in which a new service or product is born by accelerating the convergence of various digital-based products or services has been accelerated, various operating systems capable of operating each of these electronic terminals have also been released.
이러한 상황에서 소프트웨어 개발자들은 이들 전자 단말에 포함된 하드웨어 리소스를 활용하기 위한 수 많은 응용프로그램을 개발할 수 있는 자유도가 높아진 동시에 다양한 하드웨어 및 플랫폼에서 무리 없이 실행되는 응용프로그램을 개발하고 테스트해야 하는 부담을 안게 되었다.In this situation, software developers have a greater degree of freedom to develop numerous applications to utilize the hardware resources included in these electronic terminals, and at the same time, they are under pressure to develop and test applications that run smoothly on various hardware and platforms. Became.
관련하여 선행기술문헌인 공개특허 제10-2014-0052200호를 참조하면, 테스트 단말에서 애플리케이션의 실행 시 크래시가 발생한 경우, 크래시 발생까지의 동작 시나리오와 크래시 내용을 포함하는 크래시 발생 정보를 검증 관리 장치로 전송하는 애플리케이션 검증을 위한 시스템을 기재하고 있습니다. 이와 같이, 선행기술문헌과 같이 애플리케이션을 테스트하는 시스템에서는 크래시가 발생하여야 크래시 관련 정보를 확인할 수 있기 때문에 크래시가 발생하기 이전에 사용 상태에 대한 정보를 확인하여 애플리케이션의 실행에 따른 결함를 확인할 수 없는 문제점이 있었다.Referring to the related art publication No. 10-2014-0052200, if a crash occurs when the application is executed in the test terminal, the crash occurrence information including the operation scenario and crash content up to the occurrence of the crash is verified and managed. It describes a system for application verification to be transferred to. In this way, in a system for testing an application as in the prior art literature, a crash cannot occur to check information related to a crash, so it is possible to check information on a usage state before a crash occurs, thereby failing to check defects caused by application execution. There was.
한편, 애플리케이션을 출시하기 이전에 애플리케이션을 테스트 하기 위해서는 애플리케이션을 구동할 모든 사용자 단말을 구매하여 테스트를 하거나, 테스트에 많은 시간을 필요로 하기 때문에 애플리케이션의 출시 전에 애플리케이션의 테스트를 수행하는 한계가 있다. 이로 인해, 애플리케이션을 출시한 상태에서 애플리케이션을 테스트하게 되지만, 크래시가 발생되기 이전의 애플리케이션의 결함은 사용자에게 불편을 초래하여 사용자가 이탈하게 되는 문제점이 있었다On the other hand, in order to test the application prior to launching the application, there is a limitation in testing the application before the application is released because all user terminals to run the application are purchased and tested, or it takes a lot of time to test. Due to this, the application is tested while the application is released, but the defect of the application before the crash occurs causes inconvenience to the user, causing the user to exit.
따라서 상술된 문제점을 해결하기 위한 기술이 필요하게 되었다.Therefore, a technique for solving the above-described problems is needed.
한편, 전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.On the other hand, the above-mentioned background technology is the technical information acquired by the inventor for the derivation of the present invention or acquired in the derivation process of the present invention, and is not necessarily a known technology disclosed to the general public before filing the present invention. .
본 명세서에서 개시되는 실시예들은, 크래시 발생 전에 앱의 구동 상황을 확인하여 결함을 확인할 수 있는 앱 테스트 장치 및 방법을 제시하는 데에 목적이 있다.The embodiments disclosed in the present specification have an object to provide an app test apparatus and method capable of confirming a defect by checking a driving state of an app before a crash occurs.
본 명세서에서 개시되는 실시예들은, 크래시 발생 전의 결함으로 인한 사용자의 이탈을 방지할 수 있는 앱 테스트 장치 및 방법을 제시하는 데에 목적이 있다.The embodiments disclosed herein are intended to provide an apparatus and method for testing an app capable of preventing a user from leaving due to a defect before a crash occurs.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 일 실시예에 따르면, 앱 테스트를 위한 단말과 통신하는 통신부, 및 앱 테스트 중인 단말로부터 테스트 관련 정보를 수신하고, 상기 수신된 정보를 미리 설정된 구동 조건으로 필터링하여 앱의 구동 상황을 제공하는 제어부를 포함하고, 상기 제어부는, 상기 앱의 실행에 따른 활동 내역을 나타내는 실행상태, 상기 단말의 운영체제버전, 상기 단말의 단말종류, 및 상기 단말의 접속지역에 대한 정보 중 적어도 하나의 조건을 상기 필터링을 위한 상기 구동 조건으로 설정한다.As a technical means for achieving the above-described technical problem, according to an embodiment, a communication unit communicating with a terminal for testing an app, and receiving test-related information from a terminal under test for an app, and driving conditions for receiving the received information in advance And a control unit that provides a driving status of the app by filtering with the control unit, wherein the control unit includes an execution state indicating an activity history according to the execution of the app, an operating system version of the terminal, a terminal type of the terminal, and a connection area of the terminal. At least one condition among information on is set as the driving condition for the filtering.
다른 실시예에 따르면, 앱 테스트 장치에 의해 수행되는 앱 테스트 방법에 있어서, 앱 테스트를 위한 단말의 정보를 확인하는 단계, 상기 앱 테스트를 위한 구동 조건을 설정하는 단계, 및 상기 단말로부터 테스트 관련 정보를 수신하고, 상기 수신된 정보를 상기 구동 조건으로 필터링하여 앱의 구동 상황을 제공하는 단계를 포함하고, 상기 구동 조건을 설정하는 단계는, 상기 앱의 실행에 따른 활동 내역을 나타내는 실행상태, 상기 단말의 운영체제버전, 상기 단말의 단말종류, 및 상기 단말의 접속지역에 대한 정보 중 적어도 하나의 조건을 상기 필터링을 위한 상기 구동 조건으로 설정하는 단계를 포함한다.According to another embodiment, in the app test method performed by the app test device, the method comprising: checking information of a terminal for testing an app, setting driving conditions for the testing of the app, and test-related information from the terminal Receiving, filtering the received information with the driving conditions to provide a driving status of the app, and setting the driving conditions includes: an execution state indicating an activity history according to the execution of the app; And setting at least one condition of the operating system version of the terminal, the terminal type of the terminal, and information on the access area of the terminal as the driving condition for the filtering.
전술한 과제 해결 수단 중 어느 하나에 의하면, 크래시 발생 전에 앱의 구동 상황을 확인하여 결함을 확인할 수 있는 앱 테스트 장치 및 방법을 제시할 수 있다.According to any one of the above-described problem solving means, it is possible to present an app test apparatus and method capable of confirming a defect by checking the driving state of the app before a crash occurs.
또한, 전술한 과제 해결 수단 중 어느 하나에 의하면, 크래시 발생 전의 결함으로 인한 사용자의 이탈을 방지할 수 있는 앱 테스트 장치 및 방법을 제시할 수 있다.In addition, according to any one of the above-described problem solving means, it is possible to present an apparatus and method for testing an app that can prevent a user from leaving due to a defect before a crash occurs.
개시되는 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 개시되는 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.Effects obtained in the disclosed embodiments are not limited to the above-mentioned effects, and other effects not mentioned are apparent to those skilled in the art to which the embodiments disclosed from the following description belong. It can be understood.
도 1은 일 실시예에 따른 앱 테스트 시스템을 도시한 구성도이다.
도 2는 일 실시예에 따른 앱 테스트 장치를 도시한 블록도이다.
도 3 은 일 실시예에 따른 앱 테스트 장치의 제어부를 도시한 블록도이다.
도 4는 일 실시예에 따른 앱 테스트 장치에서 필터링을 위한 구동 조건이 표시된 화면을 도시한 도면이다.
도 5는 일 실시예에 따른 앱 테스트 장치에서 구동 상황에 대응되는 세부 항목을 도시한 도면이다.
도 6은 일 실시예에 따른 앱 테스트 장치에서 앱 테스트 동작을 도시한 도면이다.1 is a configuration diagram illustrating an app test system according to an embodiment.
2 is a block diagram illustrating an app test device according to an embodiment.
3 is a block diagram illustrating a control unit of an app test device according to an embodiment.
4 is a diagram illustrating a screen displaying driving conditions for filtering in an app test device according to an embodiment.
5 is a diagram illustrating detailed items corresponding to a driving situation in an app test device according to an embodiment.
6 is a diagram illustrating an app test operation in an app test device according to an embodiment.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art to which the present invention pertains can easily practice. However, the present invention can be implemented in many different forms and is not limited to the embodiments described herein. In addition, in order to clearly describe the present invention in the drawings, parts irrelevant to the description are omitted, and like reference numerals are assigned to similar parts throughout the specification.
명세서 전체에서, 어떤 구성이 다른 구성과 "연결"되어 있다고 할 때, 이는 '직접적으로 연결'되어 있는 경우뿐 아니라, '그 중간에 다른 구성을 사이에 두고 연결'되어 있는 경우도 포함한다. 또한, 어떤 구성이 어떤 구성을 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한, 그 외 다른 구성을 제외하는 것이 아니라 다른 구성들을 더 포함할 수도 있음을 의미한다.Throughout the specification, when a configuration is said to be "connected" to another configuration, this includes not only a case of 'directly connecting', but also a case of 'connecting another configuration in between'. In addition, when a configuration is said to "include" a configuration, this means that unless otherwise stated, other configurations may be excluded and other configurations may be further included.
이하 첨부된 도면을 참고하여 실시예들을 상세히 설명하기로 한다.Hereinafter, exemplary embodiments will be described in detail with reference to the accompanying drawings.
다만 이를 설명하기에 앞서, 아래에서 사용되는 용어들의 의미를 먼저 정의한다.Before explaining this, however, the meanings of terms used below are defined first.
여기서, '애플리케이션'은 후술될 전자 단말 또는 단말 상에서 실행되어 소정의 목적을 달성하기 위한 프로그램으로서, 응용프로그램이라고도 한다. 이러한 애플리케이션은, 이하에서 '앱'과 동일한 의미로서 혼용하여 사용될 수 있다.Here, the 'application' is a program for running on an electronic terminal or terminal to be described later to achieve a predetermined purpose, and is also referred to as an application program. These applications may be used interchangeably with the same meaning as 'app' below.
'구동 조건'은 앱이 테스트 되는 구동 환경에 대한 정보를 확인하기 위한 조건이며, 앱의 실행에 따른 활동 내역을 나타내는 실행상태, 단말의 운영체제 버전, 단말의 단말종류, 단말의 접속지역에 대한 정보 중 적어도 하나를 포함할 수 있다. 여기서, 구동 조건은 예시적으로 설명된 것으로, 필요에 따라 앱 테스트를 위한 단말의 하드웨어 및 소프트웨어 자원 또는 단말 주변 환경에 대한 정보를 추가로 포함할 수 있다.The 'drive condition' is a condition for confirming information about a driving environment in which the app is tested, and an execution state indicating an activity history according to the execution of the app, an operating system version of the terminal, a terminal type of the terminal, and information about a connection area of the terminal. It may include at least one of. Here, the driving conditions are exemplarily described, and if necessary, may further include hardware and software resources of the terminal for app testing or information about the environment around the terminal.
'구동 상황'은 구동 조건에 따라 단말에서 수집된 정보를 필터링하여 획득된 정보이며, 앱 테스트 결과를 의미한다. 구동 상황은 앱의 테스트에 따른 단말의 앱 사용 상태 내지는 단말의 자원 사용량을 나타낼 수 있으며, 세부 항목으로 구분될 수 있다. 세부 항목은 예를 들어, 앱의 사용 흐름, 사용자 인터페이스(UI) 렌더링 시간, 중앙처리장치 사용량, 메모리 사용량, 네트워크 응답시간, 및 크래시 중 적어도 하나를 포함할 수 있다.The 'drive situation' is information obtained by filtering information collected from the terminal according to driving conditions, and means an app test result. The driving situation may indicate an application usage state of the terminal or resource usage of the terminal according to the test of the app, and may be divided into detailed items. The detailed items may include, for example, at least one of an application usage flow, user interface (UI) rendering time, central processing unit usage, memory usage, network response time, and crash.
도 1은 일 실시예에 따른 앱 테스트 시스템을 도시한 구성도이다.1 is a configuration diagram illustrating an app test system according to an embodiment.
도 1에 도시된 바와 같이, 앱 테스트 시스템(10)은 단말(110, 120)과 앱 테스트 장치(200)를 포함할 수 있다. 앱 테스트 장치(200)는 네트워크(N)를 통해 단말(110, 120)과 통신할 수 있다.As shown in FIG. 1, the
단말(110, 120)은 앱이 실행되는 장치로서, 단말(110, 120)에서 앱을 실행시키고, 실행되는 앱을 테스트함에 따라 테스트 단말로 간주될 수 있다. 여기서, 테스트 단말은 앱의 테스트가 진행되거나 앱의 테스트가 진행되기 위해 선택된 단말을 의미한다.The
단말(110, 120)은 앱의 테스트에 필요한 다양한 정보를 앱 테스트 장치(200)로 제공할 수 있다. 예를 들어, 단말(110, 120)은 앱의 테스트를 위한 단말의 고유 정보(제조사, 모델명)를 앱 테스트 장치(200)로 제공할 수 있다. 또한, 단말(110, 120)은 앱의 실행에 의해 생성되거나 변경될 수 있는 다양한 정보를 앱 테스트 장치로 제공할 수 있으며, 사용자의 이동 등에 의한 단말(110, 120)의 상태 변화에 따라 발생되는 정보(예를 들면, 위치 정보 등)를 앱 테스트 장치(200)로 제공할 수도 있다.The
단말(110, 120)은 네트워크(N)를 통해 원격지의 서버에 접속하거나, 타 단말 및 서버와 연결 가능한 컴퓨터나 휴대용 단말기, 텔레비전으로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop) 등을 포함하고, 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), GSM(Global System for Mobile communications), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet), 스마트폰(Smart Phone), 모바일 WiMAX(Mobile Worldwide Interoperability for Microwave Access) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다. 또한, 텔레비전은 IPTV(Internet Protocol Television), 인터넷 TV(Internet Television), 지상파 TV, 케이블 TV 등을 포함할 수 있다.The
앱 테스트 장치(200)는 테스트하고자 하는 앱을 단말(110, 120)에서 실행시키고, 실행결과를 확인할 수 있다. 또한, 앱 테스트 장치(200)는 단말(110, 120)에서 앱을 실행시키기 위해 단말(110, 120)의 앱 설치 동작을 제어할 수 있다. 이러한, 앱 테스트 장치(200)는 개인 컴퓨터(PC)뿐만 아니라 휴대용 단말기 등을 포함한 다양한 전자 단말을 통해 구현될 수 있으며, 상술한 단말(110, 120)과 동일한 장치로 구현될 수도 있다.The
예를 들어, 앱 테스트 장치(200)에는 앱 테스트를 수행하기 위한 프로그램이 설치될 수 있다. 또한, 앱 테스트 장치(200)는 앱 테스트를 수행하기 위한 프로그램이 설치된 서버(미도시)와 통신을 수행하고, 앱 테스트와 관련된 입력을 수신하고, 앱 테스트 결과를 표시하기 위한 사용자 인터페이스 화면을 제공할 수도 있다. 단말(110, 120)에 설치되는 앱에는 앱 테스트를 위한 모듈이 소프트웨어 개발 키트(Software Development Kit, 이하 'SDK'라 칭하기로 함) 등의 형태로 삽입될 수 있다. 앱 테스트를 수행하기 위한 프로그램은 SDK가 삽입된 앱에 대한 테스트를 수행할 수 있다.For example, a program for performing an app test may be installed in the
앱 테스트 장치(200)는 앱이 실행되는 단말(110, 120)로부터 앱의 테스트를 위해 필요한 정보를 수신할 수 있다. 앱 테스트 장치(200)는 단말(110, 120)로부터 수집된 정보를 구동 조건에 기초하여 필터링하고, 필터링된 결과인 구동 상황에 대한 정보를 제공할 수 있다. 여기서, 구동 조건은 사용자가 앱 테스트 장치(200)를 통해 설정 가능하다.The
관련하여, 앱 테스트 장치(200)는 도 2를 참조하여 보다 상세하게 후술된다.In relation to this, the
도 2는 일 실시예에 따른 앱 테스트 장치를 도시한 블록도이다.2 is a block diagram illustrating an app test device according to an embodiment.
도 2에 도시된 바와 같이, 앱 테스트 장치(200)는 입출력부(210), 통신부(220), 저장부(230) 및 제어부(240)를 포함할 수 있다.2, the
입출력부(210)는 사용자로부터 입력을 수신하기 위한 입력부와, 작업의 수행 결과 또는 앱 테스트 장치(200)의 상태 등의 정보를 표시하기 위한 출력부를 포함할 수 있다. 예를 들어, 입출력부(210)는 사용자 입력을 수신하는 조작 패널(operation panel) 및 화면을 표시하는 디스플레이 패널(display panel) 등을 포함할 수 있다.The input /
구체적으로, 입력부는 키보드, 물리 버튼, 터치 스크린, 카메라 또는 마이크 등과 같이 다양한 형태의 사용자 입력을 수신할 수 있는 장치들을 포함할 수 있다. 또한, 출력부는 디스플레이 패널 또는 스피커 등을 포함할 수 있다. 다만, 이에 한정되지 않고 입출력부(210)는 다양한 입출력을 지원하는 구성을 포함할 수 있다.Specifically, the input unit may include devices capable of receiving various types of user input, such as a keyboard, a physical button, a touch screen, a camera, or a microphone. Also, the output unit may include a display panel or a speaker. However, the present invention is not limited thereto, and the input /
한편, 통신부(220)는 다른 디바이스 또는 네트워크(N)와 유무선 통신을 수행할 수 있다. 이를 위해, 통신부(220)는 다양한 유무선 통신 방법 중 적어도 하나를 지원하는 통신 모듈을 포함할 수 있다. 예를 들어, 통신 모듈은 칩셋(chipset)의 형태로 구현될 수 있다.Meanwhile, the
통신부(220)가 지원하는 무선 통신은, 예를 들어 Wi-Fi(Wireless Fidelity), Wi-Fi Direct, 블루투스(Bluetooth), UWB(Ultra Wide Band) 또는 NFC(Near Field Communication) 등일 수 있다. 또한, 통신부(220)가 지원하는 유선 통신은, 예를 들어 USB 또는 HDMI(High Definition Multimedia Interface) 등일 수 있다. 상술된 통신은 예시일 뿐이며, 앱 테스트 장치(200)가 통신을 수행할 수 있도록 하는 각종 통신 기법이 가능하다.The wireless communication supported by the
한편, 저장부(230)에는 파일, 애플리케이션 및 프로그램 등과 같은 다양한 종류의 데이터가 설치 및 저장될 수 있다. 데이터의 예로서, 앱 테스트를 위한 정보를 포함할 수 있으며, 앱 테스트를 위해 단말(110, 120)로부터 수집된 정보일 수도 있다.Meanwhile, various types of data, such as files, applications, and programs, may be installed and stored in the
저장부(230)에 저장된 데이터는 후술될 제어부(240)에 의해 액세스되어 이용되거나, 또는 제어부(240)에 의해 새로운 데이터가 저장될 수 있다. 또한 저장부(230)는 제어부(240)에 의해 실행될 수 있는 프로그램을 저장할 수 있다.Data stored in the
저장부(230)는 앱 테스트 동작에 의해 생성된 정보 내지는 앱 테스트 결과에 대한 정보를 제어부(240)에 의해 저장할 수 잇다.The
한편, 제어부(240)는 앱 테스트 장치(200)의 전체적인 동작을 제어하며, CPU 등과 같은 프로세서를 포함할 수 있다. 제어부(240)는 입출력부(210)를 통해 수신한 사용자 입력에 대응되는 동작을 수행하도록 앱 테스트 장치(200)에 포함된 다른 구성들을 제어할 수 있다.On the other hand, the
예를 들어, 제어부(240)는 저장부(230)에 저장된 데이터를 읽어오거나, 새로운 데이터를 저장부(230)에 저장할 수도 있다.For example, the
일 실시예에 따르면, 제어부(240)는 통신부(220)를 통해 단말(110, 120)로부터 앱 테스트에 관련된 정보를 수신할 수 있다. 제어부(240)는 수신된 정보를 필터링하기 위해 입출력부(210)를 통해 입력된 정보에 기초하여 구동 조건을 설정할 수 있다.According to an embodiment, the
제어부(240)는 구동 조건에 기초하여 단말(110, 120)에서 테스트 관련 정보를 필터링할 수 있다. 제어부(240)는 단말(110, 120)에서 필터링된 정보는 앱의 구동 상황을 나타낼 수 있다. 제어부(240)는 현재 크래시가 발생하지 않은 상태에서도 앱에 관련된 상황을 확인할 수 있는 정보인 구동 상황을 설정된 구동 조건에 따라 필터링하여 제공받을 수 있다. 여기서, 크래시(crash)는 전원의 유실, 시스템 에러, 애플리케이션 에러 등으로 정상적인 종료 동작을 수행하지 못했을 경우 발생하는 에러를 의미한다.The
한편, 제어부(240)는 도 3을 참조하여 보다 상세하게 후술된다.Meanwhile, the
이를 통해, 앱 테스트 장치(200)는 필터링 동작을 수행하여 앱 테스트 시에 크래시의 발생 여부와 관계없이 앱에서 발생될 수 있는 결함을 확인할 수 있는 정보를 사용자에게 제공할 수 있다. 이와 같이, 앱 테스트 장치(200)는 크래시 발생 이전에 앱 테스트를 통해 발생된 결함(예를 들어 자원의 과도한 사용 내지는 앱의 성능 저하 등)에 대한 정보를 제공함으로써 앱의 관리자가 문제를 해결할 수 있도록 하므로 앱의 결함으로 인한 사용자 이탈을 방지할 수 있다.Through this, the
더욱이, 앱 테스트 장치(200)는 앱 실행 시 발생될 수 있는 결함을 크래시 발생 전에 타겟팅하여 소스코드를 수정하거나 소스코드의 수정이 불필요한 상황(예를 들어, 앱의 접속지역이 상이한 지역에 위치, 저사양 단말로 인한 CPU 사용량 또는 메모리 사용량 초과 등)을 판단할 수 있다. 이로 인해, 앱 테스트 장치(200)는 앱에서 문제 발생 시 소스 코드의 수정이 필요한 상황인지 앱 관리자가 파악할 수 있도록 함으로써 불필요한 소스 코드의 수정 동작을 예방할 수 있다.Moreover, the
도 3 은 일 실시예에 따른 앱 테스트 장치의 제어부를 도시한 블록도이다.3 is a block diagram illustrating a control unit of an app test device according to an embodiment.
도 3에 도시된 바와 같이, 제어부(240)는 테스트 단말 관리부(241), 필터부(242), 및 테스트 정보 처리부(243)를 포함할 수 있다.3, the
일 실시예에 따른, 테스트 단말 관리부(241)는 통신부(220)를 통해 단말(110, 120)과 통신할 수 있으며, 단말(110, 120)의 정보를 관리할 수 있다. 테스트 단말 관리부(241)는 단말(110, 120)의 하드웨어 자원과 소프트웨어 자원에 대한 정보를 관리할 수 있다. 예를 들어, 테스트 단말 관리부(241)는 단말(110, 120)의 제조사, 모델명(또는 제품명), 스펙(CPU, 메모리, 카메라, 디스플레이, 및 배터리 등의 성능) 등의 하드웨어 자원에 대한 정보를 관리하거나, 운영체제 또는 운영체제 버전 등에 대한 정보를 관리할 수 있다.According to an embodiment, the test
테스트 단말 관리부(241)는 저장부(230)에 단말(110, 120)의 정보가 저장되거나 단말(110, 120)의 제조사 서버와 통신하여 단말(110, 120)의 정보를 수집할 수 있다. 이러한 경우, 테스트 단말 관리부(241)는 단말(110, 120)의 제품명을 수신하여 단말에 관련된 상세 정보, 즉 하드웨어 자원과 소프트웨어 자원에 대한 정보를 획득할 수도 있다.The test
테스트 단말 관리부(241)는 단말(110, 120)에서 구동 중인 앱에 관련된 정보를 제공받을 수 있다. 또한, 테스트 단말 관리부(241)는 앱의 사용과 관련된 다양한 정보를 단말(110, 120)로부터 제공받을 수 있다. 예를 들어, 테스트 단말 관리부(241)는 앱의 실행에 따른 사용자의 활동 내역에 관련된 정보로서 실행상태 정보를 수신할 수 있다. 여기서, 실행상태는 사용자의 입력에 따라 앱이 실행되는 각각의 상태를 의미한다. 각각의 실행상태에 대응하여 단말에 표시되는 실행화면이 존재할 수 있다., 예를 들어, 실행상태는 안드로이드 운영체제에서는 액티비티 또는 아이오에스(iOS)에서는 iOS 뷰에 대응될 수 있다.The test
일 실시예에 따른, 필터부(242)는 구동 조건을 사용자로부터 입력받아 설정하거나 구동 조건이 내부에 미리 설정되어 있을 수 있다. 필터부(242)는 설정된 구동 조건으로 단말(110, 120)에서 수신된 정보를 필터링할 수 있다. 예를 들어, 필터부(242)는 필터링을 위한 구동 조건으로 실행상태, 운영체제버전, 단말종류, 및 접속지역에 대한 조건 중 적어도 하나를 포함할 수 있다.According to an embodiment, the
우선, 필터부(242)는 앱의 실행에 따른 활동 내역을 나타내는 실행상태를 구동 조건으로 설정할 수 있다. 이후, 필터부(242)는 운영체제버전을 구동 조건으로 설정할 수 있고, 다음으로 단말종류를 구동 조건으로 설정할 수 있다. 마지막으로 필터부(242)는 접속지역을 구동 조건으로 설정할 수 있다. 이와 같이, 필터부(242)는 실행상태, 운영체제버전, 단말종류, 및 접속지역을 구동 조건으로 설정할 수 있으며, 구동 조건 설정 시 두 개 이상의 구동 조건을 사용하는 경우, 앤드 연산을 이용할 수 있다. 따라서, 필터부(242)는 실행상태, 운영체제버전, 단말종류, 및 접속지역에 대해 차례로 앤드 연산을 수행하여 필터링을 할 수 있다.First, the
필터부(242)는 구동 조건의 설정 시, 구동 조건 별로 특정 구동 상황이 발생되는 빈도수와 위험도(예를 들어, 결함 또는 크래시 발생)를 입출력부(210)를 이용하여 출력할 수도 있다. 또한, 필터부(242)는 필터링된 구동 상황을 테스트 정보 처리부(243)로 출력할 수 있다.When setting the driving conditions, the
일 실시예에 따른, 테스트 정보 처리부(243)는 필터링된 구동 상황을 정렬하거나 도식화하여 출력할 수 있다. 이를 위해, 테스트 정보 처리부(243)는 표, 차트, 그래프 등 다양한 방식을 이용하여 정보를 출력할 수 있다.According to an embodiment, the test
테스트 정보 처리부(243)는 구동 조건에 따라 필터링된 정보인 구동 상황에 대한 정보를 입출력부(110)를 이용하여 출력할 수 있다. 이를 통해, 테스트 정보 처리부(243)는 사용자에게 앱 테스트를 위한 구동 상황에서 발생될 수 있는 결함을 확인할 수 있는 정보를 제공할 수 있다.The test
테스트 정보 처리부(243)는 구동 상황의 세부 항목에 대한 정보를 제공할 수 있다. 여기서, 세부 항목은 앱의 사용 흐름, 사용자 인터페이스 렌더링 시간, 중앙처리장치 사용량, 메모리 사용량, 네트워크 응답시간, 및 크래시 중 적어도 하나를 포함한다. 테스트 정보 처리부(243)는 세부 항목에 대한 정보의 제공 시 사용자에 의해 설정된 특정 기간, 일정 시간 내지는 날짜 등을 기준으로 세부 항목을 표시할 수 있다.The test
앱 테스트 장치(200)에서 사용되는 구동 조건 내지는 구동 상황은 앱 테스트 동작을 설명하기 위해 예시적으로 설명된 것이며, 상술한 정보들 이외의 다양한 정보들이 구동 조건으로 설정되거나 구동 상황으로 출력될 수 있다.The driving conditions or driving conditions used in the
도 4는 일 실시예에 따른 앱 테스트 장치에서 필터링을 위한 구동 조건이 표시된 화면을 도시한 도면이다.4 is a diagram illustrating a screen displaying driving conditions for filtering in an app test device according to an embodiment.
도 4에 도시된 바와 같이, 앱 테스트 장치(200)에서 필터링을 위한 구동 조건(310)이 도시된다.4, a driving
앱 테스트 장치(200)는 실행상태(311), 운영체제버전(312), 단말종류(313), 및 접속지역(314) 중 적어도 하나를 구동 조건(310)으로 포함할 수 있다. 이때, 사용자는 앱 테스트 장치(200)를 통해 실행상태(311), 운영체제버전(312), 단말종류(313), 및 접속지역(314)을 선택함으로써 구동 조건을 설정할 수 있다. 앱 테스트 장치(200)는 구동 조건의 설정 시 실행상태(311), 운영체제버전(312), 단말종류(313), 및 접속지역(314)을 앤드 연산할 수 있으며, 앤드 연산을 위해 하나씩 순차적으로 선택할 수도 있다.The
하지만, 앱 테스트 장치(200)에는 실행상태(311), 운영체제버전(312), 단말종류(313), 및 접속지역(314)에 대한 구동 조건(310)의 다양한 조합이 미리 설정되어 저장될 수 있다. 이때, 앱 테스트 장치(200)는 미리 설정된 조건에 대해 일일이 설정하지 않아도, 하나의 조합에 대한 한 번의 선택만으로 필터링을 위한 구동 조건을 설정하도록 할 수도 있다.However, various combinations of the driving
일 실시예에 따른, 실행상태(311)는 A1 내지 A10까지 도시되어 있다. 예를 들어, 실행상태(311)에서 A1은 메인 실행상태, A2는 밀리스트 실행상태, A3은 갤러리 실행상태, A4는 공유 실행상태, A5는 관리 실행상태, A6은 도움말 실행상태, A7은 로그인 실행상태, A8은 학습(튜토리얼) 실행상태, A9는 슬라이드쇼 실행상태, A10은 추천 실행상태 등을 나타낼 수 있다.According to one embodiment, the
일 실시예에 따른, 운영체제버전(312)은 안드로이드, 아이오에스(iOS) 등과 같이 단말에서 사용되는 운영체제의 버전을 의미할 수 있다. 예를 들어, 운영체제버전(312)은 안드로이드 운영체제를 가정할 수 있으며, V1은 버전 7.0, V2는 버전 6.0.1, V3는 버전 4.1.1, V4는 버전 5.0, V5는 버전 4.0.4, V6는 버전 4.3, V7은 버전 4.4.2를 나타낼 수 있다.According to an embodiment, the
일 실시예에 따른, 단말종류(313)는 단말의 종류를 나타낼 수 있으며, 기기 명칭 내지는 기기의 모델명 등을 포함할 수 있다. 예를 들어, D1은 S사의 G1제품, D2는 L사의 H2제품, D3는 A 사의 I1 제품, D5는 S사의 G2 제품, D6는 L사의 H4제품, D7은 S사의 G4 제품일 수 있다.According to an embodiment, the
일 실시예에 따른, 접속지역(314)은 단말이 접속한 위치 내지는 단말의 현재 위치를 나타낼 수 있다. 예를 들어, 위치(L1)는 한국(KR)일 수 있다.According to an embodiment, the
여기서, 각각의 실행상태(311)에 대응되는 원에는 구동 조건으로 필터링된 전체 테스트 단말 중에서 해당 실행상태(311)를 실행한 테스트 단말의 비율이 표시된다. 또한, 각각의 실행상태(311)에 대응되는 원 내의 색상은 위험도(320)를 나타낼 수 있으며, 위험(검은색), 경고(회색), 안정(흰색) 등으로 나타낼 수 있다.Here, a circle corresponding to each
구동 조건(310)에서 실행상태(311)를 기준으로 실행비율과 위험도를 도시(330)하고 있다. 이때, 실행상태(311)는 앱의 사용에 따라 트리 구조로 도시될 수 있으며, 앱의 메인 화면을 나타내는 메인 실행상태(A1)를 기준으로 각 실행상태별로 실행비율과 위험도를 확인할 수 있다.In the driving
또한, A4와 같은 공유 실행상태의 경우, 예를 들어, A41은 페이스북 공유 실행상태고, A42는 인스타그램 공유 실행상태 등으로 구분되어, 각 실행상태의 하위 실행상태를 나타내는 트리 구조를 가질 수 있으며, 하위 실행상태들에 대해서도 실행비율과 위험도를 확인할 수 있다.Further, in the case of a shared execution state such as A4, for example, A41 is divided into a Facebook shared execution state, and A42 is divided into an Instagram shared execution state, etc., and has a tree structure indicating a sub-execution state of each execution state. In addition, execution rates and risks can be checked for the lower execution states.
도 5는 일 실시예에 따른 앱 테스트 장치에서 구동 상황에 대응되는 세부 항목을 도시한 도면이다.5 is a diagram illustrating detailed items corresponding to a driving situation in an app test device according to an embodiment.
도 5에 도시된 바와 같이, 앱 테스트 장치(200)는 구동 상황에 대한 각 세부 항목들을 도시할 수 있다.As illustrated in FIG. 5, the
예를 들어, 앱 테스트 장치(200)는 세부 항목으로 앱의 사용 흐름(410), 앱의 사용자 인터페이스(UI: User Interface) 렌더링 시간(420), CPU 사용량(430), 및 메모리 사용량(440) 등을 도시할 수 있다.For example, the
앱의 사용 흐름(410)을 살펴보면, 앱 테스트 장치(200)는 앱의 전체 사용 상황 (411) 중에서 메인 실행상태(412), 서버디테일 실행상태(413), URL디테일 실행상태(414), 갤러리 실행상태(415), 로그인 실행상태(416), 및 크래시 실행상태(417)의 사용 상황을 나타낼 수 있다.Looking at the
UI 렌더링 시간(420)을 살펴보면, 세로축은 UI 렌더링에 소요되는 시간(ms(밀리초))을 나타내고, 가로축은 일자를 나타낸다. 그래프에 표시되는 표시 객체의 색상을 통해 해당 표시 객체에 해당되는 구동 상황이 발생한 빈도수를 나타낼 수 있다.Looking at the
CPU 사용량(430)을 살펴보면, 세로축은 CPU 사용 비율(백분율(%))을 나타내고, 가로축은 일자를 나타낸다. 또한, 메모리 사용량(440)을 살펴보면, 세로축은 메모리 사용 용량(메가바이트(MB))을 나타내고, 가로축은 일자를 나타낸다. CPU 사용량(430)과 메모리 사용량(440)에서도 그래프에 표시되는 표시 객체의 색상을 통해 해당 표시 객체에 해당되는 구동 상황이 발생한 빈도수를 나타낼 수 있다.Looking at the
이를 통해, 앱 테스트 장치(200)는 앱 테스트 시에 발생된 결함을 확인하면, 앱의 결함을 해결하기 위한 조치를 수행할 수 있도록 현재 앱의 구동 상황에 대한 정보를 제공할 수 있다.Through this, the
한편, 상술한 일자는 테스트 데이터가 수집된 기간을 예시적으로 설명한 것으로, 분, 시간, 월, 분기 등으로 다양하게 설정될 수 있다.Meanwhile, the above-described date is an example of a period in which test data is collected, and may be variously set to minutes, hours, months, quarters, and the like.
한편, 도 5에서 도시되지는 않았으나, 앱 테스트 장치(200)는 세부 항목으로 네트워크 응답 시간과 크래시에 대한 정보를 추가적으로 제공할 수도 있다.Meanwhile, although not illustrated in FIG. 5, the
도 6은 일 실시예에 따른 앱 테스트 장치에서 앱 테스트 동작을 도시한 도면이다.6 is a diagram illustrating an app test operation in an app test device according to an embodiment.
도 6에 도시된 바와 같이, 앱 테스트 장치(200)는 앱 테스트를 위한 단말 정보를 확인한다(S511). 앱 테스트 장치(200)는 단말에 관련된 정보를 확인할 수 있으며, 특히, 단말에서 사용되는 운영체제버전 또는 단말종류에 대한 정보를 확인할 수 있다. 앱 테스트 장치(200)는 운영체제버전과 단말종류는 구동 조건의 설정에 따른 필터링 시 사용될 수 있다.As shown in FIG. 6, the
앱 테스트 장치(200)는 필터링을 위한 구동 조건을 설정할 수 있다(S513). 앱 테스트 장치(200)는 실행상태, 운영체제버전, 단말종류, 및 접속지역에 대해 앤드 연산으로 구동 조건을 설정할 수 있다. 이때, 앱 테스트 장치(200)는 구동 조건에 따른 실행비율과 위험도에 대한 정보를 제공할 수도 있다.The
앱 테스트 장치(200)는 설정된 구동 조건에 따라 필터링을 수행한다(S515). 앱 테스트 장치(200)는 앱 테스트 중인 단말로부터 테스트 관련 정보를 수신하고, 수신된 정보를 구동 조건에 기초하여 필터링한다.The
앱 테스트 장치(200)는 필터링 결과인 구동 항목에 대한 세부 항목이 선택되었는지 확인한다(S517). 이를 통해, 앱 테스트 장치(200)는 필터링된 구동 항목에 대한 정보들 중에서 원하는 세부 항목에 대한 정보를 확인할 수 있다. S517단계의 확인결과, 세부 항목이 선택되면, S519단계로 진행한다. S517단계의 확인결과, 세부 항목이 선택되지 않으면, 구동 항목에 대한 전체 정보의 제공을 요청하는 것이므로, 앱 테스트 장치(200)는 S521단계로 진행한다.The
앱 테스트 장치(200)는 선택된 세부 항목에 대한 정보를 제공할 수 있다(S519). 앱 테스트 장치(200)는 구동 상황에 대한 모든 정보를 제공하는 대신에 세부 항목의 선택 동작을 통해 앱 테스트를 수행하는 사용자가 원하는 정보만을 제공하도록 할 수 있다.The
앱 테스트 장치(200)는 필터링 결과인 앱의 구동 상황을 제공할 수 있다(S521). 예를 들어, 앱 테스트 장치(200)는 구동 상황에 대한 전체 세부 항목에 대한 정보를 모두 제공할 수 있다. 또한, 앱 테스트 장치(200)는 필터링 결과는 구동 상황에서 앱 테스트 시에 발생된 결함에 대한 정보만을 추출하여 제공할 수도 있다.The
앱 테스트 장치(200)는 앱 테스트를 종료할 것인지 판단한다(S523). S523단계의 판단결과, 앱 테스트를 종료하는 경우, S525단계로 진행한다. 앱 테스트 장치(200)는 앱 테스트를 종료하지 않는 경우, S513단계로 진행한다.The
앱 테스트 장치(200)는 앱 테스트 결과를 저장할 것인지 확인한다(S525). 525단계의 확인결과, 앱 테스트 결과를 저장하는 경우, 앱 테스트 장치(200)는 S527단계로 진행한다. 앱 테스트 장치(200)는 앱 테스트 결과를 저장하지 않는 경우, 앱 테스트 장치(200)는 종료한다.The
앱 테스트 장치(200)는 앱 테스트 결과를 저장하고 종료한다(S527). 앱 테스트 장치(200)는 필터링을 위한 구동 조건 또는 필터링 결과인 구동 상황에 대응되는 정보를 매칭시켜 저장할 수 있다. 또한, 앱 테스트 장치(200)는 구동 상황으로부터 결함이 발생되거나 크래시가 발생될 것으로 예상되는 결함에 대해 앱의 소스 코드 수정을 위한 사용자 입력을 수신할 수도 있다.The
이와 같이, 앱 테스트 장치(200)는 필터링을 위해 설정된 구동 조건의 조합(예를 들어, 메인 실행상태, 안드로이드 7.0버전, S사 G시리즈단말, 한국 등)을 필터링 그룹에 대한 정보를 저장하고, 구동 조건의 조합에 대응되는 구동 상황을 함께 저장하여 앱 테스트의 결함을 발견할 수 있다.As described above, the
앱 테스트 장치(200)는 앱의 비정상 종료 시, 원인 분석을 앱 자체가 아닌 모바일 플랫폼에서의 자원 상황을 함께 고려하여 결함을 확인할 수 있어 앱 테스트의 정확도가 향상될 수 있다. 더욱이, 앱 테스트 장치(200)는 앱이 배포되는 마켓이나 지역에 제한없이 언제 어디서나 앱 테스트를 위해 수집된 데이터를 이용할 수 있다.When the app is abnormally terminated, the
이상의 실시예들에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field programmable gate array) 또는 ASIC 와 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램특허 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다.The term '~ unit' used in the above embodiments means software or hardware components such as a field programmable gate array (FPGA) or ASIC, and '~ unit' performs certain roles. However, '~ wealth' is not limited to software or hardware. The '~ unit' may be configured to be in an addressable storage medium or may be configured to reproduce one or more processors. Thus, as an example, '~ unit' refers to components such as software components, object-oriented software components, class components and task components, processes, functions, attributes, and procedures. , Subroutines, segments of program patent code, drivers, firmware, microcode, circuitry, data, database, data structures, tables, arrays, and variables.
구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로부터 분리될 수 있다.The functionality provided within components and '~ units' may be combined into a smaller number of components and '~ units', or separated from additional components and '~ units'.
뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU 들을 재생시키도록 구현될 수도 있다.In addition, the components and '~ unit' may be implemented to play one or more CPUs in the device or secure multimedia card.
도 6을 통해 설명된 실시예에 따른 앱 테스트 방법은 컴퓨터에 의해 실행 가능한 명령어 및 데이터를 저장하는, 컴퓨터로 판독 가능한 매체의 형태로도 구현될 수 있다. 이때, 명령어 및 데이터는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 소정의 프로그램 모듈을 생성하여 소정의 동작을 수행할 수 있다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터 기록 매체일 수 있는데, 컴퓨터 기록 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함할 수 있다. 예를 들어, 컴퓨터 기록 매체는 HDD 및 SSD 등과 같은 마그네틱 저장 매체, CD, DVD 및 블루레이 디스크 등과 같은 광학적 기록 매체, 또는 네트워크를 통해 접근 가능한 서버에 포함되는 메모리일 수 있다. The app test method according to the embodiment described with reference to FIG. 6 may also be implemented in the form of a computer-readable medium that stores instructions and data executable by a computer. At this time, instructions and data may be stored in the form of program code, and when executed by a processor, a predetermined program module may be generated to perform a predetermined operation. Also, the computer-readable medium can be any available medium that can be accessed by a computer, and includes both volatile and nonvolatile media, removable and non-removable media. In addition, the computer-readable medium may be a computer recording medium, which is volatile and non-volatile implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Volatile, removable and non-removable media. For example, the computer recording medium may be a magnetic storage medium such as HDD and SSD, an optical recording medium such as CD, DVD and Blu-ray disk, or a memory included in a server accessible through a network.
또한 도 6을 통해 설명된 실시예에 따른 앱 테스트 방법은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 컴퓨터 프로그램(또는 컴퓨터 프로그램 제품)으로 구현될 수도 있다. 컴퓨터 프로그램은 프로세서에 의해 처리되는 프로그래밍 가능한 기계 명령어를 포함하고, 고레벨 프로그래밍 언어(High-level Programming Language), 객체 지향 프로그래밍 언어(Object-oriented Programming Language), 어셈블리 언어 또는 기계 언어 등으로 구현될 수 있다. 또한 컴퓨터 프로그램은 유형의 컴퓨터 판독가능 기록매체(예를 들어, 메모리, 하드디스크, 자기/광학 매체 또는 SSD(Solid-State Drive) 등)에 기록될 수 있다. In addition, the app test method according to the embodiment described with reference to FIG. 6 may be implemented as a computer program (or computer program product) including instructions executable by a computer. The computer program includes programmable machine instructions processed by a processor and may be implemented in a high-level programming language, object-oriented programming language, assembly language, or machine language. . In addition, the computer program may be recorded on a tangible computer-readable recording medium (eg, memory, hard disk, magnetic / optical medium, or solid-state drive (SSD), etc.).
따라서 도 6을 통해 설명된 실시예에 따른 앱 테스트 방법은 상술한 바와 같은 컴퓨터 프로그램이 컴퓨팅 장치에 의해 실행됨으로써 구현될 수 있다. 컴퓨팅 장치는 프로세서와, 메모리와, 저장 장치와, 메모리 및 고속 확장포트에 접속하고 있는 고속 인터페이스와, 저속 버스와 저장 장치에 접속하고 있는 저속 인터페이스 중 적어도 일부를 포함할 수 있다. 이러한 성분들 각각은 다양한 버스를 이용하여 서로 접속되어 있으며, 공통 머더보드에 탑재되거나 다른 적절한 방식으로 장착될 수 있다. Therefore, the app test method according to the embodiment described with reference to FIG. 6 may be implemented by executing the computer program as described above by the computing device. The computing device may include at least a portion of a processor, a memory, a storage device, a high-speed interface connected to the memory and a high-speed expansion port, and a low-speed interface connected to the low-speed bus and the storage device. Each of these components is connected to each other using various buses, and may be mounted on a common motherboard or mounted in other suitable ways.
여기서 프로세서는 컴퓨팅 장치 내에서 명령어를 처리할 수 있는데, 이런 명령어로는, 예컨대 고속 인터페이스에 접속된 디스플레이처럼 외부 입력, 출력 장치상에 GUI(Graphic User Interface)를 제공하기 위한 그래픽 정보를 표시하기 위해 메모리나 저장 장치에 저장된 명령어를 들 수 있다. 다른 실시예로서, 다수의 프로세서 및(또는) 다수의 버스가 적절히 다수의 메모리 및 메모리 형태와 함께 이용될 수 있다. 또한 프로세서는 독립적인 다수의 아날로그 및(또는) 디지털 프로세서를 포함하는 칩들이 이루는 칩셋으로 구현될 수 있다. Here, the processor is capable of processing instructions within the computing device, such as for displaying graphical information for providing a graphical user interface (GUI) on an external input or output device, such as a display connected to a high-speed interface. Examples include instructions stored in memory or storage devices. In other embodiments, multiple processors and / or multiple buses may be used with multiple memories and memory types as appropriate. In addition, the processor may be implemented as a chipset formed by chips including a plurality of independent analog and / or digital processors.
또한 메모리는 컴퓨팅 장치 내에서 정보를 저장한다. 일례로, 메모리는 휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 다른 예로, 메모리는 비휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 또한 메모리는 예컨대, 자기 혹은 광 디스크와 같이 다른 형태의 컴퓨터 판독 가능한 매체일 수도 있다. Memory also stores information within computing devices. In one example, the memory may be comprised of volatile memory units or a collection thereof. As another example, the memory may be composed of non-volatile memory units or a collection thereof. The memory may also be other types of computer readable media, such as magnetic or optical disks.
그리고 저장장치는 컴퓨팅 장치에게 대용량의 저장공간을 제공할 수 있다. 저장 장치는 컴퓨터 판독 가능한 매체이거나 이런 매체를 포함하는 구성일 수 있으며, 예를 들어 SAN(Storage Area Network) 내의 장치들이나 다른 구성도 포함할 수 있고, 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치, 혹은 테이프 장치, 플래시 메모리, 그와 유사한 다른 반도체 메모리 장치 혹은 장치 어레이일 수 있다. And the storage device can provide a large storage space for the computing device. The storage device may be a computer readable medium or a configuration including such a medium, and may include, for example, devices within a storage area network (SAN) or other configurations, and may include floppy disk devices, hard disk devices, optical disk devices, Or a tape device, flash memory, or other similar semiconductor memory device or device array.
상술된 실시예들은 예시를 위한 것이며, 상술된 실시예들이 속하는 기술분야의 통상의 지식을 가진 자는 상술된 실시예들이 갖는 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 상술된 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The above-described embodiments are for illustration only, and those skilled in the art to which the above-described embodiments belong can easily be modified into other specific forms without changing the technical idea or essential characteristics of the above-described embodiments. You will understand. Therefore, it should be understood that the above-described embodiments are illustrative 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 to be protected through the present specification is indicated by the claims, which will be described later, rather than the detailed description, and should be interpreted to include all modified or modified forms derived from the meaning and scope of the claims and their equivalent concepts. .
10: 앱 테스트 시스템 110, 120: 테스트 단말들
200: 앱 테스트 장치 210: 입출력부
220: 통신부 230: 저장부
240: 제어부 241: 테스트 단말 관리부
242: 필터부 243: 테스트 정보 처리부10:
200: App test device 210: input and output unit
220: communication unit 230: storage unit
240: control unit 241: test terminal management unit
242: filter unit 243: test information processing unit
Claims (11)
앱 테스트 중인 단말로부터 테스트 관련 정보를 수신하고, 상기 수신된 정보를 미리 설정된 구동 조건으로 필터링하여 앱의 구동 상황을 제공하는 제어부를 포함하고,
상기 제어부는,
상기 앱의 실행에 따른 활동 내역을 나타내는 실행상태, 상기 단말의 운영체제버전, 상기 단말의 단말종류, 및 상기 단말의 접속지역에 대한 조건을 조합하여 상기 필터링을 위한 상기 구동 조건으로 설정하는 앱 테스트 장치.Communication unit for communicating with the terminal for the app test; And
It includes a control unit for receiving test-related information from the terminal under test of the app, and filtering the received information to a preset driving condition to provide a driving state of the app,
The control unit,
An app test device that sets the driving condition for the filtering by combining the execution state, the operating system version of the terminal, the terminal type of the terminal, and the conditions for the access area of the terminal, showing activity details according to the execution of the app .
상기 제어부는,
상기 조합은 앤드 연산으로 수행하되,
상기 실행상태, 상기 운영체제버전, 상기 단말종류 및 상기 접속지역에 대해 차례로 앤드 연산을 수행하여 필터링하는 앱 테스트 장치.According to claim 1,
The control unit,
The combination is performed by AND operation,
App testing device for filtering by performing an AND operation on the execution state, the operating system version, the terminal type and the access area in turn.
상기 제어부는,
상기 구동 조건에 대해 구동 상황의 수치별 빈도수와 위험도를 제공하는 앱 테스트 장치.According to claim 1,
The control unit,
App test device that provides the frequency and risk of each numerical value of the driving situation for the driving conditions.
상기 제어부는,
상기 구동 상황은 세부 항목에 대한 정보를 포함하며,
상기 세부 항목은, 앱의 사용 흐름, 사용자 인터페이스(UI) 렌더링 시간, 중앙처리장치 사용량, 메모리 사용량, 네트워크 응답시간, 및 크래시 중 적어도 하나를 포함하는 앱 테스트 장치.According to claim 1,
The control unit,
The driving situation includes information on detailed items,
The detailed item is an app test device including at least one of an application flow, user interface (UI) rendering time, central processing unit usage, memory usage, network response time, and crash.
상기 제어부는,
상기 세부 항목을 상기 앱을 테스트 중인 일자를 기준으로 정렬하는 앱 테스트 장치.The method of claim 5,
The control unit,
App testing device that sorts the details based on the date the app is being tested.
앱 테스트를 위한 단말의 정보를 확인하는 단계;
상기 앱 테스트를 위한 구동 조건을 설정하는 단계; 및
상기 단말로부터 테스트 관련 정보를 수신하고, 상기 수신된 정보를 상기 구동 조건으로 필터링하여 앱의 구동 상황을 제공하는 단계를 포함하고,
상기 구동 조건을 설정하는 단계는,
상기 앱의 실행에 따른 활동 내역을 나타내는 실행상태, 상기 단말의 운영체제버전, 상기 단말의 단말종류, 및 상기 단말의 접속지역에 대한 조건을 조합하여 상기 필터링을 위한 상기 구동 조건으로 설정하는 단계를 포함하는 앱 테스트 방법.In the app test method performed by the app test device,
Checking the information of the terminal for testing the app;
Setting driving conditions for the app test; And
And receiving test-related information from the terminal and filtering the received information with the driving conditions to provide a driving status of the app,
The step of setting the driving conditions,
And setting the driving condition for the filtering by combining the execution state indicating the activity details according to the execution of the app, the operating system version of the terminal, the terminal type of the terminal, and the conditions for the access area of the terminal. How to test your app.
상기 구동 조건으로 설정하는 단계는,
상기 조합 시 앤드 연산으로 수행하되, 상기 실행상태, 상기 운영체제버전, 상기 단말종류 및 상기 접속지역에 대해 차례로 앤드 연산을 수행하여 필터링하는 단계를 포함하는 앱 테스트 방법.The method of claim 7,
The step of setting the driving conditions,
The combination of performing the AND operation, and performing the AND operation on the execution state, the operating system version, the terminal type, and the access area in order to filter the app.
상기 앱의 구동 상황을 제공하는 단계는,
상기 구동 상황에 대응되는 세부 항목인 앱의 사용 흐름, 사용자 인터페이스(UI) 렌더링 시간, 중앙처리장치 사용량, 메모리 사용량, 네트워크 응답시간, 및 크래시 중 적어도 하나를 제공하는 단계를 포함하는 앱 테스트 방법.The method of claim 7,
The step of providing the driving situation of the app,
Providing at least one of the usage flow, user interface (UI) rendering time, central processing unit usage, memory usage, network response time, and crash of the detailed items corresponding to the driving situation.
상기 앱의 구동 상황을 제공하는 단계는,
상기 구동 상황에 대응되는 세부 항목들 중에서 적어도 일부를 선택받는 단계; 및
상기 선택받은 세부 항목에 대한 정보를 제공하는 단계를 더 포함하는 앱 테스트 방법.The method of claim 9,
The step of providing the driving situation of the app,
Receiving at least some of the detailed items corresponding to the driving situation; And
And providing information on the selected detail item.
상기 앱 테스트를 위한 상기 구동 조건과 상기 구동 상황에 대한 정보를 매칭시켜 저장하는 단계를 더 포함하는 앱 테스트 방법.The method of claim 10,
And matching and storing the information about the driving condition and the driving condition for testing the app.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180044405A KR102096085B1 (en) | 2018-04-17 | 2018-04-17 | Apparatus and method for monitoring application |
JP2018097009A JP7170256B2 (en) | 2018-04-17 | 2018-05-21 | App performance monitoring device and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180044405A KR102096085B1 (en) | 2018-04-17 | 2018-04-17 | Apparatus and method for monitoring application |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190120983A KR20190120983A (en) | 2019-10-25 |
KR102096085B1 true KR102096085B1 (en) | 2020-04-01 |
Family
ID=68341519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180044405A KR102096085B1 (en) | 2018-04-17 | 2018-04-17 | Apparatus and method for monitoring application |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7170256B2 (en) |
KR (1) | KR102096085B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102173137B1 (en) * | 2020-06-15 | 2020-11-03 | 주식회사 바른소프트 | Method for providing remote test service for mobile application |
CN113835967B (en) * | 2021-09-28 | 2024-05-17 | 北京京东拓先科技有限公司 | Monitoring method, monitoring device, electronic equipment and storage medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101522307B1 (en) | 2013-08-14 | 2015-05-21 | 어니컴 주식회사 | System and method for testing application |
WO2017062369A1 (en) * | 2015-10-06 | 2017-04-13 | Netflix, Inc. | Systems and methods for security and risk assessment and testing of applications |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003091435A (en) * | 2001-09-17 | 2003-03-28 | Uhero:Kk | Application monitor computer |
JP2005242988A (en) * | 2004-01-27 | 2005-09-08 | Seiko Epson Corp | Log information management system, service providing system, log information management program, service providing program, log information management method, and service providing method |
JP4841982B2 (en) * | 2006-03-20 | 2011-12-21 | 富士通株式会社 | Performance information collection method, apparatus, and program |
JP2008197988A (en) * | 2007-02-14 | 2008-08-28 | Win The Web:Kk | Application analysis support system and program |
KR20150029184A (en) * | 2013-09-09 | 2015-03-18 | 삼성에스디에스 주식회사 | Techniques for testing applications |
KR101575723B1 (en) * | 2014-05-07 | 2015-12-08 | 어니컴 주식회사 | Device and method for managing application test |
JP2016014980A (en) * | 2014-07-01 | 2016-01-28 | 株式会社日立システムズ | Log acquisition extraction system |
KR20170029675A (en) * | 2015-09-07 | 2017-03-16 | 어니컴 주식회사 | All in one device and method for testing application |
-
2018
- 2018-04-17 KR KR1020180044405A patent/KR102096085B1/en active IP Right Grant
- 2018-05-21 JP JP2018097009A patent/JP7170256B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101522307B1 (en) | 2013-08-14 | 2015-05-21 | 어니컴 주식회사 | System and method for testing application |
WO2017062369A1 (en) * | 2015-10-06 | 2017-04-13 | Netflix, Inc. | Systems and methods for security and risk assessment and testing of applications |
Also Published As
Publication number | Publication date |
---|---|
KR20190120983A (en) | 2019-10-25 |
JP2019185711A (en) | 2019-10-24 |
JP7170256B2 (en) | 2022-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8533691B2 (en) | Managing non-common features for program code translation | |
US20150227452A1 (en) | System and method for testing software applications | |
US9449042B1 (en) | Recommending improvements to and detecting defects within applications | |
US10191838B2 (en) | Method and device for checking influence of deleting cache file, and mobile terminal | |
US20150309916A1 (en) | Remote debugging into mobile web applications across devices | |
CN109408393A (en) | Application testing method, device and equipment and computer readable storage medium | |
US11055209B2 (en) | Application analysis with flexible post-processing | |
CN105487966A (en) | Program testing method, device and system | |
WO2015078294A1 (en) | Kernel module loading method and apparatus | |
CN111581005B (en) | Terminal repairing method, terminal and storage medium | |
CN110990274A (en) | Data processing method, device and system for generating test case | |
JP5684878B2 (en) | Systems and methods for providing compliance inspection and detailed analysis of software applications | |
KR102096085B1 (en) | Apparatus and method for monitoring application | |
CN107391362A (en) | Application testing method, mobile terminal and storage medium | |
CN110134598B (en) | Batch processing method, device and system | |
US20120110383A1 (en) | Method and apparatus for off-line analyzing crashed programs | |
US9158641B2 (en) | Cloud auto-test system, method and non-transitory computer readable storage medium of the same | |
US20210216704A1 (en) | Displaying edits for a user's portion of a shared document | |
US9501390B1 (en) | Enhancing automated mobile application testing | |
US11086867B2 (en) | Excluding search results based on relevance | |
CN105512041A (en) | Method and device for testing application program performance and electronic equipment | |
US11216328B2 (en) | Server, electronic device, and control method thereof | |
CN104598281A (en) | Method for upgrading system of electronic device | |
KR102116395B1 (en) | Apparatus and method for testing application | |
CN106547686B (en) | Product test method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |