WO2015050348A1 - 객체 추출 기반의 어플리케이션 검증 방법 및 그 장치 - Google Patents

객체 추출 기반의 어플리케이션 검증 방법 및 그 장치 Download PDF

Info

Publication number
WO2015050348A1
WO2015050348A1 PCT/KR2014/009127 KR2014009127W WO2015050348A1 WO 2015050348 A1 WO2015050348 A1 WO 2015050348A1 KR 2014009127 W KR2014009127 W KR 2014009127W WO 2015050348 A1 WO2015050348 A1 WO 2015050348A1
Authority
WO
WIPO (PCT)
Prior art keywords
application
extraction
event
verification
search
Prior art date
Application number
PCT/KR2014/009127
Other languages
English (en)
French (fr)
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 주식회사 안랩
Publication of WO2015050348A1 publication Critical patent/WO2015050348A1/ko

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/3604Software analysis for verifying properties of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing

Definitions

  • the present invention relates to a technique for verifying an application (app) mounted and executed on a terminal, and more particularly, UI (User Interface) object recognition after installing and running an app to be analyzed on an emulator provided by a mobile platform.
  • UI User Interface
  • Object extraction-based application verification method and apparatus suitable for dynamically verifying (analyzing) the actual behavior or input / output information of the app by extracting the object area through the method and automatically generating related events and executing the event behavior .
  • mobile apps are loaded (mounted) on a mobile terminal such as a mobile phone, a smart phone, a smart pad, etc., and it is necessary to verify the stability and integrity of these applications.
  • Dynamic analysis of existing mobile apps is performed by automatically performing only the installation, execution, and termination steps of the app in a relatively short time on the emulator, and then recording the behavior of the app voluntarily in the process and calculating the results. (Original Method 1) and a method of generating a random event on a terminal device or an emulator and delivering the result to the app and the system for a long time of 15 to 25 hours, and then confirming the final result. There is).
  • the present invention installs and starts an app (or mobile app) to be analyzed on an emulator provided by the corresponding mobile platform, and then inputs a user from a mobile app to be analyzed by using image recognition techniques such as image object recognition and text object recognition.
  • image recognition techniques such as image object recognition and text object recognition.
  • a process of acquiring a UI object from an app to be analyzed, a process of automatically generating an event for an object area of the acquired UI object, and a process of executing an action of the generated event It provides an object verification-based application verification method comprising a.
  • the UI object of the present invention may include a common UI object and a unique UI object of the app.
  • the UI object of the present invention may include an image object or a text object.
  • the obtaining of the present invention may further include specifying object types of the obtained UI objects, and the generating may generate an event for each object type as the event.
  • a first process of acquiring a UI object and a related screen for an app to be analyzed a second process of selecting a verification target screen from the obtained full screen list, and the verification target screen
  • the method of the present invention includes a sixth process of repeating the third to fifth processes until the search for all the UI objects present in the verification target screen is completed, and all the screens of the full screen list
  • the method may further include a seventh process of repeating the second to sixth processes until the search for the object is completed.
  • the first process of the present invention comprises the steps 1-1 of obtaining a common UI object and each object type from the platform of the app, and obtaining a unique UI object and each object type in an app resource from the app distribution file of the app. It may include a first to second process.
  • the process 1-1 of the present invention may include extracting an image object for a common UI object from the platform, extracting a character or string object for a common UI object from the platform, and extracting the extracted image object. And identifying each object type for character or string objects.
  • the first and second processes of the present invention may include extracting an image object for a unique UI object from the app resource, extracting a text or string object for the unique UI object from the app resource, and extracting the extracted object. It may include a process of identifying each object type for image objects and text or string objects.
  • the method may further include generating a search path that records a screen and an object and storing the search path in an information storage unit.
  • an execution result of the event action may be stored in the information storage unit together with the search path.
  • an information acquisition unit for obtaining a UI object and related screens for the app of the analysis target, and an information storage unit for storing a full screen list of the obtained UI object and the related screens
  • an object discrimination unit for searching for a valid UI object by searching the verification target screen, specifying an object type of the found valid UI object, and generating an event corresponding to the specified object type to execute an event action.
  • an object extraction based application verification apparatus including a control unit.
  • the information acquisition unit of the present invention a common UI extraction unit for extracting a common UI object and each object type from the platform of the app, and a unique UI object in an app resource and each object type from the app distribution file of the app
  • the apparatus may include a UI extractor and a search path estimator configured to identify an entire screen list of screens related to the common UI object and the unique UI object, and to estimate a search path for each object.
  • the search path of the present invention may include a screen and an object search path arranged in a tree structure along the UI path.
  • the common UI extractor of the present invention may extract an image object, a text or string object, and each object type for the common UI object from the platform.
  • the unique UI extractor of the present invention may extract an image object, a text or string object, an extracted image object and a text or string object, and each object type for the unique UI object from the app resource.
  • the object determining unit of the present invention includes a search control unit for commanding an object search for the verification target screen when the app of the analysis target is loaded and executed, and an object search for searching the UI object from the verification target screen according to the command. And a validity verification unit for verifying whether the searched UI object is the valid UI object through the similarity determination, and identifying a valid region by identifying a valid area when the valid UI object is the valid UI object.
  • the controller of the present invention may include an event manager configured to generate an event corresponding to the object type to execute the event action, and generate a search path that records a screen and an object when execution of the event action is completed. It may include a search path storage to store in.
  • the event manager of the present invention may notify the object determination unit of the completion of execution for the next UI object search.
  • the search path storage unit of the present invention may store the execution result of the event action together with the search path in the information storage unit.
  • a method of automatically generating and executing an event for an object area by searching for a UI object from an app to be analyzed, continuously providing effective user interaction and feedback to the app to be verified, and thus all actions of the app ( Event behaviors), which enable highly accurate, useful, and rapid processing of all the features and behaviors of your app by implementing intelligent dynamic analysis that is equivalent to human testing and validating your app. Automation can be realized.
  • the present invention generates and stores a search path for recording the searched screen and the object, thereby enabling the system to recognize that the search and event actions for the related screen and the object has been executed, thereby the same object on the same screen This can effectively prevent duplicate search and event actions for.
  • FIG. 1 is a block diagram of an apparatus for verifying an application based on object extraction according to an embodiment of the present invention.
  • FIG. 2 is a flowchart illustrating a main process of verifying functions and behaviors for each UI object of an application using an object extraction technique according to an exemplary embodiment of the present invention.
  • FIG. 3 is a flowchart illustrating a main process of extracting a common UI object from an app platform according to the present invention.
  • FIG. 4 is a flowchart illustrating a main process of extracting a unique UI object from an app distribution file according to the present invention.
  • FIG. 1 is a block diagram of an apparatus for verifying an application based on object extraction according to an embodiment of the present invention.
  • the apparatus for verifying an application of the present invention includes an information obtaining unit 102, an object determining unit 104, a control unit 106, an information storage unit 108, a verification output control unit 110, and a display unit 112. And the like.
  • the information obtaining unit 102 may include a common UI extracting unit 1022, a unique UI extracting unit 1024, a search path estimating unit 1026, and the like. 1042, an object search unit 1044, a validity verification unit 1046, and the like, and the controller 106 may include an event manager 1062, a search path storage unit 1064, and the like.
  • the information analysis unit 102 when the information analysis unit 102 is loaded (installed) the app (eg, a mobile app) to be analyzed on the emulator provided by the mobile platform, the UI object (common UI object and unique UI object) for the app and A function of acquiring related screens and estimating a search path may be provided.
  • the information acquisition unit 102 may include a common UI extractor 1022, a unique UI extractor 1024, and a search path estimator ( 1026) and the like.
  • the common UI extracting unit 1022 extracts a common UI object from the SDK (application installation file) of the platform of the published app, that is, extracts an image object and a character or string object for the common UI object, and extracts each It may provide a function such as identifying (identifying) the object type for the object and storing it in the information storage unit 108.
  • the common UI may mean a UI commonly provided by the Google Android platform, a UI commonly provided by Apple's iOS platform, and a UI commonly provided by Samsung's Tizen platform. May be pre-extracted from the SDK of the published platform and stored in the information storage unit 108.
  • the unique UI extractor 1024 extracts a unique UI object and each object type in the app resource from the app distribution file of the app when the app to be analyzed is loaded in the emulator, that is, an image object for the unique UI object from the app resource. And extract a character or string object, and identify (identify) the object type for each object and store the information in the information storage unit 108.
  • the native UI refers to a unique UI that is used only (or has) of the corresponding app, and extraction and identification of the unique UI object may be performed through parsing xml and source code.
  • the search path estimator 1026 may display image objects, text or string objects for the common UI object, and screens related to the image objects, text or string objects for the unique UI object transferred from the unique UI extractor 1024.
  • a function of grasping (extracting) a full screen list, estimating a search path of each object, and storing the information in the information storage unit 108 may be provided.
  • the search path may mean, for example, a screen and object search path arranged in a tree structure along the UI path.
  • the extraction of the relevant screens may be performed in such a manner as to deduce only the source file having the screen UI (or GUI) among the entire source files.
  • related screens can be extracted by deducting an activity file in the case of Android and only a form file in the case of Tizen.
  • the information storage unit 108 includes information about image objects and text or string objects for common UI objects, image objects and text or string objects for native UI objects, object types for each object, and related screen information. For example, a full screen list and screen and object search path information are stored.
  • the UI object may mean, for example, an image, an image, a text, and the like
  • the object type may mean, for example, a button, an icon, a logo, an edit box, or the like.
  • the information storage unit 108 may be, for example, a memory in the system or an internal information DB (database).
  • the object determining unit 104 is extracted from the information obtaining unit 102 and is verified from the full screen list stored in the information storage unit 108 (for example, a running screen). May be provided to search for an effective UI object by performing object search.
  • the object determining unit 104 may include a search control unit 1042, an object search unit 1044, and a validator 1046. ) May be included.
  • the navigation controller 1042 commands an object search for a running screen when the app of the analysis target is loaded (installed) and executed on an emulator provided by the mobile platform, that is, generates a search control signal to search for an object search unit 1044. ), Command the search of the next object in the screen when the completion of the event is notified from the controller 106, and execute the search of the object when all analysis work for the analysis target app (eg, the mobile app) is finished. It can provide a function such as terminating.
  • the search control unit 1042 calculates how many objects of the total objects to be verified through the search of the information storage unit 108 are performed each time the execution of the action on the generated user event is completed.
  • the calculation result may be calculated as a percentage of the analysis remaining amount, and the function may be transmitted to the verification output control unit 110 such that the calculated analysis remaining amount may be displayed on the display unit 112 as a percentage.
  • the analysis remaining amount is 10%.
  • the present invention is not limited to expressing the remaining amount of analysis, of course, may also be expressed as a percentage of the analysis execution rate (eg, 90% execution rate).
  • the object search unit 1044 may provide a function such as searching for a UI object (common UI object or a unique UI object) from a running screen, and the UI object information to be searched for may be validated by the validator 1046. Is delivered to.
  • a UI object common UI object or a unique UI object
  • the validator 1046 verifies (determines) whether the searched UI object is a valid UI object based on a preset reference similarity condition, and validates the valid UI based on the searched object position. Identify the area, and retrieve the object type (e.g., button, icon, logo, edit box, etc.) stored in the information storage unit 108 to identify the identified effective area (specification of the object type) to control unit 106 It can provide a function such as). In this case, whenever the execution of one event action is completed, displaying the analysis remaining amount or the analysis execution rate on the display unit 112 may be performed by the verification worker (or operator). This is to make it possible to recognize the progress in real time.
  • the object type e.g., button, icon, logo, edit box, etc.
  • the validator 1046 may search for the searched image object (UI object) when the matching portion is inserted at least 95% or more on the relevant image stored in the information storage unit 108. ) Is identified as a valid image object to identify the effective area based on the image position, and if the searched UI object is a character (or string), the relevant character (or string is stored in the information storage unit 108) ) And 100% match, the validator 1046 may identify the searched text object (UI object) as a valid text object and identify a valid area based on the corresponding text position.
  • the present invention may perform a procedure of checking whether the searched object is a previously verified object before checking whether the object is a valid UI object. Whether or not the object may be checked through the object searching unit 1044 or the validating unit 1046.
  • the controller 106 may generate an event corresponding to a specific object type to execute an event action, and provide a function of generating a search path that records the searched screen and the object.
  • the event management unit 1062 generates an event (or user event) corresponding to a specified object type (for example, a button, icon, logo, edit box, etc.), that is, generates a user event for each object type, and generates the generated user event. It can provide a function such as executing an action for.
  • the user event may refer to an event that may cause all actions of the app, for example, touch, click, drag, text input, and transition to a tree screen sub screen (child screen). Can be.
  • the event management unit 1062 notifies the search control unit 1042 of the object determination unit 104 of the completion of the event so that the next UI object can be searched on the screen. It can provide a function such as.
  • the search path storage unit 1064 generates a search path that records the screen and the object searched when the event execution is completed, and the generated search path along with the execution result information of the event action to the information storage unit 108. It can provide functions such as storing.
  • the user event may refer to an event that may cause all actions of the app, for example, touch, click, drag, text input, and transition to a tree screen sub screen (child screen). Can be.
  • the search path storage unit 1064 generates a search path (screen and object search path) recording the searched screen and the object and stores the search path (screen and object search path) in the information storage unit 108. This is to systematically recognize (detect) that the execution of the program has been executed, so as to prevent the search and event actions for the same object of the same screen from being repeatedly executed.
  • the verification output control unit 110 generates a verification report for the execution result of the verified event action when all the analysis of the analysis target app (eg mobile app) is finished, and displays the generated verification report ( 112 to provide a function such as display (display).
  • the verification report may include, for example, inter-screen navigation path (inter-screen navigation tree alert) information for object search and verification result information for each event.
  • the verification report may include a verification result list or a verification result graph. It may be generated in the form of and displayed on the display unit 112.
  • the verification output controller 110 may store an information storage unit when an inquiry or inspection request for a result of an app verification task, which was previously executed, is input through an input unit (for example, a touch screen, a keypad, a mouse, etc.) not shown. And search for and retrieve related information from the 108 and display the verification search result on the display unit 112.
  • the verification search result can be provided to other external servers or communication terminals through a network, not shown. (Wired communication terminal or wireless communication terminal) or the like.
  • FIG. 2 is a flowchart illustrating a main process of verifying functions and behaviors for each UI object of an application using an object extraction technique according to an exemplary embodiment of the present invention.
  • the information obtaining unit 102 may generate a UI object (common UI object and unique) for the app.
  • a UI object is obtained (extracted) and an object type is identified (identified) (step 204), which will be described in more detail with reference to FIGS. 3 and 4.
  • FIG. 3 is a flowchart illustrating a main process of extracting a common UI object from an app platform according to the present invention.
  • the common UI extractor 1022 extracts image objects (or image objects) for a common UI object from the platform SDK of an app through an image recognition technique well known in the art, and stores the information storage unit. Store at 108 (steps 302, 304).
  • the common UI extractor 1022 extracts the text or string objects for the common UI object from the platform SDK of the app and stores them in the information storage unit 108 through an image recognition technique well known in the art. Steps 306, 308).
  • the common UI objects may be information that is previously extracted from the platform and stored in the information storage unit 108 before loading the analysis target app.
  • the common UI extractor 1022 identifies (identifies) each object type for the extracted image object and text or string objects, and stores the identification result of the object type in the information storage unit 108 (step). 310, 312).
  • the type identification of the common UI object may be performed through parsing xml and source code.
  • an image object for a common UI object is first extracted and then a character or string object is extracted.
  • the present invention is not necessarily limited thereto, and the order of the common UI object is reversed. Of course, you can change the extraction of the dragon's character or string object first and then the image object later.
  • FIG. 4 is a flowchart illustrating a main process of extracting a unique UI object from an app distribution file according to the present invention.
  • the unique UI extractor 1024 extracts and stores image objects for a unique UI object in an app resource from an app distribution file of an analysis target app through an image recognition technique well known in the art. Stored in section 108 (steps 402, 404).
  • the unique UI extractor 1024 extracts the text or string objects for the unique UI object in the app resource from the app distribution file of the app to be analyzed using an image recognition technique well known in the art, and stores the information storage unit ( 108) (steps 406 and 408).
  • the unique UI extracting unit 1024 identifies (identifies) each object type of the extracted image object and the text or string object, and stores the identification result of the object type in the information storage unit 108 (step 410, 412).
  • the type identification of the unique UI object may be performed through parsing of xml and source code.
  • an image object for a unique UI object is first extracted and then a character or string object is extracted.
  • the present invention is not necessarily limited thereto, and the order of the unique UI object is reversed. Of course, you can change the extraction of the dragon's character or string object first and then the image object later.
  • the search path estimator 1026 uses the image object, character or string object for the common UI object, and the image object, character or string for the unique UI object transferred from the unique UI extractor 1024. Based on the screens related to the object, the entire screen list is identified (extracted), and the screen and the object search path arranged in a tree structure along the search path, for example, the UI path, are estimated and stored in the information storage unit 108 (step). 206).
  • the object search unit 1044 searches for the object from the screen being executed (i.e., the verification target screen) according to the control command from the search control unit 1042 (steps 208 and 210), and validates when the object is searched.
  • the block 1046 checks whether the searched UI object is a valid UI object based on a preset reference similarity condition (step 212).
  • the searched image object when the searched UI object is an image, the searched image object (UI object) is regarded as a valid image object when at least 95% or more of a matching portion is substituted on a related image stored in the information storage unit 108. Judging (verification), and if the searched UI object is a character (or string), the character object (UI) when the character object matches 100% with the relevant character (or string) object stored in the information storage unit 108 Object) can be determined (validated) as a valid character object.
  • step 210 when the object is searched in step 210, it has been described as checking whether the object is a valid UI object in step 212. However, checking whether the searched object is a valid UI object
  • the process of checking whether the object searched before i.e. before step 212) is a previously verified object (i.e., to prevent duplication of verification) is performed first.
  • the object search unit 1044 or the validator 1046 may be performed to determine whether the.
  • step 212 if it is determined that the searched UI object is an invalid object, the process returns to step 210 described above and repeats the subsequent process.
  • the validator 1046 identifies a valid area based on the searched object position, and for the identified valid area
  • the detected object type eg, button, icon, logo, edit box, etc.
  • the event manager 1062 In response, the event manager 1062 generates an event (or user event) corresponding to the object type (e.g., button, icon, logo, edit box, etc.), that is, generates a user event for each object type, and generates the generated user. Run the action on the event (step 216).
  • the event may mean, for example, touch, click, drag, text input, or the like, to switch to a sub-screen (child screen) of a tree structure.
  • the search path storage unit 1064 When the execution of the generated event is completed, the search path storage unit 1064 generates a search path that records the searched screen and the object, and stores the generated search path along with the execution result information of the event action. Store at 108 (step 218).
  • the event management unit 1062 may notify the search control unit 1042 of completion of the event so that the next UI object can be searched.
  • generating and storing a search path that records the searched screen and the object may be performed by systematically recognizing that the search and the event action of the related screen and the object have been executed, thereby searching for the same object on the same screen. And to prevent an event action from being executed repeatedly.
  • step 220 it is checked whether the search for all the UI objects of the running screen (the verification target screen) is completed. If it is determined that the search for all the UI objects of the verification target screen is not completed, the process is performed. The process returns to step 210 described above to repeat the subsequent steps. That is, in the present embodiment, by repeating the process of steps 210 to 220, the search, validation and event execution for all UI objects on one screen are completed.
  • step 222 it is checked whether object search for all screens in the full screen list is completed. If it is determined that object search for all screens is not completed, the process proceeds to step 208 described above. The process then returns to and repeats the subsequent steps. That is, in the present embodiment, by repeating the process of steps 208 to 222, object search, event generation and execution for all screens in the full screen list are completed.
  • step 222 If it is determined in step 222 that the object search is completed on all screens, the execution of the verification mode in the emulator is terminated (step 224), and the verification output controller 110 then performs an app (eg, an analysis target).
  • the mobile terminal may generate an analysis result (ie, a verification result list or a verification result graph, etc.) of the analysis result, that is, the execution result of the verified event action, and display (display) the display unit 112.
  • the embodiment of the present invention has been described as an example applied to the mobile platform-based app dynamic analysis field, the present invention is not necessarily limited to this, more intelligent and automated such as embedded platform such as web platform, smart TV, etc. Of course, it can be applied to various platform-based application verification (analysis) fields that require testing.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명에 따른 객체 추출 기반의 어플리케이션 검증 장치는, 분석 대상의 어플리케이션에 대한 UI 객체 및 관련 화면들을 획득하는 정보 획득부와, 획득된 상기 UI 객체와 상기 관련 화면들에 대한 전체 화면 목록을 저장하는 정보 저장부와, 검증 대상 화면을 탐색하여 유효 UI 객체를 탐색하고, 탐색된 상기 유효 UI 객체에 대한 객체 유형을 특정하는 객체 판별부와, 특정된 상기 객체 유형에 상응하는 이벤트를 생성하여 이벤트 행위를 실행시키는 제어부를 포함할 수 있다.

Description

객체 추출 기반의 어플리케이션 검증 방법 및 그 장치
본 발명은 단말에 탑재되어 실행되는 어플리케이션(앱)을 검증하는 기법에 관한 것으로, 더욱 상세하게는 분석하고자 하는 앱을 모바일 플랫폼에서 제공하는 에뮬레이터 상에 설치하여 가동시킨 후 UI(User Interface) 객체 인식 기법을 통해 객체 영역을 추출하여 관련 이벤트를 자동 생성하고 이벤트 행위를 실행시켜 앱의 실제적인 행위나 입출력 정보를 동적으로 검증(분석)하는 데 적합한 객체 추출 기반의 어플리케이션 검증 방법 및 그 장치에 관한 것이다.
일반적으로, 휴대폰, 스마트폰, 스마트패드 등과 같은 모바일 단말에는 수많은 종류의 어플리케이션(모바일 앱)들이 로딩(탑재)되는데, 이러한 어플리케이션에 대한 안정성과 무결성을 검증하는 것이 필요하다.
기존의 모바일 앱을 동적으로 분석하는 방법으로는 에뮬레이터 상에서 비교적 짧은 시간 내에 앱의 설치 및 실행과 종료 단계만을 자동으로 수행한 후 이 과정에서 앱이 자발적으로 수행하는 행위를 기록하여 결과를 산출하는 방법(종래 방법1)과, 단말 장치 또는 에뮬레이터 상에서 무작위로 이벤트를 생성한 후 앱 및 시스템에 전달하여 발생하는 결과를 15~25 시간이라는 장시간에 걸쳐 모니터링한 후 최종 결과를 확인하는 방법(종래 방법2)이 있다.
종래 방법1의 경우, 동적 분석을 위한 일련의 과정들을 자동화하는 데는 효과가 있으나 앱의 행위 분석 방법 자체가 수동적이기 때문에 앱 실행 후 초기에 이루어지는 소수의 행위에만 전적으로 의존해야 한다는 치명적인 단점이 있으며, 사용자가 앱을 사용함에 따라 연관되어 발생되는 앱의 일반적인 기능 및 행위는 대부분 검증을 하지 못하는 단점을 갖는다.
종래 방법2의 경우, 임의의 좌표에 불특정한 난수 이벤트를 생성하여 무작위로 시험하는데, 이러한 방법은 앱의 유효한 행위를 이끌어내기가 어렵고, 이를 확률적으로 보완하기 위하여 상당히 긴 시험 시간을 필요로 하기 때문에 앱 분석 및 검증 방법으로 사용하기에는 매우 비효율적이며, 특정 앱이 지닌 구체적인 행위를 분석하고자 할 때에는 더욱 부적절한 방법이라 할 수 있다.
본 발명은 분석 대상인 앱(또는 모바일 앱)을 해당 모바일 플랫폼에서 제공하는 에뮬레이터 상에 설치하여 기동시킨 후 이미지 객체 인식, 문자 객체 인식 등의 영상 인식 기법을 활용하여 분석 대상이 되는 모바일 앱으로부터 사용자 입력을 받을 수 있는 객체 영역을 식별하고 그 객체 영역에 사용자 이벤트를 자동으로 생성시켜 그 행위를 실행시킴으로써, 해당 앱을 사람이 직접 사용하는 것과 유사하게 동작시켜 앱의 안정성과 무결성을 효과적으로 검증(분석)할 수 있는 새로운 에뮬레이터 기반의 앱 동적 분석 기법을 제공하고자 한다.
본 발명은, 일 관점에 따라, 분석 대상의 앱으로부터 UI 객체를 획득하는 과정과, 획득된 상기 UI 객체의 객체 영역에 대한 이벤트를 자동 생성하는 과정과, 생성된 상기 이벤트의 행위를 실행시키는 과정을 포함하는 객체 추출 기반의 어플리케이션 검증 방법을 제공한다.
본 발명의 상기 UI 객체는, 상기 앱의 공통 UI 객체와 고유 UI 객체를 포함할 수 있다.
본 발명의 상기 UI 객체는, 이미지 객체 또는 문자 객체를 포함할 수 있다.
본 발명의 상기 획득하는 과정은, 획득된 UI 객체들에 대한 객체 유형을 특정하는 과정을 더 포함하고, 상기 생성하는 과정은, 객체 유형별 이벤트를 상기 이벤트로서 생성할 수 있다.
본 발명은, 다른 관점에 따라, 분석 대상의 앱에 대한 UI 객체 및 관련 화면을 획득하는 제 1 과정과, 획득된 전체 화면 목록으로부터 검증 대상 화면을 선택하는 제 2 과정과, 상기 검증 대상 화면으로부터 UI 객체를 탐색하여 기 설정된 기준 유사도 조건을 충족시키는 유효 UI 객체인지의 여부를 체크하는 제 3 과정과, 상기 유효 UI 객체일 때 해당 객체가 위치한 객체 영역을 유효 영역으로 식별하여 기 파악된 객체 유형을 특정하는 제 4 과정과, 특정된 상기 객체 유형에 상응하는 이벤트를 생성하여 이벤트 행위를 실행시키는 제 5 과정을 포함하는 객체 추출 기반의 어플리케이션 검증 방법을 제공한다.
본 발명의 상기 방법은, 상기 검증 대상 화면에 존재하는 모든 UI 객체에 대한 탐색이 완료될 때까지 상기 제 3 과정 내지 제 5 과정을 반복 수행하는 제 6 과정과, 상기 전체 화면 목록의 모든 화면에 대한 객체 탐색이 완료될 때까지 상기 제 2 과정 내지 제 6 과정을 반복 수행하는 제 7 과정을 더 포함할 수 있다.
본 발명의 상기 제 1 과정은, 상기 앱의 플랫폼으로부터 공통 UI 객체와 각 객체 유형을 획득하는 제 1-1 과정과, 상기 앱의 앱 배포 파일로부터 앱 리소스 내의 고유 UI 객체와 각 객체 유형을 획득하는 제 1-2 과정을 포함할 수 있다.
본 발명의 상기 제 1-1 과정은, 상기 플랫폼으로부터 공통 UI 객체용의 이미지 객체를 추출하는 과정과, 상기 플랫폼으로부터 공통 UI 객체용의 문자 또는 문자열 객체를 추출하는 과정과, 추출된 상기 이미지 객체와 문자 또는 문자열 객체들에 대한 각 객체 유형을 식별하는 과정을 포함할 수 있다.
본 발명의 상기 제 1-2 과정은, 상기 앱 리소스로부터 고유 UI 객체용의 이미지 객체를 추출하는 과정과, 상기 앱 리소스로부터 고유 UI 객체용의 문자 또는 문자열 객체를 추출하는 과정과, 추출된 상기 이미지 객체와 문자 또는 문자열 객체들에 대한 각 객체 유형을 식별하는 과정을 포함할 수 있다.
본 발명의 상기 방법은, 상기 이벤트 행위의 실행이 완료될 때, 화면과 객체를 기록한 탐색 경로를 생성하여 정보 저장부에 저장하는 과정을 더 포함할 수 있다.
본 발명의 상기 저장하는 과정은, 상기 이벤트 행위의 실행 결과를 상기 탐색 경로와 함께 상기 정보 저장부에 저장할 수 있다.
본 발명은, 또 다른 관점에 따라, 분석 대상의 앱에 대한 UI 객체 및 관련 화면들을 획득하는 정보 획득부와, 획득된 상기 UI 객체와 상기 관련 화면들에 대한 전체 화면 목록을 저장하는 정보 저장부와, 검증 대상 화면을 탐색하여 유효 UI 객체를 탐색하고, 탐색된 상기 유효 UI 객체에 대한 객체 유형을 특정하는 객체 판별부와, 특정된 상기 객체 유형에 상응하는 이벤트를 생성하여 이벤트 행위를 실행시키는 제어부를 포함하는 객체 추출 기반의 어플리케이션 검증 장치를 제공한다.
본 발명의 상기 정보 획득부는, 상기 앱의 플랫폼으로부터 공통 UI 객체와 각 객체 유형을 추출하는 공통 UI 추출부와, 상기 앱의 앱 배포 파일로부터 앱 리소스 내의 고유 UI 객체와 각 객체 유형을 추출하는 고유 UI 추출부와, 상기 공통 UI 객체 및 고유 UI 객체와 관련된 화면들에 대한 전체 화면 목록을 파악하고, 각 객체에 대한 탐색 경로를 추정하는 탐색 경로 추정부를 포함할 수 있다.
본 발명의 상기 탐색 경로는, UI 경로를 따라 트리 구조로 배열되는 화면 및 객체 탐색 경로를 포함할 수 있다.
본 발명의 상기 공통 UI 추출부는, 상기 플랫폼으로부터 상기 공통 UI 객체용의 이미지 객체와 문자 또는 문자열 객체 및 각 객체 유형을 추출할 수 있다.
본 발명의 상기 고유 UI 추출부는, 상기 앱 리소스로부터 고유 UI 객체용의 이미지 객체, 문자 또는 문자열 객체, 추출된 이미지 객체와 문자 또는 문자열 객체 및 각 객체 유형을 추출할 수 있다.
본 발명의 상기 객체 판별부는, 상기 분석 대상의 앱이 로딩되어 실행될 때 상기 검증 대상 화면에 대한 객체 탐색을 지령하는 탐색 제어부와, 상기 지령에 따라 상기 검증 대상 화면으로부터 상기 UI 객체를 탐색하는 객체 탐색부와, 유사도 판단을 통하여 탐색된 상기 UI 객체가 상기 유효 UI 객체인지를 검증하고, 상기 유효 UI 객체일 때 유효 영역을 식별하여 기 파악된 객체 유형을 특정하는 유효성 검증부를 포함할 수 있다.
본 발명의 상기 제어부는, 상기 객체 유형에 상응하는 이벤트를 생성하여 상기 이벤트 행위를 실행시키는 이벤트 관리부와, 상기 이벤트 행위의 실행이 완료될 때 화면과 객체를 기록한 탐색 경로를 생성하여 상기 정보 저장부에 저장하는 탐색 경로 저장부를 포함할 수 있다.
본 발명의 상기 이벤트 관리부는, 상기 이벤트 행위에 대한 실행이 완료될 때 다음 UI 객체의 탐색을 위해 그 실행 완료를 상기 객체 판별부로 통지할 수 있다.
본 발명의 상기 탐색 경로 저장부는, 상기 이벤트 행위의 실행 결과를 상기 탐색 경로와 함께 상기 정보 저장부에 저장할 수 있다.
본 발명은, 분석 대상의 앱으로부터 UI 객체를 탐색하여 객체 영역에 대한 이벤트를 자동 생성 및 실행시키는 기법을 통해, 검증 대상 앱에 유효한 사용자 인터액션과 피드백을 지속적으로 제공함으로써 해당 앱이 지닌 모든 행위(이벤트 행위)를 유발시킬 수 있으며, 이를 통해 사람이 직접 앱을 시험하고 검증하는 것과 동일하게 지능화된 동적 분석을 구현함으로써 앱이 갖는 모든 기능 및 행위에 대해 매우 정밀하고 유용하면서도 신속 처리가 가능한 동적 검증 자동화를 실현할 수 있다.
또한, 본 발명은 탐색된 화면과 객체를 기록한 탐색 경로를 생성하여 저장하고, 이를 통해 관련 화면과 객체에 대한 탐색 및 이벤트 행위가 실행되었음이 시스템적으로 인식될 수 있도록 함으로써, 동일 화면의 동일 객체에 대한 탐색 및 이벤트 행위가 중복하여 실행되는 것을 효과적으로 방지할 수 있다.
도 1은 본 발명의 실시 예에 따른 객체 추출 기반의 어플리케이션 검증 장치의 블록구성도이다.
도 2는 본 발명의 실시 예에 따라 객체 추출 기법을 이용하여 어플리케이션의 각 UI 객체별 기능 및 행위를 검증하는 주요 과정을 도시한 순서도이다.
도 3은 본 발명에 따라 앱 플랫폼으로부터 공통 UI 객체를 추출하는 주요 과정을 도시한 순서도이다.
도 4는 본 발명에 따라 앱 배포 파일로부터 고유 UI 객체를 추출하는 주요 과정을 도시한 순서도이다.
먼저, 본 발명의 장점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되는 실시 예들을 참조하면 명확해질 것이다. 여기에서, 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 발명의 범주를 명확하게 이해할 수 있도록 하기 위해 예시적으로 제공되는 것이므로, 본 발명의 기술적 범위는 청구항들에 의해 정의되어야 할 것이다.
아울러, 아래의 본 발명을 설명함에 있어서 공지 기능 또는 구성 등에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들인 것으로, 이는 사용자, 운용자 등의 의도 또는 관례 등에 따라 달라질 수 있음은 물론이다. 그러므로, 그 정의는 본 명세서의 전반에 걸쳐 기술되는 기술사상을 토대로 이루어져야 할 것이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예에 대하여 상세하게 설명한다.
도 1은 본 발명의 실시 예에 따른 객체 추출 기반의 어플리케이션 검증 장치의 블록구성도이다.
도 1을 참조하면, 본 발명의 어플리케이션 검증 장치는 정보 획득부(102), 객체 판별부(104), 제어부(106), 정보 저장부(108), 검증 출력 제어부(110) 및 표시부(112) 등을 포함할 수 있다. 여기에서, 정보 획득부(102)는 공통 UI 추출부(1022), 고유 UI 추출부(1024) 및 탐색 경로 추정부(1026) 등을 포함할 수 있고, 객체 판별부(104)는 탐색 제어부(1042), 객체 탐색부(1044) 및 유효성 검증부(1046) 등을 포함할 수 있으며, 제어부(106)는 이벤트 관리부(1062) 및 탐색 경로 저장부(1064) 등을 포함할 수 있다.
먼저, 정보 획득부(102)는 모바일 플랫폼에서 제공하는 에뮬레이터 상에 분석 대상의 앱(예컨대, 모바일 앱)이 로딩(설치)되면, 해당 앱에 대한 UI 객체(공통 UI 객체 및 고유 UI 객체) 및 관련 화면들을 획득하고, 탐색 경로를 추정하는 등의 기능을 제공할 수 있는데, 이를 위해 정보 획득부(102)는 공통 UI 추출부(1022), 고유 UI 추출부(1024) 및 탐색 경로 추정부(1026) 등을 포함할 수 있다.
여기에서, 공통 UI 추출부(1022)는 공개된 앱의 플랫폼의 SDK(어플리케이션 설치 파일)로부터 공통 UI 객체를 추출, 즉 공통 UI 객체용의 이미지 객체와 문자 또는 문자열 객체를 추출하고, 추출된 각 객체에 대한 객체 유형을 파악(식별)하여 정보 저장부(108)로 저장하는 등의 기능을 제공할 수 있다. 일례로서, 공통 UI는 구글 안드로이드 플랫폼에서 공통으로 제공하는 UI, 애플의 iOS 플랫폼에서 공통으로 제공하는 UI, 삼성전자의 타이젠 플랫폼에서 공통으로 제공하는 UI 등을 의미할 수 있는데, 이러한 공통 UI 객체는 공개된 플랫폼의 SDK로부터 미리 추출되어 정보 저장부(108)에 저장되어 있을 수 있다.
그리고, 고유 UI 추출부(1024)는 분석 대상의 앱이 에뮬레이터에 로딩될 때 앱의 앱 배포 파일로부터 앱 리소스 내의 고유 UI 객체 및 각 객체 유형을 추출, 즉 앱 리소스로부터 고유 UI 객체용의 이미지 객체와 문자 또는 문자열 객체를 추출하고, 각 객체에 대한 객체 유형을 파악(식별)하여 정보 저장부(108)로 저장하는 등의 기능을 제공할 수 있다. 여기에서, 고유 UI는 해당 앱에서만 사용하는(혹은 가지고 있는) 고유의 UI를 의미하고, 고유 UI 객체의 추출 및 유형 파악은 xml 및 소스 코드의 파싱을 통해 수행될 수 있다.
또한, 탐색 경로 추정부(1026)는 공통 UI 객체용의 이미지 객체, 문자 또는 문자열 객체와 고유 UI 추출부(1024)로부터 전달되는 고유 UI 객체용의 이미지 객체, 문자 또는 문자열 객체와 관련된 화면들에 의거하여 전체 화면 목록을 파악(추출)하고, 각 객체의 탐색 경로를 추정하여 정보 저장부(108)에 저장하는 등의 기능을 제공할 수 있다. 여기에서, 탐색 경로는, 예컨대 UI 경로를 따라 트리 구조로 배열되는 화면 및 객체 탐색 경로를 의미할 수 있다. 여기에서, 관련 화면들의 추출은 전체 소스 파일들 중 화면 UI(또는 GUI)를 갖는 소스 파일만을 추림하는 방식으로 수행될 수 있다. 예컨대, 안드로이드의 경우에는 activity 파일을, 타이젠의 경우에는 form 파일만을 추림하는 방식으로 관련 화면들을 추출할 수 있다.
즉, 정보 저장부(108)에는 공통 UI 객체용의 이미지 객체와 문자 또는 문자열 객체들에 대한 정보들, 고유 UI 객체용의 이미지 객체와 문자 또는 문자열 객체, 각 객체별의 객체 유형, 관련 화면 정보들, 전체 화면 목록과 화면 및 객체 탐색 경로 정보들이 저장된다. 여기에서, UI 객체는, 예컨대 영상, 이미지, 문자 등을 의미할 수 있으며, 객체 유형은, 예컨대 버튼, 아이콘, 로고, 편집 박스 등을 의미할 수 있다. 이러한 정보 저장부(108)는, 예컨대 시스템 내부의 메모리이거나 혹은 내부의 정보 DB(데이터베이스) 등이 될 수 있다.
다음에, 객체 판별부(104)는 에뮬레이터에 로딩된 앱이 실행될 때 정보 획득부(102)를 통해 추출되어 정보 저장부(108)에 저장된 전체 화면 목록으로부터 검증 대상 화면(예컨대, 실행 중인 화면)을 선택하여 객체 탐색을 수행함으로써 유효 UI 객체를 판별하는 등의 기능을 제공할 수 있는데, 이를 위해 객체 판별부(104)는 탐색 제어부(1042), 객체 탐색부(1044) 및 유효성 검증부(1046) 등을 포함할 수 있다.
먼저, 탐색 제어부(1042)는 모바일 플랫폼에서 제공하는 에뮬레이터 상에 분석 대상의 앱이 로딩(설치)되어 실행될 때 실행 중인 화면에 대한 객체 탐색을 지령, 즉 탐색 제어신호를 발생하여 객체 탐색부(1044)로 전달하고, 제어부(106)로부터 이벤트의 실행 완료가 통지될 때 화면 내 다음 객체의 탐색을 지령하며, 분석 대상 앱(예컨대, 모바일 앱)에 대한 분석 작업이 모두 종료될 때 객체의 탐색 실행을 종료시키는 등의 기능을 제공할 수 있다.
또한, 탐색 제어부(1042)는 생성된 사용자 이벤트에 대한 행위 실행이 완료될 때마다 정보 저장부(108)의 검색을 통해 검증해야 할 전체 객체 중 어느 정도의 객체에 대한 검증이 이루어졌는지를 계산하고, 그 계산 결과를 분석 잔량 정도의 백분율로서 산출하며, 이 산출된 분석 잔량 정도가 백분율로서 표시부(112)에 표출될 수 있도록 검증 출력 제어부(110)로 전달하는 등의 기능을 제공할 수 있다.
예컨대, 앱에 대한 검증 대상의 총 객체가 200개이고, 현재까지 검증된(이벤트 행위가 실행 완료된) 객체가 180인 것이라고 가정할 때, 분석 잔량 정도가 10%임이 표시부(112)를 통해 표출될 것이다. 물론, 본 발명은 분석 잔량 정도를 표출하는 것으로 한정되는 것은 아니며, 분석 실행율에 대한 백분율(예컨대, 실행율 90%)로서 표출될 수도 있음은 물론이다.
그리고, 객체 탐색부(1044)는 실행 중인 화면으로부터 UI 객체(공통 UI 객체 또는 고유 UI 객체)를 탐색하는 등의 기능을 제공할 수 있는데, 여기에서 탐색되는 UI 객체 정보는 유효성 검증부(1046)로 전달된다.
또한, 유효성 검증부(1046)는 기 설정된 기준 유사도 조건에 의거하여 탐색된 UI 객체가 유효 UI 객체인지의 여부를 검증(판별)하고, 유효 UI 객체로 판별될 때 탐색된 객체 위치를 기반으로 유효 영역을 식별하며, 식별된 유효 영역에 대해 기파악되어 정보 저장부(108)에 저장되어 있는 객체 유형(예컨대 버튼, 아이콘, 로고, 편집 박스 등)을 인출(객체 유형의 특정)하여 제어부(106)로 전달하는 등의 기능을 제공할 수 있다. 여기에서, 하나의 이벤트 행위에 대한 실행이 완료될 때마다 분석 잔량 정도 또는 분석 실행율을 표시부(112)로 표출시켜 주는 것은 검증 작업자(또는 운용자)가 검증 작업이 실행 중인 앱에 대한 검증 작업의 진행 정도를 실시간으로 인지할 수 있도록 하기 위해서이다.
일례로서, 탐색된 UI 객체가 이미지인 경우 정보 저장부(108)에 저장되어 있는 관련 이미지 상에 대입하여 일치하는 부분이 적어도 95% 이상일 때 유효성 검증부(1046)는 탐색된 이미지 객체(UI 객체)를 유효한 이미지 객체로 판별하여 해당 이미지 위치를 기반으로 유효 영역을 식별하고, 탐색된 UI 객체가 문자(또는 문자열)인 경우 문자 객체가 정보 저장부(108)에 저장되어 있는 관련 문자(또는 문자열) 객체와 100% 일치할 때 유효성 검증부(1046)는 탐색된 문자 객체(UI 객체)를 유효한 문자 객체로 판별하여 해당 문자 위치를 기반으로 유효 영역을 식별할 수 있다.
한편, 본 발명은 객체가 탐색되면 해당 객체가 유효 UI 객체인지의 여부를 체크하기 전에 탐색된 객체가 이전에 이미 검증된 객체인지의 여부를 확인하는 절차를 수행할 수 있는데, 이러한 검증 객체인지의 여부 확인은 객체 탐색부(1044) 또는 유효성 검증부(1046)를 통해 수행될 수 있다.
다음에, 제어부(106)는 특정된 객체 유형에 맞는 이벤트를 생성하여 이벤트 행위를 실행시키고, 탐색된 화면과 객체를 기록한 탐색 경로를 생성하는 등의 기능을 제공할 수 있는데, 이를 위해 제어부(106)는 이벤트 관리부(1062) 및 탐색 경로 저장부(1064) 등을 포함할 수 있다.
먼저, 이벤트 관리부(1062)는 특정된 객체 유형(예컨대 버튼, 아이콘, 로고, 편집 박스 등)에 맞는 이벤트(또는 사용자 이벤트)를 생성, 즉 객체 유형별의 사용자 이벤트를 생성하고, 이 생성된 사용자 이벤트에 대한 행위를 실행시키는 등의 기능을 제공할 수 있다. 여기에서, 사용자 이벤트는 해당 앱이 가진 모든 행위를 유발할 수 있는 이벤트를 의미할 수 있는 것으로, 예컨대 터치, 클릭, 드래그, 텍스트 입력, 트리 구조의 서브 화면(자식 화면)으로의 전환 등을 의미할 수 있다.
또한, 이벤트 관리부(1062)는 해당 이벤트 행위에 대한 실행이 완료될 때, 해당 화면에서 다음 UI 객체를 탐색할 수 있도록, 이벤트의 실행 완료를 객체 판별부(104) 내 탐색 제어부(1042)로 통지하는 등의 기능을 제공할 수 있다.
그리고, 탐색 경로 저장부(1064)는 이벤트 실행이 완료될 때 탐색된 화면과 객체를 기록한 탐색 경로를 생성하고, 이 생성된 탐색 경로를 이벤트 행위의 실행 결과 정보와 함께 정보 저장부(108)에 저장하는 등의 기능을 제공할 수 있다. 여기에서, 사용자 이벤트는 해당 앱이 가진 모든 행위를 유발할 수 있는 이벤트를 의미할 수 있는 것으로, 예컨대 터치, 클릭, 드래그, 텍스트 입력, 트리 구조의 서브 화면(자식 화면)으로의 전환 등을 의미할 수 있다.
이때, 탐색 경로 저장부(1064)가 탐색된 화면과 객체를 기록한 탐색 경로(화면 및 객체 탐색 경로)를 생성하여 정보 저장부(108)에 저장하는 것은, 관련 화면과 객체에 대한 탐색 및 이벤트 행위가 실행되었음이 시스템적으로 인식(파악)됨으로써, 동일 화면의 동일 객체에 대한 탐색 및 이벤트 행위가 중복하여 실행되는 것을 방지하기 위해서이다.
한편, 검증 출력 제어부(110)는 분석 대상의 앱(예컨대, 모바일 앱)에 대한 분석이 모두 종료될 때 검증된 이벤트 행위의 실행 결과에 대한 검증 보고서를 생성하고, 이 생성된 검증 보고서를 표시부(112)로 전달하여 표출(디스플레이)시키는 등의 기능을 제공할 수 있다. 여기에서, 검증 보고서는, 예컨대 객체 탐색을 위한 화면 간 탐색 경로(화면 간 탐색 트리 경보) 정보와 각 이벤트별의 검증 결과 정보들을 포함할 수 있는데, 이러한 검증 보고서는 검증 결과 리스트 또는 검증 결과 그래프 등의 형태로 생성되어 표시부(112)에 표출될 수 있다.
또한, 검증 출력 제어부(110)는 도시 생략된 입력 수단(예컨대, 터치스크린, 키패드, 마우스 등)을 통해 이전에 실행되었던 앱 검증 작업의 결과에 대한 조회 또는 검사 요청 등이 입력될 때 정보 저장부(108)로부터 관련 정보들을 검색 및 인출하여 그 검증 검색 결과를 표시부(112)로 표출시키는 등의 기능을 제공할 수 있으며, 검증 검색 결과를 도시 생략된 네트워크 등을 통해 외부의 다른 서버 혹은 통신 단말(유선 통신 단말 또는 무선 통신 단말) 등으로 전송할 수도 있다.
다음에, 상술한 바와 같은 구성을 갖는 본 발명의 어플리케이션 검증 장치를 통해 객체 추출 기반이 어플리케이션 분석(검증) 서비스를 제공하는 일련의 과정들에 대하여 상세하게 설명한다.
도 2는 본 발명의 실시 예에 따라 객체 추출 기법을 이용하여 어플리케이션의 각 UI 객체별 기능 및 행위를 검증하는 주요 과정을 도시한 순서도이다.
도 2를 참조하면, 모바일 플랫폼에서 제공하는 에뮬레이터 상에 분석 대상의 앱이 로딩(설치)되어 실행되면(단계 202), 정보 획득부(102)에서는 해당 앱에 대한 UI 객체(공통 UI 객체 및 고유 UI 객체)를 획득(추출)하고 객체 유형을 파악(식별)하는데(단계 204), 이에 대해서는 도 3 및 도 4를 참조하면 보다 상세하게 설명한다.
도 3은 본 발명에 따라 앱 플랫폼으로부터 공통 UI 객체를 추출하는 주요 과정을 도시한 순서도이다.
도 3을 참조하면, 공통 UI 추출부(1022)에서는, 이 기술 분야에 잘 알려진 영상 인식 기법을 통해, 앱의 플랫폼 SDK로부터 공통 UI 객체용의 이미지 객체(또는 영상 객체)들을 추출하여 정보 저장부(108)에 저장한다(단계 302, 304).
이어서, 공통 UI 추출부(1022)에서는, 이 기술 분야에 잘 알려진 영상 인식 기법을 통해, 앱의 플랫폼 SDK로부터 공통 UI 객체용의 문자 또는 문자열 객체들을 추출하여 정보 저장부(108)에 저장한다(단계 306, 308). 여기에서, 공통 UI 객체들은 분석 대상 앱의 로딩 이전에 플랫폼으로부터 미리 추출되어 정보 저장부(108)에 저장되어 있는 정보일 수 있다.
다시, 공통 UI 추출부(1022)에서는 추출된 이미지 객체와 문자 또는 문자열 객체들에 대한 각 객체 유형을 식별(파악)하고, 그 객체 유형의 식별 결과를 정보 저장부(108)에 저장한다(단계 310, 312). 여기에서, 공통 UI 객체의 유형 파악은 xml 및 소스 코드의 파싱을 통해 수행될 수 있다.
한편, 도 3을 참조한 본 실시 예에서는 공통 UI 객체용의 이미지 객체를 먼저 추출한 후 문자 또는 문자열 객체를 추출하는 것으로 하여 설명하였으나, 본 발명이 반드시 이에 한정되는 것은 아니며, 그 순서를 바꾸어 공통 UI 객체용의 문자 또는 문자열 객체를 먼저 추출한 후 이미지 객체를 나중에 추출하도록 변경 설정할 수도 있음은 물론이다.
도 4는 본 발명에 따라 앱 배포 파일로부터 고유 UI 객체를 추출하는 주요 과정을 도시한 순서도이다.
도 4를 참조하면, 고유 UI 추출부(1024)에서는, 이 기술 분야에 잘 알려진 영상 인식 기법을 통해, 분석 대상 앱의 앱 배포 파일로부터 앱 리소스 내의 고유 UI 객체용의 이미지 객체들을 추출하여 정보 저장부(108)에 저장한다(단계 402, 404).
이어서, 고유 UI 추출부(1024)에서는, 이 기술 분야에 잘 알려진 영상 인식 기법을 통해, 분석 대상 앱의 앱 배포 파일로부터 앱 리소스 내의 고유 UI 객체용의 문자 또는 문자열 객체들을 추출하여 정보 저장부(108)에 저장한다(단계 406, 408).
다시, 고유 UI 추출부(1024)에서는 추출된 이미지 객체와 문자 또는 문자열 객체의 각 객체 유형을 식별(파악)하고, 그 객체 유형의 식별 결과를 정보 저장부(108)에 저장한다(단계 410, 412). 여기에서, 고유 UI 객체의 유형 파악은 xml 및 소스 코드의 파싱을 통해 수행될 수 있다.
한편, 도 4를 참조한 본 실시 예에서는 고유 UI 객체용의 이미지 객체를 먼저 추출한 후 문자 또는 문자열 객체를 추출하는 것으로 하여 설명하였으나, 본 발명이 반드시 이에 한정되는 것은 아니며, 그 순서를 바꾸어 고유 UI 객체용의 문자 또는 문자열 객체를 먼저 추출한 후 이미지 객체를 나중에 추출하도록 변경 설정할 수도 있음은 물론이다.
다시, 도 2를 참조하면, 탐색 경로 추정부(1026)에서는 공통 UI 객체용의 이미지 객체, 문자 또는 문자열 객체와 고유 UI 추출부(1024)로부터 전달되는 고유 UI 객체용의 이미지 객체, 문자 또는 문자열 객체와 관련된 화면들에 의거하여 전체 화면 목록을 파악(추출)하고, 탐색 경로, 예컨대 UI 경로를 따라 트리 구조로 배열되는 화면 및 객체 탐색 경로를 추정하여 정보 저장부(108)에 저장한다(단계 206).
다음에, 객체 탐색부(1044)에서는 탐색 제어부(1042)로부터의 제어 지령에 따라 실행 중인 화면(즉, 검증 대상 화면)으로부터 객체를 탐색하고(단계 208, 210), 객체가 탐색될 때 유효성 검증부(1046)에서는 기 설정된 기준 유사도 조건에 의거하여 탐색된 UI 객체가 유효 UI 객체인지의 여부를 체크한다(단계 212).
일례로서, 탐색된 UI 객체가 이미지인 경우 정보 저장부(108)에 저장되어 있는 관련 이미지 상에 대입하여 일치하는 부분이 적어도 95% 이상일 때 탐색된 이미지 객체(UI 객체)를 유효한 이미지 객체인 것으로 판단(검증)하고, 탐색된 UI 객체가 문자(또는 문자열)인 경우 해당 문자 객체가 정보 저장부(108)에 저장되어 있는 관련 문자(또는 문자열) 객체와 100% 일치할 때 해당 문자 객체(UI 객체)를 유효한 문자 객체인 것으로 판단(검증)할 수 있다.
한편, 본 실시 예에서는 상기한 단계(210)에서 객체가 탐색되면 단계(212)에서 해당 객체가 유효 UI 객체인지의 여부를 체크하는 것으로 하여 설명하였으나, 탐색된 객체가 유효 UI 객체인지를 체크하기 이전(즉, 212 단계 이전)에 탐색된 객체가 이전에 이미 검증된 객체인지의 여부를 확인하는 과정(즉, 검증의 중복을 방지하기 위한 과정)을 먼저 수행하는 것은 물론이며, 이러한 검증 객체인지의 여부 확인은 객체 탐색부(1044) 또는 유효성 검증부(1046)가 수행할 수 있다.
상기 단계(212)에서의 판단 결과, 탐색된 UI 객체가 유효하지 않은 객체인 것으로 판단되면, 처리는 전술한 단계(210)로 되돌아가 그 이후의 과정을 반복 수행하게 된다.
상기 단계(212)에서의 판단 결과, 탐색된 UI 객체가 유효 UI 객체인 것으로 판단되면, 유효성 검증부(1046)에서는 탐색된 객체 위치를 기반으로 유효 영역을 식별하고, 이 식별된 유효 영역에 대해 기파악된 객체 유형(예컨대 버튼, 아이콘, 로고, 편집 박스 등)을 정보 저장부(108)로부터 인출하여 제어부(106) 내 이벤트 관리부(1062)로 전달한다(단계 214).
이에 응답하여, 이벤트 관리부(1062)에서는 해당 객체 유형(예컨대 버튼, 아이콘, 로고, 편집 박스 등)에 맞는 이벤트(또는 사용자 이벤트)를 생성, 즉 객체 유형별의 사용자 이벤트를 생성하고, 이 생성된 사용자 이벤트에 대한 행위를 실행시킨다(단계 216). 여기에서, 이벤트는, 예컨대 터치, 클릭, 드래그, 텍스트 입력, 트리 구조의 서브 화면(자식 화면)으로의 전환 등을 의미할 수 있다.
다음에, 탐색 경로 저장부(1064)에서는 생성된 이벤트의 실행이 완료될 때 탐색된 화면과 객체를 기록한 탐색 경로를 생성하고, 이 생성된 탐색 경로를 이벤트 행위의 실행 결과 정보와 함께 정보 저장부(108)에 저장한다(단계 218). 이때, 이벤트 관리부(1062)에서는 이벤트 행위의 실행이 완료될 때, 다음 UI 객체를 탐색할 수 있도록, 이벤트의 실행 완료를 탐색 제어부(1042)로 통지할 수 있다. 여기에서, 탐색된 화면과 객체를 기록한 탐색 경로를 생성하여 저장하는 것은, 관련 화면과 객체에 대한 탐색 및 이벤트 행위가 실행되었음이 시스템적으로 인식(파악)됨으로써, 동일 화면의 동일 객체에 대한 탐색 및 이벤트 행위가 중복하여 실행되는 것을 방지하기 위해서이다.
이후, 단계(220)에서는 실행 중인 화면(검증 대상 화면)의 모든 UI 객체에 대한 탐색이 완료되었는지의 여부를 체크하는데, 검증 대상 화면의 모든 UI 객체에 대한 탐색이 완료되지 않은 것으로 판단되면, 처리는 전술한 단계(210)로 되돌아가 그 이후의 과정들을 반복 수행하게 된다. 즉, 본 실시 예에서는 단계(210) 내지 단계(220)의 과정을 반복 수행함으로써, 하나의 화면에 있는 모든 UI 객체에 대한 탐색, 유효성 검증 및 이벤트 실행을 완료하게 된다.
다시, 단계(222)에서는 전체 화면 목록에 있는 모든 화면들에 대한 객체 탐색이 완료되었는지의 여부를 체크하는데, 모든 화면에 대한 객체 탐색이 완료되지 않은 것으로 판단되면, 처리는 전술한 단계(208)로 되돌아가 그 이후의 과정들을 반복 수행하게 된다. 즉, 본 실시 예에서는 단계(208) 내지 단계(222)의 과정을 반복 수행함으로써, 전체 화면 목록에 있는 모든 화면에 대한 객체 탐색과 이벤트 생성 및 실행을 완료하게 된다.
상기 단계(222)에서의 체크 결과, 모든 화면에 객체 탐색이 완료된 것으로 판단되면, 에뮬레이터에서의 검증 모드 실행이 종료되며(단계 224), 이후 검증 출력 제어부(110)에서는 분석 대상의 앱(예컨대, 모바일 앱)에 대한 분석 결과, 즉 검증된 이벤트 행위의 실행 결과에 대한 검증 보고서(예컨대, 검증 결과 리스트 또는 검증 결과 그래프 등)를 생성하여 표시부(112)에 표출(디스플레이)시킬 수 있다.
한편, 본 발명의 실시 예에서는 모바일 플랫폼 기반의 앱 동적 분석 분야에 적용하는 것을 일례로서 설명하였으나, 본 발명이 반드시 이에 한정되는 것은 아니며, 웹 플랫폼, 스마트 TV 등과 같은 임베디드 플랫폼 등 보다 지능적이고 자동화된 테스팅을 요하는 다양한 플랫폼 기반의 어플리케이션 검증(분석) 분야에 적용될 수 있음은 물론이다.
이상의 설명은 본 발명의 기술사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경 등이 가능함을 쉽게 알 수 있을 것이다. 즉, 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것으로서, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다.
따라서, 본 발명의 보호 범위는 후술되는 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (20)

  1. 분석 대상의 어플리케이션으로부터 UI(User Interface) 객체를 획득하는 과정과,
    획득된 상기 UI 객체의 객체 영역에 대한 이벤트를 자동 생성하는 과정과,
    생성된 상기 이벤트의 행위를 실행시키는 과정
    을 포함하는 객체 추출 기반의 어플리케이션 검증 방법.
  2. 제 1 항에 있어서,
    상기 UI 객체는,
    상기 어플리케이션의 공통 UI 객체와 고유 UI 객체를 포함하는
    객체 추출 기반의 어플리케이션 검증 방법.
  3. 제 2 항에 있어서,
    상기 UI 객체는,
    이미지 객체 또는 문자 객체를 포함하는
    객체 추출 기반의 어플리케이션 검증 방법.
  4. 제 1 항에 있어서,
    상기 획득하는 과정은,
    획득된 UI 객체들에 대한 객체 유형을 특정하는 과정을 더 포함하고,
    상기 생성하는 과정은,
    객체 유형별 이벤트를 상기 이벤트로서 생성하는
    객체 추출 기반의 어플리케이션 검증 방법.
  5. 분석 대상의 어플리케이션에 대한 UI 객체 및 관련 화면을 획득하는 제 1 과정과,
    획득된 전체 화면 목록으로부터 검증 대상 화면을 선택하는 제 2 과정과,
    상기 검증 대상 화면으로부터 UI 객체를 탐색하여 기 설정된 기준 유사도 조건을 충족시키는 유효 UI 객체인지의 여부를 체크하는 제 3 과정과,
    상기 유효 UI 객체일 때 해당 객체가 위치한 객체 영역을 유효 영역으로 식별하여 기 파악된 객체 유형을 특정하는 제 4 과정과,
    특정된 상기 객체 유형에 상응하는 이벤트를 생성하여 이벤트 행위를 실행시키는 제 5 과정
    을 포함하는 객체 추출 기반의 어플리케이션 검증 방법.
  6. 제 5 항에 있어서,
    상기 방법은,
    상기 검증 대상 화면에 존재하는 모든 UI 객체에 대한 탐색이 완료될 때까지 상기 제 3 과정 내지 제 5 과정을 반복 수행하는 제 6 과정과,
    상기 전체 화면 목록의 모든 화면에 대한 객체 탐색이 완료될 때까지 상기 제 2 과정 내지 제 6 과정을 반복 수행하는 제 7 과정
    을 더 포함하는 객체 추출 기반의 어플리케이션 검증 방법.
  7. 제 5 항에 있어서,
    상기 제 1 과정은,
    상기 어플리케이션의 플랫폼으로부터 공통 UI 객체와 각 객체 유형을 획득하는 제 1-1 과정과,
    상기 어플리케이션의 어플리케이션 배포 파일로부터 어플리케이션 리소스 내의 고유 UI 객체와 각 객체 유형을 획득하는 제 1-2 과정
    을 포함하는 객체 추출 기반의 어플리케이션 검증 방법.
  8. 제 7 항에 있어서,
    상기 제 1-1 과정은,
    상기 플랫폼으로부터 공통 UI 객체용의 이미지 객체를 추출하는 과정과,
    상기 플랫폼으로부터 공통 UI 객체용의 문자 또는 문자열 객체를 추출하는 과정과,
    추출된 상기 이미지 객체와 문자 또는 문자열 객체들에 대한 각 객체 유형을 식별하는 과정
    을 포함하는 객체 추출 기반의 어플리케이션 검증 방법.
  9. 제 7 항에 있어서,
    상기 제 1-2 과정은,
    상기 어플리케이션 리소스로부터 고유 UI 객체용의 이미지 객체를 추출하는 과정과,
    상기 어플리케이션 리소스로부터 고유 UI 객체용의 문자 또는 문자열 객체를 추출하는 과정과,
    추출된 상기 이미지 객체와 문자 또는 문자열 객체들에 대한 각 객체 유형을 식별하는 과정
    을 포함하는 객체 추출 기반의 어플리케이션 검증 방법.
  10. 제 5 항에 있어서,
    상기 방법은,
    상기 이벤트 행위의 실행이 완료될 때, 화면과 객체를 기록한 탐색 경로를 생성하여 정보 저장부에 저장하는 과정
    을 더 포함하는 객체 추출 기반의 어플리케이션 검증 방법.
  11. 제 10 항에 있어서,
    상기 저장하는 과정은,
    상기 이벤트 행위의 실행 결과를 상기 탐색 경로와 함께 상기 정보 저장부에 저장하는
    객체 추출 기반의 어플리케이션 검증 방법.
  12. 분석 대상의 어플리케이션에 대한 UI 객체 및 관련 화면들을 획득하는 정보 획득부와,
    획득된 상기 UI 객체와 상기 관련 화면들에 대한 전체 화면 목록을 저장하는 정보 저장부와,
    검증 대상 화면을 탐색하여 유효 UI 객체를 탐색하고, 탐색된 상기 유효 UI 객체에 대한 객체 유형을 특정하는 객체 판별부와,
    특정된 상기 객체 유형에 상응하는 이벤트를 생성하여 이벤트 행위를 실행시키는 제어부
    를 포함하는 객체 추출 기반의 어플리케이션 검증 장치.
  13. 제 12 항에 있어서,
    상기 정보 획득부는,
    상기 어플리케이션의 플랫폼으로부터 공통 UI 객체와 각 객체 유형을 추출하는 공통 UI 추출부와,
    상기 어플리케이션의 어플리케이션 배포 파일로부터 어플리케이션 리소스 내의 고유 UI 객체와 각 객체 유형을 추출하는 고유 UI 추출부와,
    상기 공통 UI 객체 및 고유 UI 객체와 관련된 화면들에 대한 전체 화면 목록을 파악하고, 각 객체에 대한 탐색 경로를 추정하는 탐색 경로 추정부
    를 포함하는 객체 추출 기반의 어플리케이션 검증 장치.
  14. 제 13 항에 있어서,
    상기 탐색 경로는,
    UI 경로를 따라 트리 구조로 배열되는 화면 및 객체 탐색 경로를 포함하는
    객체 추출 기반의 어플리케이션 검증 장치.
  15. 제 13 항에 있어서,
    상기 공통 UI 추출부는,
    상기 플랫폼으로부터 상기 공통 UI 객체용의 이미지 객체와 문자 또는 문자열 객체 및 각 객체 유형을 추출하는
    객체 추출 기반의 어플리케이션 검증 장치.
  16. 제 13 항에 있어서,
    상기 고유 UI 추출부는,
    상기 어플리케이션 리소스로부터 고유 UI 객체용의 이미지 객체, 문자 또는 문자열 객체, 추출된 이미지 객체와 문자 또는 문자열 객체 및 각 객체 유형을 추출하는
    객체 추출 기반의 어플리케이션 검증 장치.
  17. 제 12 항에 있어서,
    상기 객체 판별부는,
    상기 분석 대상의 어플리케이션이 로딩되어 실행될 때 상기 검증 대상 화면에 대한 객체 탐색을 지령하는 탐색 제어부와,
    상기 지령에 따라 상기 검증 대상 화면으로부터 상기 UI 객체를 탐색하는 객체 탐색부와,
    유사도 판단을 통하여 탐색된 상기 UI 객체가 상기 유효 UI 객체인지를 검증하고, 상기 유효 UI 객체일 때 유효 영역을 식별하여 기 파악된 객체 유형을 특정하는 유효성 검증부
    를 포함하는 객체 추출 기반의 어플리케이션 검증 장치.
  18. 제 12 항에 있어서,
    상기 제어부는,
    상기 객체 유형에 상응하는 이벤트를 생성하여 상기 이벤트 행위를 실행시키는 이벤트 관리부와,
    상기 이벤트 행위의 실행이 완료될 때 화면과 객체를 기록한 탐색 경로를 생성하여 상기 정보 저장부에 저장하는 탐색 경로 저장부
    를 포함하는 객체 추출 기반의 어플리케이션 검증 장치.
  19. 제 18 항에 있어서,
    상기 이벤트 관리부는,
    상기 이벤트 행위에 대한 실행이 완료될 때 다음 UI 객체의 탐색을 위해 그 실행 완료를 상기 객체 판별부로 통지하는
    객체 추출 기반의 어플리케이션 검증 장치.
  20. 제 18 항에 있어서,
    상기 탐색 경로 저장부는,
    상기 이벤트 행위의 실행 결과를 상기 탐색 경로와 함께 상기 정보 저장부에 저장하는
    객체 추출 기반의 어플리케이션 검증 장치.
PCT/KR2014/009127 2013-10-01 2014-09-29 객체 추출 기반의 어플리케이션 검증 방법 및 그 장치 WO2015050348A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020130117433A KR101527745B1 (ko) 2013-10-01 2013-10-01 객체 추출 기반의 어플리케이션 검증 방법 및 그 장치
KR10-2013-0117433 2013-10-01

Publications (1)

Publication Number Publication Date
WO2015050348A1 true WO2015050348A1 (ko) 2015-04-09

Family

ID=52778899

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2014/009127 WO2015050348A1 (ko) 2013-10-01 2014-09-29 객체 추출 기반의 어플리케이션 검증 방법 및 그 장치

Country Status (2)

Country Link
KR (1) KR101527745B1 (ko)
WO (1) WO2015050348A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2621185C2 (ru) * 2015-11-10 2017-05-31 Акционерное общество "Центральный научно-исследовательский институт экономики, информатики и систем управления" (АО "ЦНИИ ЭИСУ") Система для определения отношения между первой и второй объектными сущностями данных
GB202106085D0 (en) 2021-04-28 2021-06-09 Tomtom Traffic Bv Generating closure data relating to closure of a stretch of navigable elements

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102116395B1 (ko) * 2018-03-05 2020-05-29 어니컴 주식회사 애플리케이션 테스트 방법 및 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090110146A (ko) * 2008-04-17 2009-10-21 주식회사 알티캐스트 어플리케이션 생성 방법 및 시스템
KR20100056337A (ko) * 2008-11-19 2010-05-27 (주)링크제니시스 메뉴 테스트용 스크립트 생성 장치, 이를 포함하는 메뉴 테스트 자동화 시스템, 및 그 방법
KR20120121950A (ko) * 2011-04-28 2012-11-07 (주)아이엔에스랩 애플리케이션 그래픽 유저인터페이스 테스트 자동화 시스템 및 그 방법
KR20130101377A (ko) * 2012-03-05 2013-09-13 주식회사 인프라웨어 스크립트를 이용하여 메뉴를 연동시킨 웹 어플리케이션 제공 방법 및 그를 이용한 스마트 단말

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090110146A (ko) * 2008-04-17 2009-10-21 주식회사 알티캐스트 어플리케이션 생성 방법 및 시스템
KR20100056337A (ko) * 2008-11-19 2010-05-27 (주)링크제니시스 메뉴 테스트용 스크립트 생성 장치, 이를 포함하는 메뉴 테스트 자동화 시스템, 및 그 방법
KR20120121950A (ko) * 2011-04-28 2012-11-07 (주)아이엔에스랩 애플리케이션 그래픽 유저인터페이스 테스트 자동화 시스템 및 그 방법
KR20130101377A (ko) * 2012-03-05 2013-09-13 주식회사 인프라웨어 스크립트를 이용하여 메뉴를 연동시킨 웹 어플리케이션 제공 방법 및 그를 이용한 스마트 단말

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2621185C2 (ru) * 2015-11-10 2017-05-31 Акционерное общество "Центральный научно-исследовательский институт экономики, информатики и систем управления" (АО "ЦНИИ ЭИСУ") Система для определения отношения между первой и второй объектными сущностями данных
GB202106085D0 (en) 2021-04-28 2021-06-09 Tomtom Traffic Bv Generating closure data relating to closure of a stretch of navigable elements
WO2022229289A1 (en) 2021-04-28 2022-11-03 Tomtom Traffic B.V. Method, system, computer program and computer readable medium for generating closure data relating to closure of a stretch of navigable elements

Also Published As

Publication number Publication date
KR101527745B1 (ko) 2015-06-11
KR20150038983A (ko) 2015-04-09

Similar Documents

Publication Publication Date Title
WO2012091400A1 (en) System and method for detecting malware in file based on genetic map of file
CN113779585B (zh) 越权漏洞检测方法和装置
WO2014035043A1 (ko) 악성 애플리케이션 진단 장치 및 방법
WO2013077538A1 (ko) Api 기반 어플리케이션 분석 장치 및 방법
WO2020096098A1 (ko) 어노테이션 작업 관리 방법, 이를 지원하는 장치 및 시스템
CN106326108A (zh) 一种新应用的测试方法及装置
CN104598380A (zh) 一种基于控件的自动化测试方法及系统
CN104520871A (zh) 漏洞矢量信息分析
CN105512045B (zh) 一种应用程序的测试方法、装置及测试设备
CN109803152A (zh) 违规审核方法、装置、电子设备以及存储介质
CN106407054B (zh) 一种bmc自动测试系统及方法
CN112035354B (zh) 风险代码的定位方法、装置、设备及存储介质
WO2019054613A1 (ko) 바이너리 파일에 기초하여 오픈소스 소프트웨어 패키지를 식별하는 방법 및 시스템
CN115033894B (zh) 一种基于知识图谱的软件组件供应链安全检测方法及装置
WO2015050348A1 (ko) 객체 추출 기반의 어플리케이션 검증 방법 및 그 장치
CN108399321B (zh) 基于动态指令依赖图胎记的软件局部抄袭检测方法
CN110688305B (zh) 测试环境同步方法、装置、介质、电子设备
KR20150030297A (ko) 애플리케이션 자동 검증을 위한 검증장치, 단말장치, 시스템, 방법 및 컴퓨터로 판독 가능한 기록 매체
WO2015126079A1 (ko) 리패키징 탐지 방법 및 장치
CN111858383A (zh) 移动app的数据埋点方法、系统、终端设备及存储介质
CN107341031B (zh) 一种在dsp固件里加入固件生成信息的方法及装置
KR101862617B1 (ko) 전력설비관리를 위한 사물인터넷 센서의 테스트 시스템
WO2015005578A1 (ko) 통신 단말기의 해킹 방지 방법 및 해킹 방지 방법이 실행되는 통신 단말기
CN107291617A (zh) 一种基于隐式污点传播的漏洞分析方法
CN113342632A (zh) 仿真数据自动化处理方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14851070

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14851070

Country of ref document: EP

Kind code of ref document: A1