JP7029557B1 - Judgment device, judgment method and judgment program - Google Patents

Judgment device, judgment method and judgment program Download PDF

Info

Publication number
JP7029557B1
JP7029557B1 JP2021020182A JP2021020182A JP7029557B1 JP 7029557 B1 JP7029557 B1 JP 7029557B1 JP 2021020182 A JP2021020182 A JP 2021020182A JP 2021020182 A JP2021020182 A JP 2021020182A JP 7029557 B1 JP7029557 B1 JP 7029557B1
Authority
JP
Japan
Prior art keywords
content
comparison
terminal
information providing
providing device
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2021020182A
Other languages
Japanese (ja)
Other versions
JP2022122740A (en
Inventor
シュレイ パンディ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PayPay Corp
Original Assignee
PayPay Corp
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 PayPay Corp filed Critical PayPay Corp
Priority to JP2021020182A priority Critical patent/JP7029557B1/en
Application granted granted Critical
Publication of JP7029557B1 publication Critical patent/JP7029557B1/en
Publication of JP2022122740A publication Critical patent/JP2022122740A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】UIの試験に係る手間を削減する。【解決手段】本願に係る判定装置は、基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得部と、前記基準コンテンツが有する特徴と、前記比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定する判定部とを有することを特徴とする。【選択図】図1PROBLEM TO BE SOLVED: To reduce labor related to a UI test. A determination device according to the present application includes reference content displayed when a reference terminal executes a predetermined application, and comparison content displayed when a comparison terminal to be compared executes a predetermined application. It is characterized by having an acquisition unit for acquiring the above, and a determination unit for determining whether or not the similarity between the feature of the reference content and the feature of the comparison content satisfies a predetermined condition. [Selection diagram] Fig. 1

Description

本発明は、判定装置、判定方法および判定プログラムに関する。 The present invention relates to a determination device, a determination method, and a determination program.

従来、利用者に対して各種のサービスが提供されている。このようなサービスの提供においては、あらかじめ設定されたUI(User Interface)を有するコンテンツが利用者に配信され、利用者に対する情報提供や、利用者からの操作の受付を実現している。 Conventionally, various services have been provided to users. In the provision of such a service, content having a preset UI (User Interface) is distributed to the user, and information is provided to the user and operations are accepted from the user.

一方、サービスの提供時やUIの変更時には、UIが適切に機能を発揮できるかを試験する必要がある。このようなUIの試験に係る手間を削減するための手法として、テストケースの実行結果に基づいて、新たなテストスクリプトを生成する技術や、ルールベースでUIのテストを行う技術が提案されている。 On the other hand, when providing a service or changing the UI, it is necessary to test whether the UI can perform its function properly. As a method for reducing the time and effort involved in such UI testing, a technique for generating a new test script based on the execution result of a test case and a technique for performing a UI test on a rule basis have been proposed. ..

特許第6635963号公報Japanese Patent No. 6635963 特表2013-518321号公報Japanese Patent Publication No. 2013-518321 米国特許第9841956号U.S. Pat. No. 9841956

しかしながら、上述した従来技術では、UIの試験に係る手間を削減する余地がある。 However, in the above-mentioned conventional technique, there is room for reducing the labor involved in the UI test.

例えば、あるサービスを提供するアプリケーションをOS(Operating System)等のプラットフォームや、画面サイズ、画面の解像度等が異なる複数の情報処理装置、すなわち、それぞれ異なる種別の情報処理装置が実行した場合、各情報処理装置を介して提供されるコンテンツのUIがそれぞれ異なってしまう恐れがある。このため、上述した従来技術では、アプリケーションを実行する情報処理装置の種別ごとに、UIの試験を行うためのテストケースやルールを準備する手間がかかる。 For example, when an application that provides a certain service is executed by a platform such as an OS (Operating System) or a plurality of information processing devices having different screen sizes, screen resolutions, etc., that is, different types of information processing devices, each information is executed. There is a risk that the UI of the content provided via the processing device will be different. For this reason, in the above-mentioned conventional technique, it takes time and effort to prepare test cases and rules for testing the UI for each type of information processing apparatus that executes the application.

なお、このようなUIの試験は、アプリケーションの開発時のみならず、各種のアップデートによりアプリケーションのコードを変更する際にも、同様の手間が発生する。 It should be noted that such a UI test requires the same time and effort not only when developing an application but also when changing the code of the application due to various updates.

また、上述した従来技術では、UIごとにどのような内容のテストを行えばよいかを示すテストケースやルールをあらかじめ準備する必要がある。しかしながら、このように、テストケースやルールを人手で準備した場合は、テストすべき内容の欠落等といったミスが生じる恐れがある。 Further, in the above-mentioned conventional technique, it is necessary to prepare in advance test cases and rules indicating what kind of test should be performed for each UI. However, when test cases and rules are prepared manually in this way, mistakes such as lack of content to be tested may occur.

本願は、上記に鑑みてなされたものであって、UIの試験に係る手間を削減することを目的とする。 The present application has been made in view of the above, and an object thereof is to reduce the labor related to the UI test.

本願に係る判定装置は、基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得部と、前記基準コンテンツが有する特徴と、前記比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定する判定部とを有することを特徴とする。 The determination device according to the present application acquires the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes the predetermined application. It is characterized by having a unit and a determination unit for determining whether or not the similarity between the feature of the reference content and the feature of the comparative content satisfies a predetermined condition.

実施形態の一態様によれば、UIの試験に係る手間を削減することができる。 According to one aspect of the embodiment, it is possible to reduce the labor involved in the UI test.

図1は、実施形態に係る情報提供装置の一例を示す図である。FIG. 1 is a diagram showing an example of an information providing device according to an embodiment. 図2は、実施形態に係る情報提供装置が実行する生成処理の実装例を示す図である。FIG. 2 is a diagram showing an implementation example of a generation process executed by the information providing device according to the embodiment. 図3は、実施形態に係る情報提供装置が実行する適用処理の実装例を示す図である。FIG. 3 is a diagram showing an implementation example of an application process executed by the information providing device according to the embodiment. 図4は、実施形態に係る情報提供装置が実行する判定処理の流れの一例を示す図である。FIG. 4 is a diagram showing an example of a flow of determination processing executed by the information providing device according to the embodiment. 図5は、実施形態に係る情報提供装置が実行する判定処理の流れの一例を示すフローチャートである。FIG. 5 is a flowchart showing an example of the flow of the determination process executed by the information providing device according to the embodiment. 図6は、各コンテンツを比較する処理の一例を示す図である。FIG. 6 is a diagram showing an example of processing for comparing each content. 図7は、実施形態に係る情報提供装置の構成例を示す図である。FIG. 7 is a diagram showing a configuration example of the information providing device according to the embodiment. 図8は、実施形態に係る操作データベースに登録される情報の一例を示す図である。FIG. 8 is a diagram showing an example of information registered in the operation database according to the embodiment. 図9は、実施形態に係る組合わせデータベースに登録される情報の一例を示す図である。FIG. 9 is a diagram showing an example of information registered in the combination database according to the embodiment. 図10は、実施形態に係るコンテンツデータベースに登録される情報の一例を示す図である。FIG. 10 is a diagram showing an example of information registered in the content database according to the embodiment. 図11は、実施形態に係る判定処理の流れの一例を示すフローチャートである。FIG. 11 is a flowchart showing an example of the flow of the determination process according to the embodiment. 図12は、ハードウェア構成の一例を示す図である。FIG. 12 is a diagram showing an example of a hardware configuration.

以下に、本願に係る判定装置、判定方法および判定プログラムを実施するための形態(以下、「実施形態」と記載する。)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る判定装置、判定方法および判定プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略する。 Hereinafter, a determination device, a determination method, and an embodiment for implementing the determination program (hereinafter, referred to as “embodiment”) according to the present application will be described in detail with reference to the drawings. It should be noted that this embodiment does not limit the determination device, determination method and determination program according to the present application. Further, in each of the following embodiments, the same parts are designated by the same reference numerals, and duplicate description will be omitted.

[実施形態]
〔1-1.情報提供装置の一例について〕
まず、図1を用いて、実施形態に係る判定装置の一例である情報提供装置10の一例について説明する。図1は、実施形態に係る情報提供装置の一例を示す図である。なお、図1では、情報提供装置10が実行する機能の一例として、各種の端末装置にインストールされたアプリケーションのデバッグを行うためにアプリケーションの試験を行うための操作情報を生成する処理の一例について記載した。なお、情報提供装置10は、後述するように、図1に示すような処理と平行し、試験においてアプリケーションが端末装置に表示される画面が適切な画面であるかを判定する判定処理を実行する。
[Embodiment]
[1-1. About an example of information providing device]
First, an example of the information providing device 10 which is an example of the determination device according to the embodiment will be described with reference to FIG. FIG. 1 is a diagram showing an example of an information providing device according to an embodiment. Note that FIG. 1 describes, as an example of the functions executed by the information providing device 10, an example of a process of generating operation information for testing an application in order to debug an application installed in various terminal devices. did. As will be described later, the information providing device 10 executes a determination process for determining whether the screen displayed on the terminal device by the application in the test is an appropriate screen in parallel with the process as shown in FIG. ..

なお、以下の説明では、図1~図3を用いて、生成処理により生成された操作情報により実現される処理の流れについて説明し、その後、試験において操作情報により実現される試験と平行に行われる試験であって、アプリケーションが表示される画面が適切な画面であるかを判定する試験、すなわち、判定処理の内容について説明する。 In the following description, the flow of the process realized by the operation information generated by the generation process will be described with reference to FIGS. 1 to 3, and then the test will be performed in parallel with the test realized by the operation information. The test for determining whether the screen on which the application is displayed is an appropriate screen, that is, the content of the determination process will be described.

図1に示す情報提供装置10は、生成処理を実行する情報処理装置であり、例えば、サーバ装置やクラウドシステム等により実現される。例えば、情報提供装置10は、端末装置201~203がインストールしたOS(Operating System)や、OS上で動作する各種アプリケーション等といった各種ソフトウェアの動作を自動的に試験するための操作情報を生成する。なお、操作情報については、後述する。 The information providing device 10 shown in FIG. 1 is an information processing device that executes a generation process, and is realized by, for example, a server device, a cloud system, or the like. For example, the information providing device 10 generates operation information for automatically testing the operation of various software such as an OS (Operating System) installed by the terminal devices 201 to 203 and various applications running on the OS. The operation information will be described later.

なお、情報提供装置10は、上述した生成処理に加え、生成された操作情報に従って、端末装置201~203にインストールされたアプリケーションのテストを行う機能を有する。なお、このような機能は、情報提供装置10自体が実行する必要はなく、例えば、サーバ装置やクラウドシステム等により実現される他の情報処理装置(例えば、適用装置)により実現されてもよい。例えば、情報提供装置10は、端末装置201~203にインストールされた各種ソフトウェアの動作を自動的に試験する。 In addition to the generation process described above, the information providing device 10 has a function of testing the application installed in the terminal devices 201 to 203 according to the generated operation information. It should be noted that such a function does not need to be executed by the information providing device 10 itself, and may be realized by, for example, another information processing device (for example, an applicable device) realized by a server device, a cloud system, or the like. For example, the information providing device 10 automatically tests the operation of various software installed in the terminal devices 201 to 203.

端末装置201~203(以下、「端末装置200」と総称する場合がある。)は、利用者U1~U3が利用する端末装置であり、例えば、スマートフォン等の情報処理端末である。例えば、端末装置200は、インターネット等のネットワークNを介して、情報提供装置10と通信可能である。なお、端末装置200は、PC(Personal Computer)等の情報処理装置であってもよい。また、図1に示す例では、3つの端末装置201~203を図示したが、実施形態は、これに限定されるものではない。後述する説明で明らかとなるように、情報提供装置10は、任意の数の端末装置200の試験を同時並列的に行ってよい。なお、図1に示す例では、端末装置201は、スマートフォンであり、端末装置202は、タブレットであり、端末装置203は、PCである。情報提供装置10は、このような様々な種別の端末装置200において実行されるソフトウェアの動作を同時に試験することも可能である。 Terminal devices 201 to 203 (hereinafter, may be collectively referred to as "terminal devices 200") are terminal devices used by users U1 to U3, and are, for example, information processing terminals such as smartphones. For example, the terminal device 200 can communicate with the information providing device 10 via a network N such as the Internet. The terminal device 200 may be an information processing device such as a PC (Personal Computer). Further, in the example shown in FIG. 1, three terminal devices 201 to 203 are illustrated, but the embodiment is not limited to this. As will be clarified in the explanation described later, the information providing device 10 may perform tests of an arbitrary number of terminal devices 200 in parallel at the same time. In the example shown in FIG. 1, the terminal device 201 is a smartphone, the terminal device 202 is a tablet, and the terminal device 203 is a PC. The information providing device 10 can also simultaneously test the operation of software executed in such various types of terminal devices 200.

操作者端末300は、端末装置200の試験を所望する利用者、若しくは、試験を所望する利用者からの依頼を受けた操作者が利用する端末装置であり、サーバ装置やクラウドシステム、PC等の情報処理装置により実現される。 The operator terminal 300 is a terminal device used by a user who desires a test of the terminal device 200 or an operator who has received a request from a user who desires a test, and is a server device, a cloud system, a PC, or the like. It is realized by an information processing device.

〔1-2.試験の流れの一例について〕
ここで、情報提供装置10が実行する生成処理を説明する前に、情報提供装置10が実行する試験の流れについて説明する。例えば、各端末装置200の動作確認や、ソフトウェアのデバッグを行う場合、各端末装置200に対して様々な処理を様々な順番で繰り返し入力し、誤った動作が行われないかを操作の度に判定することとなる。しかしながら、このような試験を人手で行った場合、手間がかかる。また、人手での試験では、誤った操作が行われてしまい、適切な試験が実現できない恐れがある。
[1-2. About an example of the test flow]
Here, before explaining the generation process executed by the information providing apparatus 10, the flow of the test executed by the information providing apparatus 10 will be described. For example, when checking the operation of each terminal device 200 or debugging software, various processes are repeatedly input to each terminal device 200 in various orders, and each operation is performed to check whether an erroneous operation is performed. It will be judged. However, if such a test is performed manually, it takes time and effort. In addition, in the manual test, an erroneous operation may be performed and an appropriate test may not be realized.

そこで、情報提供装置10は、所定の対象に対して行われる利用者の行動、換言すると、アプリケーション等の所定の対象が提供する機能を自然言語で示す操作情報を取得する。例えば、アプリケーションが利用者に対してログインの機能を提供した場合、利用者は、その機能を発揮させることでログインといった行動を行うこととなる。また、アプリケーションが各種の決済機能を発揮するアプリケーションである場合、利用者は、アプリケーションが提供する決済機能を発揮させることで、決済といった行動を行うこととなる。そして、情報提供装置10は、取得した操作情報から、操作情報が示す行動が行われた際に対象に対して行われる操作を対象に対して適用するための適用情報を生成する。 Therefore, the information providing device 10 acquires operation information indicating the user's behavior performed on the predetermined target, in other words, the function provided by the predetermined target such as an application, in natural language. For example, when an application provides a login function to a user, the user performs an action such as login by exerting the function. Further, when the application is an application that exerts various payment functions, the user performs an action such as payment by exerting the payment function provided by the application. Then, the information providing device 10 generates application information for applying the operation performed on the target to the target when the action indicated by the operation information is performed from the acquired operation information.

例えば、情報提供装置10は、あるソフトウェアのログインが適切に行えるか否かの試験を行う場合、「ログインをする」といった、ログイン時における利用者の動作を自然言語で示す指示を取得する。このような場合、情報提供装置10は、操作対象となるソフトウェアにおいてログインを行うための操作を特定し、特定した操作をソフトウェア上で実現するための適用情報を生成する。 For example, when the information providing device 10 tests whether or not a certain software can be properly logged in, the information providing device 10 acquires an instruction indicating the user's operation at the time of login, such as "log in", in natural language. In such a case, the information providing device 10 specifies an operation for logging in in the software to be operated, and generates application information for realizing the specified operation on the software.

例えば、情報提供装置10は、「ログイン」という行動を行うために、「ログインを行うためのログインコンテンツを表示する」操作を行った後で、「ユーザIDを入力する」操作と「パスワードを入力する」操作を行い、さらに「ログインを行うためのログインボタンをタップする」操作が必要となる場合は、これら各操作を特定する。なお、このような行動を行うために必要な各種の操作の特定は、操作対象となるアプリケーションごとに生成された辞書データであって、想定される行動と、その行動が行われる際に行われる操作とを対応付けた辞書データを用いて、ルールベースにより特定される。 For example, the information providing device 10 performs an operation of "displaying login contents for logging in" and then an operation of "entering a user ID" and "entering a password" in order to perform an action of "login". If you need to perform the "to do" operation and then "tap the login button to log in", specify each of these operations. It should be noted that the identification of various operations necessary for performing such an action is dictionary data generated for each application to be operated, and is performed when the expected action and the action are performed. It is specified by the rule base using the dictionary data associated with the operation.

そして、情報提供装置10は、特定した各操作を端末装置200に適用するための適用情報を生成する。例えば、情報提供装置10は、端末装置200に対し、各種のタップ操作やテキストの入力操作を端末装置200上で再現するための各種公知技術(例えば、Appiumといった各種のUI(User Interface)のテスト自動化フレームワークの技術)を用いて、特定した各操作を端末装置200に対して行うための適用情報を生成する。 Then, the information providing device 10 generates application information for applying each specified operation to the terminal device 200. For example, the information providing device 10 tests the terminal device 200 with various publicly known techniques (for example, various UIs (User Interfaces) such as Apium) for reproducing various tap operations and text input operations on the terminal device 200. (Technology of automation framework) is used to generate application information for performing each specified operation on the terminal device 200.

〔1-3.生成処理について〕
上述したように、情報提供装置10は、試験対象の機能を上位概念化した指示、すなわち、アプリケーションに対して行われる利用者の行動や利用者が利用する機能を自然言語で示す指示に基づいて、アプリケーションの試験を行うことができる。このため、操作者は、試験対象としたい利用者の行動や機能を自然言語で表した情報のみで、試験を行うことができる。
[1-3. About generation processing]
As described above, the information providing device 10 is based on an instruction that is a higher-level conceptualization of the function to be tested, that is, an instruction that indicates the user's behavior performed on the application and the function used by the user in natural language. You can test your application. Therefore, the operator can perform the test only with the information expressing the behavior and function of the user who wants to be the test target in natural language.

しかしながら、係る処理のみでは適切な試験を行うことができるとは言えない。例えば、アプリケーションが提供するログインにおける試験では、ログインが適切に行えたか否かだけではなく、ログインが行われた際にどのような操作でログインができなかったかを知る必要がある。しかしながら、このような詳細な操作内容を人手で設定するのは手間がかかる。また、人手で各種操作内容を設定した場合、人的ミスにより、試行すべき操作内容が設定されず、バグが見逃される恐れがある。 However, it cannot be said that an appropriate test can be performed only by such a treatment. For example, in a login test provided by an application, it is necessary to know not only whether or not the login was performed properly, but also what kind of operation was not possible to log in when the login was performed. However, it is troublesome to manually set such detailed operation contents. In addition, when various operation contents are set manually, the operation contents to be tried are not set due to human error, and there is a possibility that a bug may be overlooked.

そこで、情報提供装置10は、以下の生成処理を実行する。まず、情報提供装置10は、利用者の操作対象が発揮する機能を特定する。続いて、情報提供装置10は、特定された機能に応じて、操作対象に対して行われる利用者の操作の組合わせを決定する。そして、情報提供装置10は、決定された操作の組合わせを自然言語で表した操作情報を生成する。 Therefore, the information providing device 10 executes the following generation processing. First, the information providing device 10 identifies a function exhibited by the user's operation target. Subsequently, the information providing device 10 determines a combination of user operations performed on the operation target according to the specified function. Then, the information providing device 10 generates operation information expressing the determined combination of operations in natural language.

例えば、情報提供装置10は、利用者の操作対象となるアプリケーションの解析を行い、アプリケーションの各種機能を特定する。例えば、情報提供装置10は、アプリケーションが提供する機能として、ログイン、QRコード(登録商標)の読み取りや送信といった決済に関する各種の機能、音楽コンテンツや地図コンテンツ等といった各種コンテンツを適用する機能など、アプリケーションが発揮する機能であって、利用者が利用可能な機能を特定する。なお、このような機能の特定については、アプリケーションが有する特徴と、そのアプリケーションが提供する機能との関係性を学習したモデルを用いることで、実現可能である。 For example, the information providing device 10 analyzes an application to be operated by the user and specifies various functions of the application. For example, the information providing device 10 is an application such as various functions related to payment such as login, reading and transmission of a QR code (registered trademark), and a function of applying various contents such as music contents and map contents as functions provided by the application. Identify the functions that can be used by the user. It should be noted that such a function can be specified by using a model that learns the relationship between the characteristics of the application and the functions provided by the application.

続いて、情報提供装置10は、特定した機能ごとに、その機能を発揮する際にアプリケーションに対して行われる操作の組合わせを決定する。例えば、情報提供装置10は、特定した機能が「ログイン」である場合、アプリケーションに対して行われる操作として、「ユーザIDの入力」、「パスワードの入力」、「ログインボタンの選択」といった操作を特定する。すなわち、情報提供装置10は、特定した機能を発揮するための画面内において利用者から受け付け可能な操作(換言すると、利用者が実行可能な操作)を特定する。なお、このような特定処理は、例えば、アプリケーションの機能と、その機能を発揮するための操作とをあらかじめ対応付けたテーブル等を用いることで、実現可能である。 Subsequently, the information providing device 10 determines, for each specified function, a combination of operations performed on the application when the function is exerted. For example, when the specified function is "login", the information providing device 10 performs operations such as "input of user ID", "input of password", and "selection of login button" as operations performed on the application. Identify. That is, the information providing device 10 specifies an operation that can be accepted from the user (in other words, an operation that can be executed by the user) in the screen for exerting the specified function. It should be noted that such a specific process can be realized by using, for example, a table or the like in which the function of the application and the operation for exerting the function are associated in advance.

そして、情報提供装置10は、これら特定した操作を適宜組合わせた操作の組合わせを決定する。例えば、情報提供装置10は、「ユーザIDの入力」、「ユーザIDの入力」、「ログインボタンの選択」といった組合わせや、「ユーザIDの入力」、「パスワードの入力」、「ユーザIDの入力」といった組合わせ等、特定した操作をランダムな数だけランダムな順序で並べた組合わせを所定数生成する。また、情報提供装置10は、後述する処理により、生成した組合わせの中から、実際にアプリケーションに対して適用する操作の組合わせを決定する。 Then, the information providing device 10 determines a combination of operations that appropriately combines these specified operations. For example, the information providing device 10 may be used for combinations such as "user ID input", "user ID input", and "login button selection", as well as "user ID input", "password input", and "user ID input". Generates a predetermined number of combinations in which specified operations such as "input" are arranged in a random order by a random number. Further, the information providing device 10 determines a combination of operations to be actually applied to the application from the generated combinations by the process described later.

そして、情報提供装置10は、決定した操作の組合わせを自然言語で表した操作情報、すなわち、操作のシナリオ(換言すると、試験のシナリオ)を操作情報として生成する。例えば、情報提供装置10は、「ログイン」の機能について、「ユーザIDの入力」、「ユーザIDの入力」、「ログインボタンの選択」といった操作の組合わせを決定した場合、「ログイン画面において、ユーザIDを入力し、続いて、ユーザIDを入力し、その後、ログインボタンをタップする」といった操作情報を生成する。 Then, the information providing device 10 generates operation information expressing the combination of the determined operations in natural language, that is, an operation scenario (in other words, a test scenario) as the operation information. For example, when the information providing device 10 determines a combination of operations such as "input of user ID", "input of user ID", and "selection of login button" for the function of "login", "on the login screen," Enter the user ID, then enter the user ID, and then tap the login button "to generate operation information.

〔1-4.生成処理および適用処理の一例について〕
以下、図1を用いて、情報提供装置10が実行する生成処理の流れ、および情報提供装置10が実行する適用処理の流れの一例について説明する。例えば、操作者は、各端末装置200に対して、操作対象となるアプリケーションをインストールする(ステップS1)。ここで、各端末装置200に対してインストールされるアプリケーションは、それぞれ異なるバージョンのアプリケーションであってもよい。また、各端末装置200に対してインストールされるアプリケーションは、それぞれ個別のOS上で動作するアプリケーションであってもよく、それぞれ異なるサービスを提供するためのアプリケーションであってもよい。また、各端末装置200は、それぞれ異なる種別のハードウェアであってもよい。すなわち、試験対象となる端末装置200とは、ハードウェアとソフトウェアとの組み合わせがそれぞれ異なるものであってもよい。
[1-4. About an example of generation processing and application processing]
Hereinafter, an example of a flow of generation processing executed by the information providing apparatus 10 and a flow of application processing executed by the information providing apparatus 10 will be described with reference to FIG. 1. For example, the operator installs the application to be operated on each terminal device 200 (step S1). Here, the application installed for each terminal device 200 may be a different version of the application. Further, the application installed on each terminal device 200 may be an application that operates on each individual OS, or may be an application for providing different services. Further, each terminal device 200 may be of different types of hardware. That is, the combination of hardware and software may be different from that of the terminal device 200 to be tested.

続いて、情報提供装置10は、操作者端末300から、試験対象となるアプリケーションを受け付ける(ステップS2)。すなわち、情報提供装置10は、AUT(Application Under Test)を受け付ける。例えば、情報提供装置10は、各端末装置200にインストールされたアプリケーションのデータを受け付ける。なお、図1に示す例では、情報提供装置10は、操作者が各端末装置200にインストールしたアプリケーションのデータを受け付けるが、実施形態は、これに限定されるものではない。例えば、情報提供装置10は、アプリケーションを受け付けると、各端末装置200に受け付けたアプリケーションを送信しインストールさせてもよい。また、情報提供装置10は、操作者端末300が各端末装置200にインストールさせたアプリケーションを受け付けてもよい。 Subsequently, the information providing device 10 receives the application to be tested from the operator terminal 300 (step S2). That is, the information providing device 10 accepts an AUT (Application Under Test). For example, the information providing device 10 receives data of an application installed in each terminal device 200. In the example shown in FIG. 1, the information providing device 10 receives the data of the application installed in each terminal device 200 by the operator, but the embodiment is not limited to this. For example, when the information providing device 10 receives an application, the information providing device 10 may transmit and install the accepted application to each terminal device 200. Further, the information providing device 10 may accept an application installed in each terminal device 200 by the operator terminal 300.

続いて、情報提供装置10は、アプリケーションが提供するサービスをドメインとして特定する(ステップS3)。上述したように、情報提供装置10は、操作対象となるアプリケーションの機能に基づいて操作内容の組合わせを決定するが、このようなアプリケーションの機能は、アプリケーションが提供するサービスによって異なる。例えば、決済を行うアプリケーションは、ログインの機能が必須であると考えらえるが、フォトビュワー等のアプリケーションは、ログインの機能を提供しない場合が多いと考えられる。このように、操作対象が提供するサービスの種別に応じて、操作対象が発揮する機能は、変化すると考えられる。 Subsequently, the information providing device 10 specifies the service provided by the application as a domain (step S3). As described above, the information providing device 10 determines the combination of operation contents based on the function of the application to be operated, and the function of such an application differs depending on the service provided by the application. For example, it is considered that a login function is indispensable for a payment application, but it is considered that an application such as a photo viewer often does not provide a login function. In this way, it is considered that the functions exhibited by the operation target change depending on the type of service provided by the operation target.

そこで、情報提供装置10は、操作対象となるアプリケーションが提供するサービスをドメインとして特定する。例えば、アプリケーションが画面上に表示するテキストの内容は、アプリケーションが提供するサービスのドメインを精度よく示す指標となり得る。例えば、「再生」といったテキストを表示するアプリケーションは、音楽等の各種コンテンツを再生するサービスを提供するアプリケーションであると推定される。また、「支払」といったテキストを表示するアプリケーションは、各種支払サービスを提供するアプリケーションであると推定される。そこで、情報提供装置10は、コンテンツが画面上に表示するテキストに基づいて、操作対象が提供するサービスのドメインを特定する。 Therefore, the information providing device 10 specifies the service provided by the application to be operated as a domain. For example, the content of the text displayed on the screen by the application can be an accurate indicator of the domain of the service provided by the application. For example, an application that displays text such as "playback" is presumed to be an application that provides a service for playing back various contents such as music. In addition, an application that displays a text such as "payment" is presumed to be an application that provides various payment services. Therefore, the information providing device 10 specifies the domain of the service provided by the operation target based on the text displayed on the screen by the content.

続いて、情報提供装置10は、ドメインに応じて、アプリケーションの各画面上で提供される機能を特定する(ステップS4)。例えば、情報提供装置10は、ログイン等、アプリケーションを介して提供されるサービスを構成する構成サービスを機能として特定する。なお、以下の説明では、このような構成サービスを、アプリケーションの「機能」と表現する場合がある。 Subsequently, the information providing device 10 specifies a function provided on each screen of the application according to the domain (step S4). For example, the information providing device 10 specifies as a function a configuration service constituting a service provided via an application such as login. In the following description, such a configuration service may be expressed as a "function" of the application.

例えば、情報提供装置10は、ドメインが「決済サービス」であるアプリケーションについて、ある画面上に、テキストボックスが2つ含まれている場合は、この画面上で提供される機能が「ログイン」であると判定する。また、情報提供装置10は、ドメインが「SNS(Social Networking Service)」であるアプリケーションについて、ある画面上に、テキストボックスが2つ含まれている場合は、この画面上で提供される機能が「投稿」であると判定する。 For example, in the information providing device 10, when two text boxes are included on a certain screen for an application whose domain is "payment service", the function provided on this screen is "login". Is determined. Further, when the information providing device 10 includes two text boxes on a certain screen for an application whose domain is "SNS (Social Networking Service)", the function provided on this screen is ". Judged as "post".

上述した処理の結果、情報提供装置10は、アプリケーションが表示する画面ごとに、その画面を介して提供される機能を特定することとなる。そこで、情報提供装置10は、特定した機能を発揮させるための操作の組合わせを決定する(ステップS5)。例えば、情報提供装置10は、特定した機能とあらかじめ対応付けられた操作を特定し、特定した操作をランダムな数だけ、ランダムな順番で組合わせた操作の組合わせの候補を生成する。そして、情報提供装置10は、生成した組合わせの候補の中から、試験の対象として適切であると推定される組合わせの候補を特定する。 As a result of the above-mentioned processing, the information providing device 10 will specify the function provided through the screen for each screen displayed by the application. Therefore, the information providing device 10 determines a combination of operations for exerting the specified function (step S5). For example, the information providing device 10 identifies an operation associated with a specified function in advance, and generates candidates for a combination of operations in which the specified operations are combined in a random order by a random number. Then, the information providing device 10 identifies a combination candidate that is presumed to be appropriate as a test target from the generated combination candidates.

続いて、情報提供装置10は、決定した操作の組合わせを自然言語で示した操作情報を生成する(ステップS6)。例えば、情報提供装置10は、各操作と、その操作を示す自然言語とを対応付けた辞書データを参照し、決定した操作内容を自然言語で示した操作情報を生成する。例えば、情報提供装置10は、操作の組合わせが「テキストボックスにユーザIDを入力」、「ボタンをクリック」である場合、「テキストボックスにユーザIDを入力した後にボタンをクリックする」というように、各操作内容と、各操作を実行する順序とを自然言語で示す操作内容を生成する。なお、このような操作情報は、例えば、テストケース、テストシナリオ、シナリオアウトライン、特徴ファイル、もしくはユーザフロー等と表現される場合がある。すなわち、情報提供装置10は、構成サービスが提供される際に利用者が入力しうる操作を自然言語で示す操作情報を生成する。 Subsequently, the information providing device 10 generates operation information indicating the combination of the determined operations in natural language (step S6). For example, the information providing device 10 refers to dictionary data in which each operation is associated with a natural language indicating the operation, and generates operation information indicating the determined operation content in the natural language. For example, in the information providing device 10, when the combination of operations is "enter user ID in text box" or "click button", the information providing device 10 "clicks the button after entering the user ID in the text box". , Generates operation content that shows each operation content and the order in which each operation is executed in natural language. Note that such operation information may be expressed as, for example, a test case, a test scenario, a scenario outline, a feature file, a user flow, or the like. That is, the information providing device 10 generates operation information indicating in natural language the operations that can be input by the user when the configuration service is provided.

〔1-5.適用処理の一例について〕
続いて、情報提供装置10が実行する提供処理の一例を説明する。まず、情報提供装置10は、操作情報が示す操作を各端末装置200に提供させるための適用情報を生成する(ステップS7)。例えば、情報提供装置10は、各端末装置200において実行されているOSやログイン対象となるソフトウェアごとに、操作情報から操作内容を特定する。続いて、情報提供装置10は、特定した操作を各端末装置200に適用されるための適用情報を生成する。例えば、情報提供装置10は、端末装置200ごとに、特定した操作を実行させるためのテストコードを生成する。換言すると、情報提供装置10は、各端末装置200に対して、特定した操作を仮想的に入力させるための各種スクリプトを適用情報として生成する。
[1-5. About an example of application processing]
Subsequently, an example of the provision process executed by the information providing device 10 will be described. First, the information providing device 10 generates application information for causing each terminal device 200 to provide the operation indicated by the operation information (step S7). For example, the information providing device 10 specifies the operation content from the operation information for each OS executed in each terminal device 200 and the software to be logged in. Subsequently, the information providing device 10 generates application information for applying the specified operation to each terminal device 200. For example, the information providing device 10 generates a test code for executing the specified operation for each terminal device 200. In other words, the information providing device 10 generates various scripts for virtually inputting the specified operation to each terminal device 200 as application information.

そして、情報提供装置10は、各端末装置200ごとに生成した適用情報を各端末装置200に対して出力する(ステップS8)。例えば、情報提供装置10は、操作情報が、ログインを行う画面上でのテストケースを示す場合、各テストケースにおける操作を端末装置201に対して適用するための適用情報を端末装置201に配信する。同様に、情報提供装置10は、各テストケースにおける操作を端末装置202、203に対して適用するための適用情報を端末装置202、203に配信する。 Then, the information providing device 10 outputs the application information generated for each terminal device 200 to each terminal device 200 (step S8). For example, when the operation information indicates a test case on the screen for logging in, the information providing device 10 distributes the application information for applying the operation in each test case to the terminal device 201 to the terminal device 201. .. Similarly, the information providing device 10 distributes application information for applying the operation in each test case to the terminal devices 202 and 203 to the terminal devices 202 and 203.

このような場合、各端末装置200は、情報提供装置10から受付けた適用情報に従った操作が行われたものとして、それぞれアプリケーションを動作させる(ステップS9)。ここで、情報提供装置10から出力される適用情報には、操作が適用された結果を各端末装置200に収集させるための情報が含まれている。この結果、端末装置200は、操作の適用結果を収集し、収集した適用結果を情報提供装置10へと送信する(ステップS10)。このような場合、情報提供装置10は、適用結果のレポートを生成し、生成したレポートを操作者端末300に提供する(ステップS11)。例えば、情報提供装置10は、各端末装置200において実行されているOSやアプリケーションの種別とともに、どの端末装置200においてログインが成功若しくは失敗したか、いくつの端末装置200でログインが成功若しくは失敗したかといったレポートを提供する。このような処理の結果、情報提供装置10は、デバッグ等の試験結果の容易な理解を促進することができる。 In such a case, each terminal device 200 operates the application as if the operation according to the application information received from the information providing device 10 was performed (step S9). Here, the application information output from the information providing device 10 includes information for causing each terminal device 200 to collect the result of applying the operation. As a result, the terminal device 200 collects the application result of the operation and transmits the collected application result to the information providing device 10 (step S10). In such a case, the information providing device 10 generates a report of the application result and provides the generated report to the operator terminal 300 (step S11). For example, the information providing device 10 includes the type of OS and application executed in each terminal device 200, which terminal device 200 the login succeeded or failed, and how many terminal devices 200 the login succeeded or failed. Provide a report such as. As a result of such processing, the information providing device 10 can promote easy understanding of test results such as debugging.

〔1-6.生成処理の実装例について〕
上述したように、情報提供装置10は、アプリケーションの解析結果に基づいて、アプリケーションを試験するためのテストケースを生成する。換言すると、情報提供装置10は、操作対象に対して行われる利用者の操作の組合わせを自然言語で示した操作情報を生成する。このような生成処理において、情報提供装置10は、IAGA(Improved Adaptive Genetic Algorithm)を改良した手法により、操作情報の生成を行う。
[1-6. Implementation example of generation process]
As described above, the information providing device 10 generates a test case for testing the application based on the analysis result of the application. In other words, the information providing device 10 generates operation information indicating a combination of user operations performed on an operation target in natural language. In such a generation process, the information providing device 10 generates operation information by an improved method of IAGA (Improved Adaptive Genetic Algorithm).

以下、図2を用いて、情報提供装置10が実行する生成処理の実装例について説明する。図2は、実施形態に係る情報提供装置が実行する生成処理の実装例を示す図である。図2においては、情報提供装置10が操作情報を生成する処理の流れの一例について記載したが、実施形態は、これに限定されるものではない。情報提供装置10は、図2に示す処理以外にも、アプリケーションの解析結果、例えば、アプリケーションが有する各種の特徴に基づいて操作情報を生成するのであれば、任意の処理により、操作情報の生成を行ってよい。 Hereinafter, an implementation example of the generation process executed by the information providing device 10 will be described with reference to FIG. FIG. 2 is a diagram showing an implementation example of a generation process executed by the information providing device according to the embodiment. In FIG. 2, an example of a process flow in which the information providing device 10 generates operation information has been described, but the embodiment is not limited to this. In addition to the processing shown in FIG. 2, the information providing device 10 can generate operation information by any processing if it generates operation information based on the analysis result of the application, for example, various features of the application. You may go.

例えば、図2に示す例では、情報提供装置10は、操作データベースおよび組合わせデータベースに登録された情報を用いて、操作情報の生成を行う。操作データベースは、利用者が操作対象となるアプリケーションに対して行うことができるすべての操作内容(例えば、インスタラクション)、および、各操作内容を自然言語で示した情報が対応付けて登録されている。なお、操作データベースは、ユーザアクションデータベースと換言される場合がある。 For example, in the example shown in FIG. 2, the information providing device 10 generates operation information by using the information registered in the operation database and the combination database. In the operation database, all the operation contents (for example, installation) that the user can perform for the application to be operated, and the information indicating each operation content in natural language are registered in association with each other. .. The operation database may be referred to as a user action database.

組合わせデータベースは、アプリケーションに対して適用される利用者の操作の組合わせが登録される。ここで、組合わせデータベースには、例えば、アプリケーションが提供する機能を適切に発揮させるための操作の組合わせだけではなく、機能を適切に発揮させることができない操作の組合わせについても登録されることとなる。すなわち、組合わせデータベースには、アプリケーションの試験時に適用される操作の組合わせ、換言すると、テストシナリオを示す情報が登録される。なお、組合わせデータベースは、ポピュレーションデータベースと換言される場合がある。 In the combination database, a combination of user operations applied to the application is registered. Here, for example, not only the combination of operations for appropriately exerting the function provided by the application but also the combination of operations that cannot properly exert the function is registered in the combination database. Will be. That is, in the combination database, information indicating a combination of operations applied at the time of testing the application, in other words, a test scenario is registered. The combination database may be referred to as a population database.

なお、以下の説明では、利用者の操作の組合わせを組合わせ情報と総称する場合がある。また、組合わせデータベースには、初期状態において、組合わせ情報がすでに登録されていてもよく、登録されていなくともよい。 In the following description, the combination of user operations may be collectively referred to as combination information. Further, the combination information may or may not be registered in the combination database in the initial state.

まず、情報提供装置10は、アプリケーションからテキストを抽出する。例えば、情報提供装置10は、試験対象となるアプリケーションのコードを解析し、アプリケーションが画面上に表示するすべてのテキストを抽出する。そして、情報提供装置10は、抽出したテキストに基づいてアプリケーションのドメインを特定する。例えば、情報提供装置10は、ドメインモデルを用いて、アプリケーションが表示するテキストから、アプリケーションが提供する機能のドメインを特定する。 First, the information providing device 10 extracts text from the application. For example, the information providing device 10 analyzes the code of the application to be tested and extracts all the text displayed on the screen by the application. Then, the information providing device 10 identifies the domain of the application based on the extracted text. For example, the information providing device 10 uses a domain model to specify the domain of the function provided by the application from the text displayed by the application.

続いて、情報提供装置10は、アプリケーションが表示する画面をすべて特定する。例えば、情報提供装置10は、アプリケーションのコードを解析し、アプリケーションが表示させるすべての画面をそれぞれ特定する。なお、情報提供装置10は、以下に説明する処理を、特定した画面ごとに実行することとなる。 Subsequently, the information providing device 10 specifies all the screens displayed by the application. For example, the information providing device 10 analyzes the code of the application and identifies all the screens displayed by the application. The information providing device 10 will execute the process described below for each specified screen.

続いて、情報提供装置10は、特定した画面を介して適用される機能を特定する。例えば、情報提供装置10は、特定した画面ごとに、その画面上に配置されたオブジェクトの種別や画面上において適用可能な操作の内容に基づいて、その画面で提供される機能の特定を行う。ここで、各画面で提供される機能の特定を行う場合、情報提供装置10は、スクリーンモデルを用いて、アプリケーションのドメインと、各画面の特徴とに基づいて、アプリケーションが提供する機能の特定を行う。 Subsequently, the information providing device 10 identifies a function to be applied via the specified screen. For example, the information providing device 10 specifies the function provided on the screen based on the type of the object arranged on the screen and the content of the operation applicable on the screen for each specified screen. Here, when specifying the function provided on each screen, the information providing device 10 uses the screen model to specify the function provided by the application based on the domain of the application and the characteristics of each screen. conduct.

例えば、情報提供装置10は、アプリケーションのドメインと、そのアプリケーションが表示する画面のうちある画面の特徴(例えば、オブジェクトの種類、数、外観、その画面で実行可能な各種の操作等)とを示す情報を入力した際い、その画面で提供される機能を示す情報を出力するように学習が行われたモデルをスクリーンモデルとして保持する。そして、情報提供装置10は、スクリーンモデルに、試験対象となるアプリケーションのドメインと、アプリケーションが表示する画面の特徴とを示す情報を入力することで、その画面で提供される機能を特定(推定)する。 For example, the information providing device 10 indicates the domain of an application and the characteristics of a certain screen among the screens displayed by the application (for example, the type, number, appearance, various operations that can be performed on the screen, and the like). When inputting information, a model trained to output information indicating the function provided on the screen is retained as a screen model. Then, the information providing device 10 identifies (estimates) the function provided on the screen by inputting information indicating the domain of the application to be tested and the characteristics of the screen displayed by the application into the screen model. do.

続いて、情報提供装置10は、操作データベースと組合わせデータベースとを参照し、特定した機能を発揮させるための操作を組合わせた組合わせ候補を生成・取得する。例えば、操作データベースには、アプリケーションが発揮する機能と、その機能を発揮させるために利用者が行う1つ又は複数の操作とが対応付けて登録されている。情報提供装置10は、操作データベースを参照し、特定した機能と対応付けられた操作を特定する。そして、情報提供装置10は、特定した操作をランダムな順序でランダムな数だけ組合わせた組合わせ候補を所定の数だけ生成する。 Subsequently, the information providing device 10 refers to the operation database and the combination database, and generates / acquires a combination candidate in which the operations for exerting the specified function are combined. For example, in the operation database, a function exhibited by an application and one or a plurality of operations performed by a user in order to exert the function are registered in association with each other. The information providing device 10 refers to the operation database and identifies the operation associated with the specified function. Then, the information providing device 10 generates a predetermined number of combination candidates in which a random number of specified operations are combined in a random order.

例えば、操作データベースには、「ログイン」という機能に対して、「ユーザIDの入力」、「パスワードの入力」、「ログインボタンをクリック」といった3つの操作が対応付けて操作データベースに登録されているものとする。このような場合、情報提供装置10は、「ログイン」に対応する組合わせ候補として、「ユーザIDの入力」、「ユーザIDの入力」、「ユーザIDの入力」というように同一の操作を所定の数だけ繰り返す組合わせ候補や、「ユーザIDの入力」、「ログインボタンをクリック」というように、一部の操作を行わない組合わせの候補、その他実行する順番を変更した組合わせの候補や、実行する操作の数が異なる複数の組合わせの候補等を生成する。なお、情報提供装置10は、例えば、ランダムに10個以内の操作を組合わせた組合わせの候補を生成してもよい。 For example, in the operation database, three operations such as "input user ID", "enter password", and "click the login button" are associated with the function "login" and registered in the operation database. It shall be. In such a case, the information providing device 10 prescribes the same operation such as "input of user ID", "input of user ID", and "input of user ID" as combination candidates corresponding to "login". Candidates for combinations that repeat as many times as , Generate multiple combinations of candidates with different numbers of operations to perform. The information providing device 10 may generate, for example, a combination candidate that randomly combines up to 10 operations.

また、組合わせデータベースには、後述する処理により生成された組合わせ情報が機能と対応付けて登録されている。情報提供装置10は、組合わせデータベースを参照し、試験対象となるアプリケーションが発揮する機能として特定した機能と対応付けられた組合わせ情報を組合わせ候補として取得する。 Further, the combination information generated by the process described later is registered in the combination database in association with the function. The information providing device 10 refers to the combination database and acquires the combination information associated with the function specified as the function exhibited by the application to be tested as a combination candidate.

続いて、情報提供装置10は、組合わせ候補ごとに、機能が発揮されるまでのステップ数を計数する。例えば、情報提供装置10は、試験対象となる画面において、各組合わせ候補に含まれる操作を実行し、画面が他の画面に遷移するまでに機能が適切に発揮されたか否かを判定するとともに、画面が他の画面に遷移するまでに実行された操作の数をステップ数として係数する。なお、かかるステップ数の係数は、フィットネスカリキュレーションと換言される場合がある。 Subsequently, the information providing device 10 counts the number of steps until the function is exhibited for each combination candidate. For example, the information providing device 10 executes an operation included in each combination candidate on the screen to be tested, determines whether or not the function is properly exhibited by the time the screen transitions to another screen. , The number of operations performed before the screen transitions to another screen is coefficiented as the number of steps. The coefficient of the number of steps may be referred to as fitness curation.

続いて、情報提供装置10は、所定の回数処理をループしたか否かを判定する。そして、情報提供装置10は、所定の回数処理をループしていない場合、機能が発揮されたと判定した組合わせ候補の中から親となる組合わせ候補の組を選択する。そして、情報提供装置10は、親として選択された組合わせ候補に含まれる操作をランダムに組合わせた新たな組合わせ候補を生成する。また、情報提供装置10は、新たに生成した組合わせ候補に対して、ランダムに操作を追加もしくは変更した新な組合わせ候補を生成する。そして、情報提供装置10は、組合わせ候補ごとに機能が適切に発揮されたか否か、機能が発揮されるまでのステップ数の係数を再度実行する。 Subsequently, the information providing device 10 determines whether or not the processing has been looped a predetermined number of times. Then, when the information providing device 10 does not loop the processing a predetermined number of times, the information providing device 10 selects a pair of combination candidates to be a parent from the combination candidates determined to have exerted the function. Then, the information providing device 10 generates a new combination candidate that randomly combines the operations included in the combination candidate selected as the parent. Further, the information providing device 10 generates a new combination candidate in which an operation is randomly added or changed with respect to the newly generated combination candidate. Then, the information providing device 10 re-executes the coefficient of the number of steps until the function is exerted, whether or not the function is properly exerted for each combination candidate.

すなわち、情報提供装置10は、組合わせ候補ごとに、機能が発揮されるまでのステップの係数、操作をクロスオーバーさせた新たな組合わせ候補の生成、および、操作をミューテーションさせた組合わせ候補の生成を繰り返し実行する。このような処理を行うことで、情報提供装置10は、試験対象となるアプリケーションの画面ごとに、様々な操作を組合わせた組合わせ候補を生成することができる。 That is, the information providing device 10 generates a new combination candidate by crossing over the coefficient of the step until the function is exhibited, and the combination candidate by mutating the operation for each combination candidate. Is repeatedly generated. By performing such processing, the information providing device 10 can generate a combination candidate that combines various operations for each screen of the application to be tested.

また、情報提供装置10は、処理を所定の回数ループさせた場合、ステップ数が所定の条件を満たす組合わせ候補を組合わせ情報として組合わせデータベースに登録する。例えば、情報提供装置10は、各組合わせ候補に含まれる操作を実行した際に機能を発揮するまでのステップ数の分布を特定し、特定した分布に基づいて、ステップ数が所定の条件を満たす組合わせ候補を登録対象とする。この際、情報提供装置10は、ステップ数が少ない組合わせ候補を優先して選択するのではなく、ある程度ステップ数が多い組合わせ候補を選択するようにしてもよい。 Further, when the processing is looped a predetermined number of times, the information providing device 10 registers a combination candidate whose number of steps satisfies a predetermined condition in the combination database as combination information. For example, the information providing device 10 specifies a distribution of the number of steps until the function is exhibited when the operation included in each combination candidate is executed, and the number of steps satisfies a predetermined condition based on the specified distribution. Combination candidates are subject to registration. At this time, the information providing device 10 may select a combination candidate having a large number of steps to some extent instead of preferentially selecting a combination candidate having a small number of steps.

そして、情報提供装置10は、組合わせデータベースに登録された組合わせ情報から、操作の内容を自然言語で示した操作情報を生成する。例えば、情報提供装置10は、組合わせ情報に含まれる各操作を特定し、特定した操作を示す自然言語を操作データベースから特定する。そして、情報提供装置10は、特定した自然言語に基づいて、操作情報が示す操作の組合わせを自然言語で示した操作情報を生成する。 Then, the information providing device 10 generates operation information indicating the contents of the operation in natural language from the combination information registered in the combination database. For example, the information providing device 10 identifies each operation included in the combination information, and specifies a natural language indicating the specified operation from the operation database. Then, the information providing device 10 generates operation information indicating a combination of operations indicated by the operation information in the natural language based on the specified natural language.

〔1-8.適用処理の流れの一例について〕
続いて、図3を用いて、情報提供装置10が実行する適用処理の実装例について説明する。図3は、実施形態に係る情報提供装置が実行する適用処理の実装例を示す図である。ここで、情報提供装置10は、情報提供装置10が提供する操作情報以外にも、アプリケーションが発揮する機能のうち、試験対象となる機能を自然言語で示す情報から、適用情報を生成する機能を有する。そこで、図3に示す例では、試験対象となる機能を自然言語で示す情報から、適用情報を生成する機能の流れについて記載した。情報提供装置10は、このような機能の一部を用いて、操作情報から適用情報を生成し、試験を実行することとなる。
[1-8. About an example of the flow of application processing]
Subsequently, an implementation example of the application process executed by the information providing device 10 will be described with reference to FIG. FIG. 3 is a diagram showing an implementation example of an application process executed by the information providing device according to the embodiment. Here, the information providing device 10 has a function of generating application information from information indicating the function to be tested in natural language among the functions exhibited by the application, in addition to the operation information provided by the information providing device 10. Have. Therefore, in the example shown in FIG. 3, the flow of the function of generating the application information from the information indicating the function to be tested in natural language is described. The information providing device 10 uses a part of such a function to generate application information from the operation information and execute the test.

例えば、情報提供装置10は、操作情報となる自然言語を操作者端末300から取得する。例えば、情報提供装置10は、「ログインをしたらトップ画面が表示される」といった試験におけるアプリケーションの機能や、その機能が提供された際における結果を示す情報を取得する。 For example, the information providing device 10 acquires a natural language as operation information from the operator terminal 300. For example, the information providing device 10 acquires the function of the application in the test such as "the top screen is displayed after logging in" and the information indicating the result when the function is provided.

ここで、「ログイン」とは、例えば、SNS等、端末装置200や端末装置200が実行するあぷりケーションを介して提供されるサービスを構成するサービス、すなわち、構成サービスであって、利用者が所定の操作を行った際に提供されるサービスであるといえる。このような構成サービスには、例えば、「ログイン」のみならず、利用者が投稿する各種投稿情報の受付や、QRコードを用いた支払においてQRコードを撮影するための機能等が含まれることとなる。 Here, the "login" is, for example, a service that constitutes a service provided through a terminal device 200 or an application executed by the terminal device 200, such as an SNS, that is, a configuration service that the user can use. It can be said that it is a service provided when a predetermined operation is performed. Such a configuration service includes, for example, not only "login" but also a function for accepting various posted information posted by a user and for taking a QR code in payment using a QR code. Become.

このような場合、情報提供装置10は、抽出ユニットを用いて、自然言語に含まれる単語のうち、端末装置200において行われる行動や、その行動が行われた際に生じる結果を示す単語を抽出し、抽出した単語をまとめた特徴情報を生成する。すなわち、情報提供装置10は、操作情報から、利用者の行動を示す単語を行動ごとに抽出する。 In such a case, the information providing device 10 uses the extraction unit to extract words included in the natural language that indicate an action performed by the terminal device 200 and a result that occurs when the action is performed. And generate feature information that summarizes the extracted words. That is, the information providing device 10 extracts a word indicating a user's action from the operation information for each action.

例えば、情報提供装置10は、「ログインをしたらトップコンテンツが表示される」といった操作情報から「ログイン」といった利用者の行動(すなわち、操作対象となる行動)や、「トップコンテンツが表示」といった、行動が行われた際における端末装置200の状態(すなわち、行動が行われた結果)を示す単語を抽出する。そして、情報提供装置10は、抽出した単語を示す特徴情報を生成する。なお、このような処理は、例えば、CucumberやTurnipといったGherkinと呼ばれるテスト記述言語フォーマットに関する各種の技術が採用可能である。 For example, the information providing device 10 can change from operation information such as "when you log in, the top content is displayed" to a user action such as "login" (that is, an action to be operated) or "top content is displayed". A word indicating the state of the terminal device 200 (that is, the result of the action) when the action is performed is extracted. Then, the information providing device 10 generates feature information indicating the extracted word. For such processing, various techniques related to a test description language format called Gherkin, such as Cucumber and Turnip, can be adopted.

続いて、情報提供装置10は、ドライバユニットを用いて、自然言語をデバイス用コマンドに変換するために使用されるステップ情報(ステップ関数)と、コマンドの送信前に対象をポーリングすることにより、ステップ関数をサポートするために使用されるアシスタント情報(アシスタント関数)とを生成する。 Subsequently, the information providing device 10 uses the driver unit to poll the step information (step function) used for converting the natural language into a command for the device and the target before sending the command, thereby performing a step. Generates assistant information (assistant function) used to support the function.

例えば、情報提供装置10は、ステップ情報を生成する場合、特徴情報から、端末装置200において生じる操作の内容や操作の順番、操作が行われた際の結果等を特定する。換言すると、情報提供装置10は、利用者の行動を、操作対象となる端末装置200等のハードウェアや、ハードウェアにおいて各種実行させているソフトウェアに対する操作へと翻訳する処理を実行する。 For example, when the information providing device 10 generates step information, the information providing device 10 specifies from the feature information the content of the operation that occurs in the terminal device 200, the order of the operations, the result when the operation is performed, and the like. In other words, the information providing device 10 executes a process of translating the user's behavior into an operation on the hardware such as the terminal device 200 to be operated and the software executed in the hardware.

例えば、情報提供装置10は、特徴情報が「ログイン」という行動を示す場合、1番目に実行する「ログインコンテンツの表示」、2番目に実行する「ユーザIDの入力」、3番目に実行する「パスワードの入力」、および4番目に実行する「ログインボタンの押下」といった複数の操作と各操作の順番とを示すステップ情報(ステップ関数)を生成する。すなわち、情報提供装置10は、「ログイン」単語が示す行動が行われる場合に端末装置200に対して行われる各種操作や各操作が行われる順序を特定し、特定した操作や順序を示すステップ情報を生成する。 For example, when the feature information indicates the action of "login", the information providing device 10 first executes "display of login content", second executes "input of user ID", and third executes "display of login content". Generates step information (step function) indicating a plurality of operations such as "input of password" and "press of login button" to be executed fourth and the order of each operation. That is, the information providing device 10 specifies various operations performed on the terminal device 200 and the order in which each operation is performed when the action indicated by the "login" word is performed, and step information indicating the specified operation or order. To generate.

また、情報提供装置10は、特徴情報に「トップコンテンツが表示」といった行動の結果が含まれている場合、このような結果が生じたか否かを判定するためのアシスタント情報(アシスタント関数)を生成する。例えば、情報提供装置10は、「トップ画面が表示」といった行動の結果が含まれる場合、「トップコンテンツが表示されたか否かを判定する」といった処理を示すアシスタント情報を生成する。なお、情報提供装置10は、例えば、ステップ情報が示す各種操作が行われた際に生じる所定の結果が生じているか否かを判定するためのアシスタント情報を生成してもよい。例えば、情報提供装置10は、ステップ情報が「ログインコンテンツの表示」といった操作を含む場合は、「ログインコンテンツが表示されたか否かを判定する」といった処理を示すアシスタント情報を生成してもよい。 Further, when the feature information includes the result of an action such as "the top content is displayed", the information providing device 10 generates assistant information (assistant function) for determining whether or not such a result has occurred. do. For example, the information providing device 10 generates assistant information indicating a process such as "determining whether or not the top content is displayed" when the result of an action such as "the top screen is displayed" is included. The information providing device 10 may generate assistant information for determining whether or not a predetermined result generated when various operations indicated by the step information are performed, for example. For example, when the step information includes an operation such as "displaying login content", the information providing device 10 may generate assistant information indicating a process such as "determining whether or not the login content is displayed".

すなわち、情報提供装置10は、自然言語で記述された操作情報に基づいて、操作情報が示す行動を実現するための各種の操作や操作の順序を示すステップ情報を生成する。また、情報提供装置10は、各ステップ情報が示す操作が行われた際に生じる結果が実際に生じているか否かを判定するために行われる処理の内容を示すアシスタント情報を生成する。 That is, the information providing device 10 generates step information indicating various operations and the order of operations for realizing the actions indicated by the operation information, based on the operation information described in natural language. Further, the information providing device 10 generates assistant information indicating the content of the process performed for determining whether or not the result generated when the operation indicated by each step information is actually performed.

なお、ステップ情報やアシスタント情報は、対象となる端末装置200が実行するOSの種別やアプリケーションの種別、若しくはこれらの組合わせごとに生成される。このため、ドライバユニットは、操作情報から生成された特徴情報が示すユーザアクション(行動)において生じる各種の入力を取得するとともに、ユーザアクションの対象となるデバイスやアプリケーション、操作対象となる要素の識別を行う。そして、ドライバユニットは、識別結果に基づいて、ステップ情報の生成を行う。 Note that step information and assistant information are generated for each type of OS or application executed by the target terminal device 200, or a combination thereof. Therefore, the driver unit acquires various inputs generated in the user action (behavior) indicated by the feature information generated from the operation information, and identifies the device or application to be the target of the user action and the element to be operated. conduct. Then, the driver unit generates step information based on the identification result.

同様に、情報提供装置10は、ステップ情報が示す各操作が行われたことを確実にするために定期的な間隔で、対象の状態を収集する(ポーリングおよびクエリする)ためのアシスタント情報を生成する。より詳細には、情報提供装置10は、各対象ごとに、ステップ情報が示す操作が行われた際に生じる対象の状態を収集し、収集した状態が所定の条件を満たすか否かを判定するためのアシスタント情報を生成する。換言すると、アシスタント情報は、ステップ情報が示すある操作が行われた結果が適正であるかを判定し、適正であると判定された場合に、ステップ情報が示す次の操作を行わせるための条件情報と見做すことができる。 Similarly, the information providing device 10 generates assistant information for collecting (polling and querying) the target state at regular intervals to ensure that each operation indicated by the step information has been performed. do. More specifically, the information providing device 10 collects the state of the target generated when the operation indicated by the step information is performed for each target, and determines whether or not the collected state satisfies a predetermined condition. Generate assistant information for. In other words, the assistant information is a condition for determining whether the result of performing a certain operation indicated by the step information is appropriate, and if it is determined to be appropriate, performing the next operation indicated by the step information. It can be regarded as information.

続いて、情報提供装置10は、生成ユニットを用いて、ステップ情報およびアシスタント情報が示す操作や各種の判定を対象に行わせるための適用情報を生成する。換言すると、情報提供装置10は、抽出ユニットにより抽出された単語が示す行動が行われる場合に端末装置200に対して行われる操作を適用するための適用情報を生成する。 Subsequently, the information providing device 10 uses the generation unit to generate application information for performing the operation and various determinations indicated by the step information and the assistant information. In other words, the information providing device 10 generates application information for applying the operation performed on the terminal device 200 when the action indicated by the word extracted by the extraction unit is performed.

このような生成ユニットは、例えば、アッピウム等、各種の端末装置200やアプリケーションの自動テストを行うための各種フレームワークにより実現可能である。より具体的には、情報提供装置10は、ステップ情報が示す各操作をステップ情報が示す順番で対象に適用するとともに、アシスタント情報が示す条件に従って各操作の結果が適切であるかを判定させるためのスクリプトを生成する。 Such a generation unit can be realized by various frameworks for performing automatic testing of various terminal devices 200 and applications such as Appium. More specifically, the information providing device 10 applies each operation indicated by the step information to the target in the order indicated by the step information, and causes the information providing device 10 to determine whether the result of each operation is appropriate according to the conditions indicated by the assistant information. Generate a script for.

このようにして生成されたスクリプトは、「ログイン」等の構成サービスを提供する際に行われうる利用者の行動、すなわち、構成サービスと対応する操作を端末装置200に適用させるためのスクリプトである。このように、情報提供装置10は、所定の対象が提供するサービスを構成する構成サービスであって、利用者が所定の操作を行った際に提供される構成サービスを自然言語で示す行動情報を取得すると、取得した行動情報から、行動情報が示す構成サービスと対応する所定の操作を前記対象に対して適用するための適用情報を生成することとなる。 The script generated in this way is a script for applying the user's action that can be performed when providing the configuration service such as "login", that is, the operation corresponding to the configuration service to the terminal device 200. .. As described above, the information providing device 10 is a configuration service that constitutes a service provided by a predetermined target, and provides behavioral information indicating the configuration service provided when the user performs a predetermined operation in natural language. When acquired, application information for applying a predetermined operation corresponding to the configuration service indicated by the behavior information to the target is generated from the acquired behavior information.

そして、情報提供装置10は、適用情報を、対象となる端末装置200へと出力する。例えば、情報提供装置10は、所定の情報処理装置内で再現された仮想的な端末装置ETや、スマートフォン等の端末装置RT、クラウド上に存在する各種の端末装置CTに対して、各端末装置200ごとに生成された適用情報を送信する。この結果、情報提供装置10は、自然言語で記述された操作情報が示す行動が行われた場合の、端末装置200の動作を試験することができる。 Then, the information providing device 10 outputs the application information to the target terminal device 200. For example, the information providing device 10 is a terminal device for a virtual terminal device ET reproduced in a predetermined information processing device, a terminal device RT such as a smartphone, and various terminal device CTs existing on the cloud. The application information generated every 200 is transmitted. As a result, the information providing device 10 can test the operation of the terminal device 200 when the action indicated by the operation information described in natural language is performed.

なお、上述した例において、ドライバユニットは、抽出ユニットと生成ユニットとの組合わせごとにされればよい。例えば、ドライバユニットは、実装された抽出ユニットが採用するフォーマットのテスト記述言語から、生成ユニットが識別可能な形式のステップ情報やアシスタント情報を生成すればよい。このようなドライバユニットは、例えば、抽出ユニットにより生成されるテスト記述言語が示す行動と、その行動を実現するための操作内容や操作順序とを対応付けた辞書データや、各操作と、各操作が行われた結果が適正であるかを判定するための条件とを対応付けた辞書データにより、ルールベースで動作する任意のプログラムが採用可能である。 In the above-mentioned example, the driver unit may be set for each combination of the extraction unit and the generation unit. For example, the driver unit may generate step information and assistant information in a format that can be identified by the generation unit from the test description language in the format adopted by the implemented extraction unit. Such a driver unit is, for example, dictionary data in which an action indicated by a test description language generated by an extraction unit is associated with an operation content or an operation order for realizing the action, each operation, and each operation. Any program that operates on a rule basis can be adopted by the dictionary data associated with the condition for determining whether the result of the above is appropriate.

例えば、ドライバユニットは、特徴情報が「ログイン」を示す場合、辞書データを参照し、「ログイン」と対応付けられた各操作「ログインコンテンツの表示」、「ユーザIDの入力」、「パスワードの入力」、および「ログインボタンの押下」を特定する。そして、ドライバユニットは、特定した各処理を端末装置200に実行させるための適用情報を生成ユニットに生成させるためのステップ情報を生成すればよい。また、ドライバユニットは、辞書データを参照し、特定した各操作と対応付けられた条件を特定する。そして、ドライバユニットは、特定した条件を満たすか否かを端末装置200に実行させるための適用情報を生成ユニットに生成させるためのアシスタント情報を生成すればよい。このような処理を行うプログラムであれば、情報提供装置10は、任意のプログラムをドライバユニットとして採用可能である。 For example, when the feature information indicates "login", the driver unit refers to the dictionary data and performs each operation "display login content", "enter user ID", and "enter password" associated with "login". , And "press the login button". Then, the driver unit may generate step information for causing the generation unit to generate application information for causing the terminal device 200 to execute each specified process. Further, the driver unit refers to the dictionary data and specifies the condition associated with each specified operation. Then, the driver unit may generate assistant information for causing the generation unit to generate application information for causing the terminal device 200 to execute whether or not the specified condition is satisfied. As long as it is a program that performs such processing, the information providing device 10 can adopt any program as a driver unit.

なお、情報提供装置10は、操作情報を受け付けた場合、ドライバユニットを用いて、操作情報が自然言語で示す各操作を示すステップ情報やアシスタント情報の生成を行う。そして、情報提供装置10は、生成したステップ情報やアシスタント情報から、生成ユニットを用いて、適用情報の生成を行う。このような処理の結果、情報提供装置10は、様々な操作内容をテストケースとして、各端末装置200に適用することができる。 When the information providing device 10 receives the operation information, the driver unit is used to generate step information and assistant information indicating each operation indicated by the operation information in natural language. Then, the information providing device 10 generates application information from the generated step information and assistant information by using the generation unit. As a result of such processing, the information providing device 10 can apply various operation contents as test cases to each terminal device 200.

〔2.判定処理について〕
上述したように、情報提供装置10は、各端末装置200にインストールさせるアプリケーションが適切に動作するかの試験を行う。一方で、アプリケーションが実現するサービスには、例えば、QRコードを用いた決済等、様々な種別の端末装置200を介して共通するサービスを提供するものが存在する。
[2. Judgment process]
As described above, the information providing device 10 tests whether the application installed in each terminal device 200 operates properly. On the other hand, among the services realized by the application, there are those that provide common services via various types of terminal devices 200, such as payment using a QR code.

しかしながら、同一のアプリケーションであっても、端末装置200ごとに見た目が異なる場合がある。例えば、端末装置201と端末装置202が同一のOSを実行する端末であったとしても、画面の解像度が異なる場合には、見た目が変化してしまう恐れがある。このようにアプリケーションが提供する画面(以下、「コンテンツ」と記載する場合がある。)の見た目が変化した場合、アプリケーションの利用時に不要な心配を与える必要がある。また、例えば、各種オブジェクトの配置が変化した場合、利用者が正しい操作を行うことができない場合がある。 However, even for the same application, the appearance may differ depending on the terminal device 200. For example, even if the terminal device 201 and the terminal device 202 are terminals that execute the same OS, the appearance may change if the screen resolutions are different. When the appearance of the screen provided by the application (hereinafter, may be referred to as "content") changes in this way, it is necessary to give unnecessary anxiety when using the application. Further, for example, when the arrangement of various objects is changed, the user may not be able to perform a correct operation.

より具体的な例を挙げる。例えば、あるアプリケーションがログインのために、ユーザIDを入力するためのテキストボックスと、そのテキストのテキストボックスにユーザIDを入力する旨を示すテキスト(例えば、「ユーザID」)、およびパスワードを入力するためのテキストボックスと、そのテキストのテキストボックスにパスワードを入力する旨を示すテキスト(例えば、「パスワード」)とを表示するものとする。 Here is a more specific example. For example, enter a text box for an application to enter a user ID for login, a text indicating that the user ID will be entered in the text box of the text (for example, "user ID"), and a password. A text box for this purpose and a text (for example, "password") indicating that a password is to be entered in the text box of the text shall be displayed.

ここで、端末装置201が、ユーザIDを入力するためのテキストボックスと、「ユーザID」といったテキストとを横に並べて表示し、パスワードを入力するためのテキストボックスと、「パスワード」といったテキストとを横に並べて表示した場合、端末装置201の利用者は、正しくユーザIDとパスワードとをテキストボックスに入力することができると考えられる。しかしながら、例えば、端末装置202がテキストとテキストボックスとを横に並べる画面解像度を有していない場合、テキストやテキストボックスの配置が変化してしまい、テキストボックスにユーザIDを入力するのか、パスワードを入力するのかを正しくユーザに伝えることができなくなる恐れがある。 Here, the terminal device 201 displays a text box for inputting a user ID and a text such as "user ID" side by side, and displays a text box for inputting a password and a text such as "password". When displayed side by side, it is considered that the user of the terminal device 201 can correctly input the user ID and the password in the text box. However, for example, if the terminal device 202 does not have a screen resolution for arranging the text and the text box side by side, the arrangement of the text and the text box changes, and the user ID is entered in the text box or the password is entered. There is a risk that it will not be possible to tell the user correctly whether to enter.

また、端末装置200が実行するOSや画面の設定、ハードウェアの特性によっては、アプリケーションが表示するサービスや企業のロゴの形状や色彩、アプリケーションが提供するコンテンツにおいて共通して利用される色彩(いわゆるテーマカラー)が想定していた外観と異なる外観で表示されてしまう恐れがある。 Further, depending on the OS and screen settings executed by the terminal device 200 and the characteristics of the hardware, the shapes and colors of the services displayed by the application and the corporate logo, and the colors commonly used in the content provided by the application (so-called). There is a risk that the appearance of the theme color) will be different from what was expected.

このようなアプリケーションが提供するコンテンツの外観的な同一性の問題は、アプリケーションの開発時のみならず、アプリケーションの更新時やアプリケーションが提供するサービスの変更時、追加時等にも生じうる。換言すると、アプリケーションが提供するコンテンツは、アプリケーションを実行する端末装置200のハードウェアもしくはソフトウェアといったプラットフォーム等、様々な理由により、アプリケーションが同じコードであっても外観的な同一性が担保できない恐れがある。 The problem of the appearance identity of the content provided by such an application may occur not only at the time of developing the application but also at the time of updating the application, changing the service provided by the application, adding the content, and the like. In other words, the content provided by the application may not be able to guarantee the appearance identity even if the application has the same code due to various reasons such as the platform such as the hardware or software of the terminal device 200 that executes the application. ..

そこで、情報提供装置10は、上述したアプリケーションの試験において、コンテンツの外観的な同一性が担保されているかを判定する判定処理を実行する。すなわち、利用者が各コンテンツを閲覧した際に、同一アプリケーションによる同一構成サービスを実現するためのコンテンツであると判断するか否かの判定を行う。 Therefore, the information providing device 10 executes a determination process for determining whether or not the appearance identity of the contents is guaranteed in the above-mentioned application test. That is, when the user browses each content, it is determined whether or not it is determined that the content is for realizing the same configuration service by the same application.

例えば、情報提供装置10は、端末装置200とは別に準備された所定の端末装置を基準端末とし、端末装置200を判定装置とする。そして、情報提供装置10は、基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する。そして、情報提供装置10は、基準コンテンツが有する特徴と、比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定する。 For example, the information providing device 10 uses a predetermined terminal device prepared separately from the terminal device 200 as a reference terminal, and the terminal device 200 as a determination device. Then, the information providing device 10 acquires the reference content displayed when the reference terminal executes the predetermined application and the comparison content displayed when the comparison terminal to be compared executes the predetermined application. .. Then, the information providing device 10 determines whether or not the similarity between the feature of the reference content and the feature of the comparative content satisfies a predetermined condition.

例えば、情報提供装置10は、アプリケーションが各端末装置200に表示させるコンテンツの同一性を判定する場合、基準端末と比較端末とに同一のサービスを提供するアプリケーション(例えば、同一コードのアプリケーションのみならず、同一のサービスを提供するコードであって、それぞれ異なるOS上で実行されるアプリケーション)をインストールする。続いて、情報提供装置10は、アプリケーションが基準端末に表示させたコンテンツである基準コンテンツと、アプリケーションが比較端末に表示させたコンテンツである比較コンテンツとを取得する。 For example, when the information providing device 10 determines the identity of the content displayed on each terminal device 200, the information providing device 10 provides not only an application that provides the same service to the reference terminal and the comparison terminal (for example, an application having the same code). , Applications that provide the same service and run on different OSs) are installed. Subsequently, the information providing device 10 acquires the reference content, which is the content displayed on the reference terminal by the application, and the comparison content, which is the content displayed on the comparison terminal by the application.

そして、情報提供装置10は、基準コンテンツと比較コンテンツとの類似性を判定し、類似性が所定の条件を満たす場合に、比較コンテンツとして表示されるコンテンツが正常なコンテンツ、すなわち、利用者に提供された際に基準コンテンツと同じサービスのコンテンツであると判断されうるコンテンツであると判定する。このような処理の結果、情報提供装置10は、例えば、マルチプラットフォームで提供されるサービスを提供するアプリケーションの開発時や、アプリケーションの更新時において、適切なコンテンツが提供されているかを自動的に判定することができ、試験の手間をさらに削減することができる。 Then, the information providing device 10 determines the similarity between the reference content and the comparison content, and when the similarity satisfies a predetermined condition, the content displayed as the comparison content is provided to the normal content, that is, the user. When it is done, it is determined that the content can be determined to be the content of the same service as the reference content. As a result of such processing, the information providing device 10 automatically determines whether or not appropriate content is provided, for example, when developing an application that provides a service provided on a multi-platform or when updating an application. This can be done, and the labor of the test can be further reduced.

〔2-1.判定処理の流れの一例について〕
以下、図4を用いて、情報提供装置10が実行する判定処理の流れの一例を説明する。図4は、実施形態に係る情報提供装置が実行する判定処理の流れの一例を示す図である。なお、図4に示す処理は、図1に示す試験と平行に行われており、各端末装置200には、試験対象となるアプリケーションがインストール済みであるものとする。また、図4に示す例では、操作者端末300がアプリケーションを情報提供装置10に提供する例について説明するが、例えば、操作者端末300は、実際に端末装置200にインストールされるアプリケーションに加えて、例えば、デザインチームが作成したフルスクリーンアプリのモックアップ、アイコン、デザインガイドラインに含むコンポーネントなど、基準コンテンツとして使用され得る画像ファイルを提供してもよい。
[2-1. About an example of the flow of judgment processing]
Hereinafter, an example of the flow of the determination process executed by the information providing device 10 will be described with reference to FIG. FIG. 4 is a diagram showing an example of a flow of determination processing executed by the information providing device according to the embodiment. The process shown in FIG. 4 is performed in parallel with the test shown in FIG. 1, and it is assumed that the application to be tested is already installed in each terminal device 200. Further, in the example shown in FIG. 4, an example in which the operator terminal 300 provides an application to the information providing device 10 will be described. For example, the operator terminal 300 is in addition to the application actually installed in the terminal device 200. , For example, you may provide image files that can be used as reference content, such as mockups of full-screen apps created by the design team, icons, components included in design guidelines, and so on.

まず、操作者端末300は、基準端末BTに試験対象となるアプリケーションをインストールする(ステップS20)。このような場合、操作者は、基準端末BTにアプリケーションが表示させたコンテンツのスナップショットを基準端末BTで取得する。そして、操作者端末300は、スナップショットを基準コンテンツとして取得する(ステップS21)。 First, the operator terminal 300 installs the application to be tested on the reference terminal BT (step S20). In such a case, the operator acquires a snapshot of the content displayed by the application on the reference terminal BT on the reference terminal BT. Then, the operator terminal 300 acquires the snapshot as the reference content (step S21).

続いて、操作者端末300は、取得した基準コンテンツをベースラインとして、所定のクラウドサーバCSに登録する(ステップS22)。そして、操作者端末300は、試験対象となるアプリケーションを情報提供装置10へと提供する(ステップS23)。なお、ステップS23は、図1に示すステップS2と対応する。 Subsequently, the operator terminal 300 registers the acquired reference content as a baseline in a predetermined cloud server CS (step S22). Then, the operator terminal 300 provides the application to be tested to the information providing device 10 (step S23). Note that step S23 corresponds to step S2 shown in FIG.

このような場合、情報提供装置10は、図1に示す各処理(ステップS3~S11)と平行して、判定処理を実行する。例えば、情報提供装置10は、クラウドサーバCSからベースラインを取得する(ステップS24)。そして、情報提供装置10は、図1に示すステップS3~S7を実行し、図4に示すように、適用情報を出力する(ステップS25)。なお、ステップS25は、図1に示すステップS8に対応する。 In such a case, the information providing device 10 executes the determination process in parallel with each process (steps S3 to S11) shown in FIG. For example, the information providing device 10 acquires a baseline from the cloud server CS (step S24). Then, the information providing device 10 executes steps S3 to S7 shown in FIG. 1 and outputs application information as shown in FIG. 4 (step S25). Note that step S25 corresponds to step S8 shown in FIG.

ここで、情報提供装置10は、適用情報として、アプリケーションが画面上に表示させたコンテンツのスナップショットを比較コンテンツとして取得し、適用結果に含めるように端末装置200を動作させる適用情報を生成する。このような適用情報は、例えば、画面の表示時にスクリーンショットを取得するといった自然言語から、上述した適用処理により適用情報を生成することで実現可能である。例えば、情報提供装置10は、図1に示ステップS6において、試験対象となる端末装置200にスナップショットを取得し、出力させるための操作情報を生成し、ステップS7において、スナップショットを取得し、適用結果として出力させるための適用情報を生成すればよい。 Here, the information providing device 10 acquires, as application information, a snapshot of the content displayed on the screen by the application as comparison content, and generates application information for operating the terminal device 200 so as to be included in the application result. Such application information can be realized by generating application information by the above-mentioned application process from a natural language such as taking a screenshot when the screen is displayed. For example, the information providing device 10 acquires operation information for acquiring and outputting a snapshot to the terminal device 200 to be tested in step S6 shown in FIG. 1, and acquires a snapshot in step S7. The application information to be output as the application result may be generated.

そして、情報提供装置10は、適用結果として、各端末装置200が表示した比較コンテンツを取得する(ステップS26)。なお、ステップS26は、図1に示すステップS10に対応する。このように、情報提供装置10は、比較端末が基準端末と同じアプリケーションを実行した際に表示させた比較コンテンツを取得する。 Then, the information providing device 10 acquires the comparative content displayed by each terminal device 200 as an application result (step S26). Note that step S26 corresponds to step S10 shown in FIG. In this way, the information providing device 10 acquires the comparison content displayed when the comparison terminal executes the same application as the reference terminal.

続いて、情報提供装置10は、図1に示すステップS11に先駆けて、レポートの作成を行う。この際、情報提供装置10は、基準コンテンツと比較コンテンツとの類似性を判定する判定処理を実行する。例えば、情報提供装置10は、基準コンテンツの外観的及び/又は機能的な特徴と比較コンテンツの外観的及び/又は機能的な特徴とが類似するか否かを判定する(ステップS27)。 Subsequently, the information providing device 10 creates a report prior to step S11 shown in FIG. At this time, the information providing device 10 executes a determination process for determining the similarity between the reference content and the comparison content. For example, the information providing device 10 determines whether or not the appearance and / or functional features of the reference content are similar to the appearance and / or functional features of the comparative content (step S27).

例えば、図5は、実施形態に係る情報提供装置が実行する判定処理の流れの一例を示すフローチャートである。例えば、情報提供装置10は、判定処理を開始した場合、比較コンテンツと対応するベースライン、すなわち、基準コンテンツが登録されているか否かを判定する(ステップS101)。例えば、情報提供装置10は、比較端末においてアプリケーションが比較コンテンツを表示させたタイミングと同じタイミングで、基準端末においてアプリケーションが表示させた基準コンテンツが登録されているか否かを判定する。ここで、表示させたタイミングとは、例えば、アプリケーションの起動時や、所定の操作を行った際等であり、実際の時刻とは異なるものである。すなわち、情報提供装置10は、同じ構成サービスを提供する際に表示された基準コンテンツと比較コンテンツとを比較対象とする。 For example, FIG. 5 is a flowchart showing an example of a flow of determination processing executed by the information providing apparatus according to the embodiment. For example, when the determination process is started, the information providing device 10 determines whether or not the baseline corresponding to the comparison content, that is, the reference content is registered (step S101). For example, the information providing device 10 determines whether or not the reference content displayed by the application on the reference terminal is registered at the same timing as the timing when the application displays the comparison content on the comparison terminal. Here, the displayed timing is, for example, when the application is started, when a predetermined operation is performed, or the like, and is different from the actual time. That is, the information providing device 10 makes a comparison target between the reference content and the comparison content displayed when the same configuration service is provided.

続いて、情報提供装置10は、対応するベースラインが登録されている場合は(ステップS101:Yes)、ベースラインから各種の特徴やオブジェクトの情報を抽出する(ステップS102)。例えば、情報提供装置10は、ベースラインとなる基準コンテンツのスクリーンショット全体が有する外観的な特徴を抽出する。なお、かかる処理は、例えば、各種の特徴量抽出技術により採用可能である。また、情報提供装置10は、基準コンテンツに含まれる各オブジェクトの情報を抽出する。例えば、情報提供装置10は、OCR(Optical Character Recognition)技術等で、基準コンテンツに含まれる各テキストの内容、色彩、フォント種別、表示サイズ等を抽出する。 Subsequently, when the corresponding baseline is registered (step S101: Yes), the information providing device 10 extracts information on various features and objects from the baseline (step S102). For example, the information providing device 10 extracts the appearance characteristics of the entire screenshot of the reference content that serves as a baseline. It should be noted that such processing can be adopted by, for example, various feature quantity extraction techniques. Further, the information providing device 10 extracts information of each object included in the reference content. For example, the information providing device 10 uses OCR (Optical Character Recognition) technology or the like to extract the content, color, font type, display size, etc. of each text included in the reference content.

また、情報提供装置10は、各種の画像認識技術を用いて、基準コンテンツに含まれるボタンやテキストボックス等といった各種オブジェクトの情報を抽出する。例えば、情報提供装置10は、どのような外観(色彩や表示サイズ等)のオブジェクトが含まれているか、どのような機能のオブジェクトが含まれているかを抽出する。なお、情報提供装置10は、スナップショットではなく、例えば、アプリケーションに含まれるコードを解析することで、各オブジェクトが有する機能を特定してもよい。 Further, the information providing device 10 uses various image recognition techniques to extract information on various objects such as buttons and text boxes included in the reference content. For example, the information providing device 10 extracts what kind of appearance (color, display size, etc.) an object is included, and what kind of function an object is included. The information providing device 10 may specify the function of each object by, for example, analyzing the code included in the application instead of the snapshot.

さらに、情報提供装置10は、基準コンテンツにおける各オブジェクトの配置位置を取得してもよい。例えば、情報提供装置10は、基準コンテンツにおいてテキストボックスが表示された画面上の位置等を取得してもよい。このように、情報提供装置10は、基準コンテンツ全体としての特徴や、基準コンテンツに含まれる各種オブジェクトの外観的な特徴や機能的な特徴を抽出する。 Further, the information providing device 10 may acquire the arrangement position of each object in the reference content. For example, the information providing device 10 may acquire the position on the screen where the text box is displayed in the reference content. In this way, the information providing device 10 extracts the characteristics of the reference content as a whole, and the appearance characteristics and functional characteristics of various objects included in the reference content.

続いて、情報提供装置10は、比較コンテンツを取得する(ステップS103)。そして、情報提供装置10は、基準コンテンツから各種オブジェクトの外観的な特徴や機能的な特徴を抽出した際と同様に、比較コンテンツから各種の特徴やオブジェクトの情報を抽出する(ステップS104)。そして、情報提供装置10は、各コンテンツから抽出した特徴やオブジェクトの類似性を判定する(ステップS105)。 Subsequently, the information providing device 10 acquires the comparison content (step S103). Then, the information providing device 10 extracts information on various features and objects from the comparison content in the same manner as when extracting external features and functional features of various objects from the reference content (step S104). Then, the information providing device 10 determines the similarity of the features and objects extracted from each content (step S105).

情報提供装置10は、基準コンテンツの外観が有する特徴と、比較コンテンツが有する外観の特徴との類似性が所定の条件を満たすか否かを判定する。より具体的な例を挙げると、情報提供装置10は、基準コンテンツの特徴量と比較コンテンツの特徴量との類似度を算出してもよい。 The information providing device 10 determines whether or not the similarity between the characteristics of the appearance of the reference content and the characteristics of the appearance of the comparative content satisfies a predetermined condition. To give a more specific example, the information providing device 10 may calculate the degree of similarity between the feature amount of the reference content and the feature amount of the comparative content.

また、情報提供装置10は、基準コンテンツおよび比較コンテンツ内に配置されたテキストやボタンなどといった各種オブジェクトの色彩、大きさ、配置位置を外観的な特徴として取得する。また、情報提供装置10は、テキストが示す文字情報の一致度や外観的な特徴量、各種コンテンツの外観的な特徴の類似度を算出する。また、情報提供装置10は、各種オブジェクトの機能が同一であるか否かに応じた類似度を算出してもよい。 Further, the information providing device 10 acquires the color, size, and arrangement position of various objects such as texts and buttons arranged in the reference content and the comparison content as external features. Further, the information providing device 10 calculates the degree of matching of the character information indicated by the text, the amount of appearance features, and the degree of similarity of the appearance features of various contents. Further, the information providing device 10 may calculate the degree of similarity depending on whether or not the functions of the various objects are the same.

そして、情報提供装置10は、類似性が所定の条件を満たすか否かを判定する(ステップS106)。例えば、情報提供装置10は、算出した類似度が所定の閾値を超えるか否かを判定する。そして、情報提供装置10は、類似性が所定の条件を満たす場合(ステップS106:Yes)、すなわち、利用者が各コンテンツを同一の構成サービスを提供するコンテンツであると認識可能であると推定されうる場合は、比較コンテンツが基準コンテンツである旨を登録する(ステップS107)。一方、情報提供装置10は、類似性が所定の条件を満たさない場合(ステップS106:No)、すなわち、利用者が各コンテンツを同一の構成サービスを提供するコンテンツであると認識できないと推定されうる場合は、比較コンテンツが基準コンテンツである旨を登録する(ステップS108)。 Then, the information providing device 10 determines whether or not the similarity satisfies a predetermined condition (step S106). For example, the information providing device 10 determines whether or not the calculated similarity exceeds a predetermined threshold value. Then, it is presumed that the information providing device 10 can recognize each content as a content that provides the same configuration service when the similarity satisfies a predetermined condition (step S106: Yes). If possible, register that the comparison content is the reference content (step S107). On the other hand, it can be presumed that the information providing device 10 cannot recognize each content as a content providing the same configuration service when the similarity does not satisfy a predetermined condition (step S106: No). If so, register that the comparison content is the reference content (step S108).

なお、情報提供装置10は、対応するベースラインが登録されていない場合は(ステップS101)、ベースラインの登録処理を行う(ステップS109)。例えば、情報提供装置10は、各端末装置200のうち、いずれかの端末装置200が取得した比較コンテンツをベースラインとし、他の端末装置200が取得した比較コンテンツとベースラインとの比較を実現してもよい。なお、情報提供装置10は、例えば、操作者にベースラインの登録を促してもよい。 If the corresponding baseline is not registered (step S101), the information providing device 10 performs the baseline registration process (step S109). For example, the information providing device 10 uses the comparison content acquired by one of the terminal devices 200 as a baseline, and realizes a comparison between the comparison content acquired by the other terminal device 200 and the baseline. You may. The information providing device 10 may, for example, prompt the operator to register the baseline.

ここで、図6を用いて、情報提供装置10が基準コンテンツと比較コンテンツとを比較する処理の一例について説明する。図6は、各コンテンツを比較する処理の一例を示す図である。なお、図6に示す例では、アプリケーションが表示させるコンテンツであって、サービスの提供を受けるために、ログインの構成サービスを提供するコンテンツの比較を行う例について示した。 Here, an example of a process in which the information providing device 10 compares the reference content with the comparison content will be described with reference to FIG. FIG. 6 is a diagram showing an example of processing for comparing each content. In the example shown in FIG. 6, an example of comparing the contents displayed by the application and providing the login configuration service in order to receive the service is shown.

例えば、図6に示す基準コンテンツBCには、サービスを示すロゴ、バナー、「携帯電話番号」「パスワード」といったテキストが配置されたテキストボックス、各種の利用規約、「上記に同意して新規登録」といった文字が配置されたボタン、「外部のアカウントで新規登録」といったテキスト、各外部アカウントを用いてログインを実現するためのボタン等が配置されている。また、図6に示す比較コンテンツCCには、基準コンテンツBCと同様のオブジェクトが配置されているものの、例えば、基準コンテンツBCに含まれるコンテンツのうち、携帯電話番号やパスワードを入力するテキストボックスの上部に配置されたバナーの表示がないものとする。 For example, the standard content BC shown in FIG. 6 includes a logo indicating a service, a banner, a text box in which texts such as "mobile phone number" and "password" are arranged, various terms of use, and "new registration by agreeing to the above". Buttons with characters such as "New registration with an external account", buttons for realizing login using each external account, etc. are arranged. Further, although the same object as the reference content BC is arranged in the comparison content CC shown in FIG. 6, for example, among the contents included in the reference content BC, the upper part of the text box for inputting the mobile phone number and the password. It is assumed that the banner placed in is not displayed.

このような場合、情報提供装置10は、各種OCRの技術を用いて、基準コンテンツBCと比較コンテンツCCとから、テキストをそれぞれ抽出する。そして、情報提供装置10は、基準コンテンツBCから抽出したテキストと、比較コンテンツCCから抽出したテキストとの外観等が一致するか否かを判定する。また、情報提供装置10は、バナーやテキストボックス等といった各種コンテンツの有無や類似性を判定する。例えば、図6に示す例では、基準コンテンツBCに含まれる各種のオブジェクトのうち、携帯電話番号やパスワードを入力するテキストボックスの上部に配置されたバナーが比較コンテンツCCに含まれていない。このため、情報提供装置10は、携帯電話番号やパスワードを入力するテキストボックスの上部に配置されたバナーを差分DFとして抽出し、差分DFとなるバナーの有無や、その他テキストの同一性量等に基づいて、各コンテンツの類似性を判定する。 In such a case, the information providing device 10 uses various OCR techniques to extract texts from the reference content BC and the comparison content CC, respectively. Then, the information providing device 10 determines whether or not the appearance and the like of the text extracted from the reference content BC and the text extracted from the comparative content CC match. Further, the information providing device 10 determines the presence / absence and similarity of various contents such as banners and text boxes. For example, in the example shown in FIG. 6, among the various objects included in the reference content BC, the banner arranged at the top of the text box for inputting the mobile phone number and the password is not included in the comparison content CC. Therefore, the information providing device 10 extracts the banner arranged at the upper part of the text box for inputting the mobile phone number and the password as the difference DF, and determines the presence / absence of the banner as the difference DF, the amount of identity of other texts, and the like. Based on this, the similarity of each content is determined.

図4に戻り、説明を続ける。情報提供装置10は、判定結果に応じたレポートを提供する(ステップS28)。なお、ステップS28は、図1に示すステップS11に対応する。例えば、情報提供装置10は、各コンテンツの外観的な特徴が基準コンテンツと比較コンテンツとして類似したか否か、類似度が所定の閾値を超えたか否か、もしくは類似度そのものを示すレポート等を提供する。このような処理の結果、情報提供装置10は、試験対象となるアプリケーションが、各端末装置200において、想定通りの見え方をするコンテンツを提供しているか否か、換言すると、利用者が各端末装置200を利用した際に同一のサービスに係るコンテンツであると認識可能なコンテンツを提供するか否かを判定することができる。 Returning to FIG. 4, the explanation will be continued. The information providing device 10 provides a report according to the determination result (step S28). Note that step S28 corresponds to step S11 shown in FIG. For example, the information providing device 10 provides a report showing whether or not the appearance characteristics of each content are similar to the reference content as comparative content, whether or not the similarity exceeds a predetermined threshold value, or the similarity itself. do. As a result of such processing, the information providing device 10 determines whether or not the application to be tested provides the content that looks as expected in each terminal device 200, in other words, the user makes each terminal. It is possible to determine whether or not to provide content that can be recognized as content related to the same service when the device 200 is used.

〔2-2.比較内容について〕
上述したように、情報提供装置10は、基準コンテンツと比較コンテンツとの類似性を判定する。この際、情報提供装置10は、各コンテンツの外観的な特徴及び/又は、各コンテンツに配置されたオブジェクトの機能的な類似性を判定する。以下、情報提供装置10が類似性を判定する対象の一例について説明する。
[2-2. About comparison contents]
As described above, the information providing device 10 determines the similarity between the reference content and the comparison content. At this time, the information providing device 10 determines the external features of each content and / or the functional similarity of the objects arranged in each content. Hereinafter, an example of a target for which the information providing device 10 determines similarity will be described.

例えば、情報提供装置10は、各コンテンツ内に配置された各種のマークや画像をオブジェクトとして抽出し、抽出したマークや画像の外観的な特徴の類似性に基づいて、スコアの算出を行ってもよい。例えば、情報提供装置10は、各マークや画像の色彩や表示サイズ等といった外観の類似性に基づいて、スコアの算出を行ってもよい。 For example, the information providing device 10 may extract various marks and images arranged in each content as objects and calculate a score based on the similarity of the appearance features of the extracted marks and images. good. For example, the information providing device 10 may calculate the score based on the similarity in appearance such as the color and display size of each mark and image.

また、情報提供装置10は、各コンテンツ内に表示させた文字をオブジェクトとして抽出してもよい。ここで、情報提供装置10は、スクリーンショットとなる各コンテンツからOCRの技術を用いて文字を抽出してもよく、アプリケーションのコードから、どのような文字が表示されたかを特定してもよい。そして、情報提供装置10は、各コンテンツにおける文字の文字色、表示サイズ、フォント等といった外観的な特徴の類似性に基づいて、スコアの算出を行ってもよい。また、情報提供装置10は、文字列の同一性に基づいたスコアの算出を行ってもよい。また、情報提供装置10は、基準コンテンツと比較コンテンツとで異なる言語が選択されている場合、文字列が示す意図の類似性に基づいたスコアを算出してもよい。 Further, the information providing device 10 may extract the characters displayed in each content as an object. Here, the information providing device 10 may extract characters from each content as a screenshot by using the OCR technique, or may specify what kind of characters are displayed from the code of the application. Then, the information providing device 10 may calculate the score based on the similarity of appearance features such as character color, display size, font, etc. of characters in each content. Further, the information providing device 10 may calculate the score based on the identity of the character string. Further, when different languages are selected for the reference content and the comparison content, the information providing device 10 may calculate a score based on the similarity of the intention indicated by the character string.

また、情報提供装置10は、各コンテンツ内に配置されたオブジェクトのうち、ボタンやテキストボックス等といった操作時において各種機能を発揮する機能オブジェクトの外観の類似性に基づいたスコアを算出してもよい。例えば、各コンテンツ内には、テキストや画像等といった利用者の操作が行われた際に機能を発揮しないオブジェクト(換言すると、操作に対して静的なオブジェクト)と、ボタンやテキストボックス等、利用者が選択した際に、他のコンテンツを表示したり、テキストの入力を受け付けたりといった所定の機能を発揮するオブジェクト(換言すると、操作に対して動的なオブジェクト)とが含まれる場合がある。そこで、情報提供装置10は、このような利用者が選択した際に各種機能を発揮するオブジェクトを機能オブジェクトとして特定し、特定した機能オブジェクトの有無、機能的な類似性、もしくは/および外観的な類似性に基づいて、各コンテンツの類似性を判定する。すなわち、情報提供装置10は、静的なオブジェクトについては、そのオブジェクトの外観やオブジェクトが示す情報(例えば文字列や画像が無い方する意味)の類似性を判定し、動的なオブジェクトについては、オブジェクトの外観のみならず、そのオブジェクトが発揮する機能の類似性等に基づいて、各コンテンツの類似性を判定する。 Further, the information providing device 10 may calculate a score based on the similarity in appearance of functional objects that exert various functions at the time of operation such as buttons and text boxes among the objects arranged in each content. .. For example, in each content, objects that do not function when a user's operation such as text or image is performed (in other words, an object that is static to the operation), buttons, text boxes, etc. are used. It may include objects (in other words, objects that are dynamic to the operation) that perform certain functions such as displaying other content or accepting text input when selected by a person. Therefore, the information providing device 10 identifies an object that exerts various functions when selected by such a user as a functional object, and the presence / absence of the specified functional object, functional similarity, and / or appearance. Determine the similarity of each content based on the similarity. That is, the information providing device 10 determines the similarity of the appearance of the object and the information indicated by the object (for example, meaning that there is no character string or image) for the static object, and for the dynamic object, the information providing device 10 determines the similarity. The similarity of each content is determined based not only on the appearance of the object but also on the similarity of the functions exhibited by the object.

例えば、情報提供装置10は、外観やコード等から同一であると推定される機能オブジェクト同士を各コンテンツから特定し、機能オブジェクト同士について、ピクセル単位での比較を行ってもよく、外観の特徴量の類似性に応じたスコアを算出してもよい。すなわち、情報提供装置10は、テキスト等のオブジェクトのみならず、何かしらの機能を発揮する機能オブジェクトの外観的な類似性に基づくスコアを算出してもよい。 For example, the information providing device 10 may specify functional objects that are presumed to be the same from the appearance, code, or the like from each content, and compare the functional objects with each other on a pixel-by-pixel basis. You may calculate the score according to the similarity of. That is, the information providing device 10 may calculate a score based on the appearance similarity of not only an object such as a text but also a functional object that exerts some function.

なお、情報提供装置10は、同一のオブジェクトの存非を確認し、各オブジェクトの機能の類似性を確認し、その後、ピクセル単位での比較を行うといった段階的な比較結果に応じたスコアを算出してもよい。このような処理を実行する場合、情報提供装置10は、例えば、同一のオブジェクト(機能オブジェクトのみならず、他のオブジェクトを含んでもよい)が存在しない場合は、ピクセル単位の比較等、後段の処理を行わずともよい。一方、情報提供装置10は、同一のオブジェクトが存在する場合、同一であると推定されたオブジェクト同士のみについて、ピクセル単位の比較の結果を行えばよい。すなわち、情報提供装置10は、画面全体についてピクセル単位の比較を行わずともよく、処理負荷を削減し、効率性の向上や処理時間の軽減を図ってもよい。 The information providing device 10 confirms the existence or nonexistence of the same object, confirms the similarity of the functions of the objects, and then calculates the score according to the stepwise comparison result such as performing the comparison in pixel units. You may. When executing such a process, the information providing device 10 performs a subsequent process such as a pixel-by-pixel comparison when the same object (not only a functional object but also another object may be included) does not exist. You do not have to do. On the other hand, when the same object exists, the information providing device 10 may perform the comparison result in pixel units only for the objects presumed to be the same. That is, the information providing device 10 does not have to make a pixel-by-pixel comparison for the entire screen, and may reduce the processing load, improve the efficiency, and reduce the processing time.

また、情報提供装置10は、基準コンテンツ内に配置された機能オブジェクトと、比較コンテンツ内に配置された機能オブジェクトとの類似性が所定の条件を満たすか否かを判定してもよい。すなわち、情報提供装置10は、各コンテンツの機能が有する特徴の類似性に基づくスコアを算出してもよい。例えば、情報提供装置10は、各コンテンツに含まれる機能コンテンツが発揮する機能の類似性に応じたスコアを算出してもよい。 Further, the information providing device 10 may determine whether or not the similarity between the functional object arranged in the reference content and the functional object arranged in the comparison content satisfies a predetermined condition. That is, the information providing device 10 may calculate a score based on the similarity of the features of the functions of each content. For example, the information providing device 10 may calculate a score according to the similarity of the functions exhibited by the functional contents included in each content.

例えば、情報提供装置10は、基準コンテンツ内に配置された機能オブジェクトの種別と、比較コンテンツ内に配置された機能オブジェクトの種別との類似性に応じたスコアを算出してもよい。より具体的には、情報提供装置10は、同一の機能を発揮する機能オブジェクトが各コンテンツに含まれる場合は、より高い類似性を示すスコアを算出してもよい。つまり、情報提供装置10は、各コンテンツにおける機能オブジェクトが発揮する機能が類似すればするほど、より高い値のスコアを算出してもよい。 For example, the information providing device 10 may calculate a score according to the similarity between the type of the functional object arranged in the reference content and the type of the functional object arranged in the comparison content. More specifically, the information providing device 10 may calculate a score indicating higher similarity when functional objects exhibiting the same function are included in each content. That is, the information providing device 10 may calculate a higher value score as the functions exhibited by the functional objects in each content are similar.

また、情報提供装置10は、各オブジェクトが配置された位置の類似性に基づいたスコアを算出してもよい。例えば、情報提供装置10は、各テキストや機能オブジェクトの配置位置(例えば、コンテンツの原点となる左上のピクセルを基準とした座標)を特定し、特定した配置位置の類似性に基づくスコアを算出してもよい。 Further, the information providing device 10 may calculate a score based on the similarity of the positions where the objects are arranged. For example, the information providing device 10 specifies the placement position of each text or functional object (for example, coordinates based on the upper left pixel that is the origin of the content), and calculates a score based on the similarity of the specified placement position. You may.

また、情報提供装置10は、基準コンテンツ内に配置された複数のオブジェクトの相対的な配置位置と、比較コンテンツ内に配置された複数のオブジェクトの相対的なオブジェクトの配置位置との類似性が所定の条件を満たすか否かを判定してもよい。例えば、情報提供装置10は、基準コンテンツ内におけるテキストとテキストボックスとの相対的な位置関係(例えば、縦方向に並んでいるか、横方向に並んでいるか等)、テキストボックス同士の相対的な位置関係、ボタンと他のオブジェクトとの位置関係等、各種オブジェクトが相対的にどのような位置関係にあるかを特定する。同様に、情報提供装置10は、比較コンテンツ内における各種オブジェクトの相対的な位置関係を特定する。 Further, the information providing device 10 determines the similarity between the relative arrangement position of the plurality of objects arranged in the reference content and the relative arrangement position of the plurality of objects arranged in the comparison content. It may be determined whether or not the condition of is satisfied. For example, the information providing device 10 has a relative positional relationship between the text and the text box in the reference content (for example, whether it is arranged vertically or horizontally), and a relative position between the text boxes. Specify the relative positional relationship between various objects, such as relationships and positional relationships between buttons and other objects. Similarly, the information providing device 10 identifies the relative positional relationship of various objects in the comparison content.

そして、情報提供装置10は、各コンテンツにおけるオブジェクト同士の相対的な位置関係の類似性に基づくスコアを算出する。例えば、情報提供装置10は、各コンテンツにおいて、所定のテキストと所定のテキストボックスとが縦方向に並んでいる場合は、より高い類似性を示すスコアを算出する。一方、情報提供装置10は、基準コンテンツにおいて、所定のテキストと所定のテキストボックスとが縦方向に並んでいるが、比較コンテンツにおいて、所定のテキストと所定のテキストボックスとが横方向に並んでいる場合は、より低い類似性を示すスコアを算出する。なお、情報提供装置10は、あらかじめ定められた任意のオブジェクトの組について、相対的な位置関係を特定し、特定した位置関係の類似性を判定すればよい。 Then, the information providing device 10 calculates a score based on the similarity of the relative positional relationships between the objects in each content. For example, the information providing device 10 calculates a score indicating higher similarity when a predetermined text and a predetermined text box are arranged in the vertical direction in each content. On the other hand, in the information providing device 10, the predetermined text and the predetermined text box are arranged vertically in the reference content, but the predetermined text and the predetermined text box are arranged horizontally in the comparison content. If so, calculate a score that indicates lower similarity. The information providing device 10 may specify a relative positional relationship with respect to a predetermined set of arbitrary objects, and determine the similarity of the specified positional relationship.

また、情報提供装置10は、基準コンテンツ内に複数のオブジェクトが配置されている順序と、比較コンテンツ内に複数のオブジェクトが配置されている順序との類似性が所定の条件を満たすか否かを判定してもよい。例えば、情報提供装置10は、基準コンテンツ内に各オブジェクトが配置されている順序を特定するとともに、比較オブジェクト内に各オブジェクトが配置されている順序を特定する。例えば、情報提供装置10は、所定のテキスト、所定のテキストボックス、およびボタンがコンテンツの上部からどの順序で表示されたかを特定する。そして、情報提供装置10は、特定した順序の類似性が高い程、より高い値のスコアを算出してもよい。 Further, the information providing device 10 determines whether or not the similarity between the order in which a plurality of objects are arranged in the reference content and the order in which the plurality of objects are arranged in the comparison content satisfies a predetermined condition. You may judge. For example, the information providing device 10 specifies the order in which each object is arranged in the reference content, and also specifies the order in which each object is arranged in the comparison object. For example, the information providing device 10 identifies in what order the predetermined text, the predetermined text box, and the button are displayed from the top of the content. Then, the information providing device 10 may calculate a higher value score as the similarity of the specified order is higher.

また、情報提供装置10は、各オブジェクトの有無に基づく類似性を判定してもよい。例えば、情報提供装置10は、各コンテンツに共通するオブジェクト(例えば、外観が一致するもしくは類似性が所定の閾値を超えるオブジェクトや、同一のコードにより表示されていると推定されるオブジェクト、同一の機能を発揮すると推定されるオブジェクト)が含まれているかを判定する。そして、情報提供装置10は、各コンテンツに共通するオブジェクトが含まれている場合は、より高い類似性を示すスコアを算出し、含まれていない場合は、より低い類似性を示すスコアを算出してもよい。 Further, the information providing device 10 may determine the similarity based on the presence or absence of each object. For example, the information providing device 10 has an object common to each content (for example, an object having the same appearance or a similarity exceeding a predetermined threshold value, an object presumed to be displayed by the same code, and the same function. (An object that is presumed to exhibit) is included. Then, the information providing device 10 calculates a score indicating higher similarity when an object common to each content is included, and calculates a score indicating lower similarity when the object is not included. You may.

また、情報提供装置10は、各コンテンツの属性が有する特徴の類似性に基づくスコアを算出してもよい。例えば、情報提供装置10は、各コンテンツに音声や動画像が含まれているか否か等を判定し、判定結果に応じたスコアを算出してもよい。 Further, the information providing device 10 may calculate a score based on the similarity of the features of the attributes of each content. For example, the information providing device 10 may determine whether or not each content includes audio or moving images, and calculate a score according to the determination result.

なお、情報提供装置10は、上述した各種スコアの算出基準のうち、一部もしくはすべての算出基準に基づいて、複数のスコアを算出し、算出したスコアの合計値を、最終的なスコアとしてもよい。また、情報提供装置10は、算出基準ごとに異なる重みを設定し、スコアの合計値を算出してもよい。そして、情報提供装置10は、スコアの合計値が所定の閾値を超えるか否かに基づいて、基準コンテンツと比較コンテンツとが類似するか否か、換言すると、各コンテンツの類似性が所定の条件を満たすか否かを判定する。 The information providing device 10 calculates a plurality of scores based on some or all of the above-mentioned calculation criteria for various scores, and the total value of the calculated scores may be used as the final score. good. Further, the information providing device 10 may set different weights for each calculation standard and calculate the total value of the scores. Then, the information providing device 10 determines whether or not the reference content and the comparison content are similar based on whether or not the total value of the scores exceeds a predetermined threshold value, in other words, the similarity of each content is a predetermined condition. Judge whether or not the condition is satisfied.

なお、情報提供装置10は、スコアの算出を行わず、一致点や相違点の数に基づいて、各コンテンツの類似性が所定の条件を満たすか否かを判定してもよい。また、情報提供装置10は、各種算出基準のうち、所定の条件を満たす基準の数を計数し、計数した数が所定の閾値を超えているかに応じて、類似性の判定を行ってもよい。 The information providing device 10 may determine whether or not the similarity of each content satisfies a predetermined condition based on the number of matching points and differences without calculating the score. Further, the information providing device 10 may count the number of criteria satisfying a predetermined condition among various calculation criteria, and determine the similarity depending on whether the counted number exceeds a predetermined threshold value. ..

〔2-3.モデルの利用について〕
上述したように、情報提供装置10は、各コンテンツ同士の外観的な類似性や、オブジェクトの類似性等に応じて、各コンテンツの類似性を判定する。この際、情報提供装置10は、利用者が同一の構成サービスを提供するコンテンツであると判定するか否かを学習したモデルを用いて、各コンテンツの類似性を判定してもよい。
[2-3. About using the model]
As described above, the information providing device 10 determines the similarity of each content according to the appearance similarity between the contents, the similarity of objects, and the like. At this time, the information providing device 10 may determine the similarity of each content by using a model in which the user has learned whether or not the content is determined to provide the same configuration service.

例えば、情報提供装置10は、基準コンテンツに含まれる各オブジェクトの外観や配置位置をランダムに変更した変更コンテンツを生成する。また、情報提供装置10は、変更コンテンツと基準コンテンツとを利用者に提供し、各コンテンツが同一もしくは類似するコンテンツであるか否かの問い合わせ、すなわち、コンテンツの組のラベルの問い合わせを行う。なお、かかるラベルの問い合わせは、例えば、クラウドソージング等により実現されてもよい。そして、情報提供装置10は、DNN(Deep Neural Netrowk)等のモデルに対し、基準コンテンツと変更コンテンツとのスクリーンショットやコードを入力した際に、類似するか否かといったラベルを出力するように、モデルの学習を行う。 For example, the information providing device 10 generates changed content in which the appearance and arrangement position of each object included in the reference content are randomly changed. Further, the information providing device 10 provides the changed content and the reference content to the user, and inquires whether each content is the same or similar content, that is, inquires about the label of the content set. The inquiry for such a label may be realized by, for example, cloud sourcing. Then, the information providing device 10 outputs a label such as whether or not the reference content and the modified content are similar to each other when the screenshot or code of the reference content and the modified content is input to the model such as DNN (Deep Neural Netrowk). Train the model.

そして、情報提供装置10は、試験時において、基準コンテンツと比較コンテンツを上述したモデルに入力し、類似するか否かの判定を実現してもよい。このように、情報提供装置10は、各コンテンツの外観や機能の類似性をルールベースで判定してもよく、モデルを用いて直接的に判定してもよい。 Then, at the time of the test, the information providing device 10 may input the reference content and the comparison content into the above-mentioned model and realize the determination of whether or not they are similar. As described above, the information providing device 10 may determine the similarity of the appearance and function of each content on a rule basis, or may directly determine using a model.

〔2-4.比較対象となるコンテンツの範囲について〕
ここで、情報提供装置10は、基準コンテンツおよび比較コンテンツとして、スクリーンショットの比較を行った。しかしながら、基準端末や比較端末の画面サイズによっては、コンテンツの全体が一度に表示されないといった恐れがある。この結果、単一のコンテンツ同士を比較した場合、基準コンテンツと比較コンテンツとが同じオブジェクトを含んでいるにも関わらず、類似性が低いと判定する恐れがある。
[2-4. About the range of content to be compared]
Here, the information providing device 10 compares the screenshots as the reference content and the comparison content. However, depending on the screen size of the reference terminal or the comparison terminal, there is a risk that the entire content may not be displayed at once. As a result, when a single content is compared with each other, it may be determined that the similarity is low even though the reference content and the comparison content include the same object.

そこで、情報提供装置10は、任意の数の基準コンテンツと比較コンテンツとの類似性を比較してよい。例えば、情報提供装置10は、基準端末が基準コンテンツを表示させた際の複数スクリーンショットと、比較端末が前記比較コンテンツを表示させた際の複数のスクリーンショットとを取得し、それぞれの比較結果に基づいて、各コンテンツの類似性を判定してもよい。また、情報提供装置10は、基準端末におけるスクリーンショットと、比較端末におけるスクリーンショットであって、基準端末におけるスクリーンショットとは異なる数のスクリーンショットとを取得し、それぞれの比較結果に基づいて、各コンテンツの類似性を判定してもよい。 Therefore, the information providing device 10 may compare the similarity between an arbitrary number of reference contents and the comparison contents. For example, the information providing device 10 acquires a plurality of screenshots when the reference terminal displays the reference content and a plurality of screenshots when the comparison terminal displays the comparison content, and uses the comparison results as the respective screenshots. Based on this, the similarity of each content may be determined. Further, the information providing device 10 acquires a screenshot of the reference terminal and a screenshot of the comparison terminal, which is different from the screenshot of the reference terminal, and each of them is based on the comparison result. Content similarity may be determined.

例えば、情報提供装置10は、基準端末BTにアプリケーションがコンテンツを表示させる際、表示対象となるコンテンツの一部のみが表示されている場合は、コンテンツの全体が撮影されるように、複数のスクリーンショットを撮影させ、これら複数のスクリーンショットを基準コンテンツとする。同様に、情報提供装置10は、端末装置200にアプリケーションがコンテンツを表示させる際、表示対象となるコンテンツの一部のみが表示されている場合は、コンテンツの全体が撮影されるように、複数のスクリーンショットを撮影させ、これら複数のスクリーンショットを比較コンテンツとする。 For example, the information providing device 10 has a plurality of screens so that when the application displays the content on the reference terminal BT, if only a part of the content to be displayed is displayed, the entire content is captured. Take shots and use these multiple screenshots as reference content. Similarly, the information providing device 10 has a plurality of information providing devices 10 so that when the application displays the content on the terminal device 200, if only a part of the content to be displayed is displayed, the entire content is captured. Take screenshots and use these multiple screenshots as comparison content.

そして、情報提供装置10は、基準コンテンツと比較コンテンツとのそれぞれを比較することで、基準コンテンツ全体と比較コンテンツ全体との類似性を判定してもよい。ここで、情報提供装置10は、基準コンテンツとなる1つのスクリーンショットと、比較コンテンツとなるスクリーンショットのうちいずれか1つのスクリーンショットとの比較を行うというように、一対一対応で比較を行ってもよく、例えば、基準コンテンツとなる1つのスクリーンショットと、比較コンテンツとなる複数のスクリーンショットというように、一対多対応で、比較を行ってもよい。また、情報提供装置10は、各スクリーンショットの類似性を総当りで判定し、各判定結果に基づいて、基準コンテンツ全体と比較コンテンツ全体との類似性を判定してもよい。 Then, the information providing device 10 may determine the similarity between the entire reference content and the entire comparison content by comparing each of the reference content and the comparison content. Here, the information providing device 10 makes a one-to-one comparison, such as comparing one screenshot serving as reference content with one of the screenshots serving as comparison content. It is also possible to make a one-to-many comparison, for example, one screenshot serving as reference content and a plurality of screenshots serving as comparison content. Further, the information providing device 10 may determine the similarity of each screenshot by brute force, and may determine the similarity between the entire reference content and the entire comparison content based on each determination result.

また、情報提供装置10は、基準端末BTがコンテンツ全体を表示し、端末装置200がコンテンツの一部のみを表示させる場合、基準コンテンツとなる1つのスクリーンショットと、比較コンテンツとなる複数のスクリーンショットとを比較し、基準コンテンツ全体と比較コンテンツ全体との類似性を判定してもよい。また、情報提供装置10は、基準端末BTがコンテンツの一部を表示し、端末装置200がコンテンツの全体を表示させる場合、基準コンテンツとなる複数のスクリーンショットと、比較コンテンツとなる1つのスクリーンショットとを比較し、基準コンテンツ全体と比較コンテンツ全体との類似性を判定してもよい。 Further, in the information providing device 10, when the reference terminal BT displays the entire content and the terminal device 200 displays only a part of the content, one screenshot as the reference content and a plurality of screenshots as the comparison content. And may be compared to determine the similarity between the entire reference content and the entire comparison content. Further, in the information providing device 10, when the reference terminal BT displays a part of the content and the terminal device 200 displays the entire content, a plurality of screenshots as the reference content and one screenshot as the comparison content. And may be compared to determine the similarity between the entire reference content and the entire comparison content.

〔2-5.適用対象について〕
上述した例では、情報提供装置10は、同じサービスを提供するアプリケーションが、基準端末BTと端末装置200とに表示させた各コンテンツの類似性を判定した。ここで、情報提供装置10は、同一のコードにより構成されるアプリケーションが表示させる各コンテンツの類似性を判定してもよく、異なるコードにより構成されるアプリケーションが表示させる各コンテンツの類似性を判定してもよい。
[2-5. Applicable target]
In the above-mentioned example, the information providing device 10 determines the similarity of each content displayed on the reference terminal BT and the terminal device 200 by the application providing the same service. Here, the information providing device 10 may determine the similarity of each content displayed by the application composed of the same code, or determine the similarity of each content displayed by the application composed of different codes. You may.

例えば、基準端末BTと比較端末とが同じOSを実行する場合、情報提供装置10は、それぞれに同一のコードにより構成されるアプリケーションをインストールし、かかるアプリケーションが各端末装置に表示させたコンテンツの類似性を判定してもよい。一方、基準端末BTと比較端末とが異なるOSを実行する場合、情報提供装置10は、それぞれ異なるコードにより構成されるアプリケーションであって、同一のサービスをそれぞれ異なるOS上で提供するためのアプリケーションを対応する端末にインストールする。そして、情報提供装置10は、各端末が表示させたコンテンツの類似性を判定してもよい。 For example, when the reference terminal BT and the comparison terminal execute the same OS, the information providing device 10 installs an application composed of the same code in each, and the content similar to the content displayed on each terminal device by the application. The sex may be determined. On the other hand, when the reference terminal BT and the comparison terminal execute different OSs, the information providing device 10 is an application composed of different codes, and an application for providing the same service on different OSs. Install on the corresponding terminal. Then, the information providing device 10 may determine the similarity of the contents displayed by each terminal.

また、情報提供装置10は、判定結果に基づいて、基準端末が実行したアプリケーションと比較端末が実行したアプリケーションとの関係性を示す情報を利用者に通知してもよい。例えば、情報提供装置10は、基準端末が表示させたコンテンツと比較端末が表示させたコンテンツとの類似性が所定の条件を満たす場合は、各アプリケーションが同一のサービスを提供すると利用者が認識可能なアプリケーションであると判定してもよい。なお、このような処理を行う際、情報提供装置10は、アプリケーションが表示する各コンテンツごとに、上述した判定処理を実行し、類似性が所定の条件を満たすコンテンツの割合が所定の条件を満たす場合に、各アプリケーションが同一のサービスを提供すると利用者が認識可能なアプリケーションであると判定してもよい。 Further, the information providing device 10 may notify the user of information indicating the relationship between the application executed by the reference terminal and the application executed by the comparison terminal based on the determination result. For example, the information providing device 10 can be recognized by the user that each application provides the same service when the similarity between the content displayed by the reference terminal and the content displayed by the comparison terminal satisfies a predetermined condition. It may be determined that the application is a good one. When performing such processing, the information providing device 10 executes the above-mentioned determination processing for each content displayed by the application, and the ratio of the content whose similarity satisfies the predetermined condition satisfies the predetermined condition. In some cases, it may be determined that the application can be recognized by the user if each application provides the same service.

また、情報提供装置10は、類似性が所定の条件を満たさないと判定されたコンテンツについての情報を操作者に提供してもよい。このような情報を提供した場合、操作者は、アプリケーションの開発や更新においてどのコンテンツを修正しなければならないかを容易に認識することができる。 Further, the information providing device 10 may provide the operator with information about the content for which the similarity is determined not to satisfy a predetermined condition. By providing such information, the operator can easily recognize which content should be modified in the development or update of the application.

また、情報提供装置10は、あるアプリケーションが提供するサービスのロバスト性を判定してもよい。例えば、情報提供装置10は、アプリケーションが表示する各コンテンツごとに、上述した判定処理を実行し、類似性が所定の条件を満たすコンテンツの割合が所定の条件を満たす場合に、そのアプリケーションのロバスト性が所定の条件を満たすと判定し、類似性が所定の条件を満たすコンテンツの割合が所定の条件を満たさない場合に、そのアプリケーションのロバスト性が所定の条件を満たさないと判定してもよい。また、情報提供装置10は、このようなロバスト性の判定結果を操作者に通知してもよい。 Further, the information providing device 10 may determine the robustness of the service provided by a certain application. For example, the information providing device 10 executes the above-mentioned determination process for each content displayed by the application, and when the ratio of the contents having the similarity satisfying the predetermined condition satisfies the predetermined condition, the robustness of the application. May determine that the robustness of the application does not satisfy the predetermined condition when the proportion of the content whose similarity satisfies the predetermined condition does not satisfy the predetermined condition. Further, the information providing device 10 may notify the operator of the determination result of such robustness.

また、情報提供装置10は、各コンテンツの類似性の判定結果を用いて、不正なアプリケーションの判定を行ってもよい。例えば、情報提供装置10は、同種の端末装置を基準端末および比較端末として準備し、正当なアプリケーションを基準端末に、判定対象となるアプリケーションを比較端末にインストールする。なお、判定対象となるアプリケーションは、ブラウザ上で動作するウェブアプリであってもよい。 Further, the information providing device 10 may determine an unauthorized application by using the determination result of the similarity of each content. For example, the information providing device 10 prepares a terminal device of the same type as a reference terminal and a comparison terminal, installs a legitimate application in the reference terminal, and installs an application to be determined in the comparison terminal. The application to be determined may be a web application running on a browser.

そして、情報提供装置10は、基準端末に表示された基準コンテンツと、比較端末に表示された比較コンテンツとの類似性を判定し、判定結果に応じて、比較端末にインストールされたアプリケーションが不正なアプリケーションであるかを判定してもよい。例えば、情報提供装置10は、各コンテンツの類似性が高いが、完全に一致するものではない場合、比較端末にインストールされたアプリケーションが、正当なアプリケーションを模倣して個人情報を取得するような不正なアプリケーションであると判定してもよい。 Then, the information providing device 10 determines the similarity between the reference content displayed on the reference terminal and the comparison content displayed on the comparison terminal, and the application installed on the comparison terminal is invalid according to the determination result. It may be determined whether it is an application. For example, if the information providing device 10 has high similarity of each content but does not completely match, an application installed on the comparison terminal imitates a legitimate application and acquires personal information. It may be determined that the application is a good one.

ここで、情報提供装置10は、フィッシングサイトに誘導して、利用者のログイン用IDやパスワードを窃取する偽ウェブアプリの判定を行ってもよい。例えば、情報提供装置10は、ウェブを介して利用者に対して各種のサービスを提供する正式なウェブアプリが表示させたコンテンツ(すなわち、アプリケーションが独自で提供するコンテンツのみならず、アプリケーションがウェブAPIと連携して提供する各種のウェブコンテンツ)と、偽ウェブアプリが表示させた各種のコンテンツとの比較を行う。この際、情報提供装置10は、例えば、各コンテンツの外観的な特徴の類比や、各コンテンツのドメイン等といった属性の類似性に基づいて、比較対象となるウェブアプリが偽のウェブアプリであるかを判定してもよい。 Here, the information providing device 10 may guide to a phishing site and determine a fake web application that steals a user's login ID or password. For example, the information providing device 10 is not only the content displayed by a formal web application that provides various services to the user via the web (that is, the content provided by the application independently, but also the application is a web API. (Various web contents provided in cooperation with) and various contents displayed by fake web applications are compared. At this time, in the information providing device 10, is the web application to be compared a fake web application based on, for example, the analogy of the appearance characteristics of each content and the similarity of attributes such as the domain of each content? May be determined.

〔2-6.複数サービスを提供するアプリケーションについて〕
ここで、スーパーアプリ等と呼ばれるアプリケーションは、単一のサービスのみならず、複数のサービスを提供する場合がある。しかしながら、このようなアプリケーションは、単一のアプリケーションプログラムによりサービスを提供するのではなく、主となるアプリケーションがミニアプリと呼ばれる複数のアプリケーションを呼び出して、各種サービスを提供する場合が多い。そこで、情報提供装置10は、スーパーアプリの動作確認を行う場合、スーパーアプリを構成するミニアプリごとに、基準コンテンツと比較コンテンツとの比較を行ってもよい。
[2-6. About applications that provide multiple services]
Here, an application called a super application or the like may provide not only a single service but also a plurality of services. However, in such an application, instead of providing a service by a single application program, the main application often calls a plurality of applications called mini-apps to provide various services. Therefore, when the operation of the super application is confirmed, the information providing device 10 may compare the reference content and the comparison content for each mini application constituting the super application.

〔2-7.言語について〕
ここで、情報提供装置10は、基準端末と比較端末とがそれぞれ異なる言語のコンテンツを表示する場合、同一内容のテキストを同一のオブジェクトとみなしてもよい。例えば、情報提供装置10は、基準コンテンツに「パスワード」といったテキストが含まれ、比較コンテンツに「Password」といったコンテンツが含まれる場合、これらのコンテンツを同一のコンテンツであると見做し、各コンテンツの類似性を判定してもよい。
[2-7. About language]
Here, when the reference terminal and the comparison terminal display contents in different languages, the information providing device 10 may regard texts having the same contents as the same object. For example, when the reference content includes a text such as "password" and the comparison content includes a content such as "Password", the information providing device 10 regards these contents as the same content and of each content. Similarity may be determined.

〔2-8.端末について〕
ここで、情報提供装置10は、スマートフォン等の端末装置200以外にも、クラウド上の端末装置CTや所定の情報処理装置上でエミュレートされる端末装置ET以外にも、任意の端末を基準端末や比較端末としてもよい。例えば、情報提供装置10は、PCやサーバ装置、各種センサやデジタルサイネージといった実態を有する装置(所謂ハードウェア)を基準端末や比較端末として、各コンテンツの類似性を判定してもよい。また、情報提供装置10は、各種の仮想マシンやPC上で実行されるOSやアプリケーションごとに、基準コンテンツや比較コンテンツを生成し、各コンテンツの類似性に基づいて、アプリケーションのロバスト性等を判定してもよい。
[2-8. About the terminal]
Here, the information providing device 10 uses any terminal as a reference terminal other than the terminal device 200 such as a smartphone, the terminal device CT on the cloud, and the terminal device ET emulated on the predetermined information processing device. Or as a comparison terminal. For example, the information providing device 10 may determine the similarity of each content by using a device (so-called hardware) having an actual condition such as a PC, a server device, various sensors, or digital signage as a reference terminal or a comparison terminal. Further, the information providing device 10 generates reference content and comparative content for each OS and application executed on various virtual machines and PCs, and determines the robustness of the application based on the similarity of each content. You may.

〔2-9.実施形態の効果の一例について〕
上述したように、情報提供装置10は、基準端末に表示された基準コンテンツと比較端末に表示された比較コンテンツとの類似性を判定する。このため、情報提供装置10は、基準コンテンツや比較コンテンツを表示させた同一もしくは異なるアプリケーションの同一性やロバスト性を自動的に判定することができ、アプリケーションの試験等を容易にすることができる。
[2-9. About an example of the effect of the embodiment]
As described above, the information providing device 10 determines the similarity between the reference content displayed on the reference terminal and the comparison content displayed on the comparison terminal. Therefore, the information providing device 10 can automatically determine the identity and robustness of the same or different application displaying the reference content and the comparison content, and can facilitate the test of the application and the like.

なお、このように端末装置ごとやOSごとに、基準コンテンツや比較コンテンツを生成しなければならないとしても、情報提供装置10は、自然言語で操作内容を示した操作情報を生成し、生成した操作情報に基づいて適用情報を自動的に生成する。このため、情報提供装置10は、試験対象となるアプリケーションにバージョンが複数存在する場合や、基準端末あるいは比較端末とすべき端末装置のバリエーションが複数存在する場合であっても、これら基準端末、比較端末およびアプリケーションの組合せを自動的に特定し、特定した組合せごとに、各コンテンツの類似性を自動的に判定することができる。このため、情報提供装置10は、人手でアプリケーションを操作し、画面を確認するといった手間を削減することができる。 Even if it is necessary to generate reference content and comparison content for each terminal device and each OS in this way, the information providing device 10 generates operation information indicating the operation content in natural language, and the generated operation. Automatically generate application information based on the information. Therefore, even if the information providing device 10 has a plurality of versions in the application to be tested, or even if there are a plurality of variations of the terminal device to be the reference terminal or the comparison terminal, these reference terminals and comparisons are made. The combination of terminals and applications can be automatically specified, and the similarity of each content can be automatically determined for each specified combination. Therefore, the information providing device 10 can reduce the time and effort of manually operating the application and checking the screen.

〔3.情報提供装置の構成〕
以下、上記した情報提供装置10が有する機能構成の一例について説明する。図7は、実施形態に係る情報提供装置の構成例を示す図である。図7に示すように、情報提供装置10は、通信部20、記憶部30、および制御部40を有する。
[3. Configuration of information providing device]
Hereinafter, an example of the functional configuration of the above-mentioned information providing device 10 will be described. FIG. 7 is a diagram showing a configuration example of the information providing device according to the embodiment. As shown in FIG. 7, the information providing device 10 includes a communication unit 20, a storage unit 30, and a control unit 40.

通信部20は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部20は、ネットワークNと有線または無線で接続され、情報提供装置10、端末装置200、および操作者端末300との間で情報の送受信を行う。 The communication unit 20 is realized by, for example, a NIC (Network Interface Card) or the like. Then, the communication unit 20 is connected to the network N by wire or wirelessly, and transmits / receives information to / from the information providing device 10, the terminal device 200, and the operator terminal 300.

記憶部30は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。また、記憶部30は、操作データベース31、組合わせデータベース32、およびコンテンツデータベース33を記憶する。 The storage unit 30 is realized by, for example, a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory (Flash Memory), or a storage device such as a hard disk or an optical disk. Further, the storage unit 30 stores the operation database 31, the combination database 32, and the content database 33.

操作データベース31には、操作対象が発揮する各種の機能と、その機能を発揮させるために行われる利用者の操作とが対応付けて登録されている。例えば、図8は、実施形態に係る操作データベースに登録される情報の一例を示す図である。図8に示す例では、操作データベース31には、ドメイン、対応機能、操作内容、および自然言語表現といった項目を有する情報が登録されている。なお、図8に示す情報以外にも、操作データベース31には、操作対象に対して適用可能な利用者の操作に関する情報が登録されていてもよい。 In the operation database 31, various functions exhibited by the operation target and user operations performed to exert the functions are registered in association with each other. For example, FIG. 8 is a diagram showing an example of information registered in the operation database according to the embodiment. In the example shown in FIG. 8, the operation database 31 is registered with information having items such as a domain, a corresponding function, an operation content, and a natural language expression. In addition to the information shown in FIG. 8, the operation database 31 may contain information about user operations applicable to the operation target.

例えば、ドメインとは、操作対象が利用者に対して提供するサービスの種別を示す情報である。また、対応機能とは、対応付けられたドメインに属する操作対象が提供する機能であって、所定の画面を介して提供される機能を示す情報である。また、操作内容とは、対応付けられた機能を発揮する画面において利用者が行うことができる操作の内容を示す情報である。また、自然言語表現とは、対応付けられた操作を自然言語で示す情報である。 For example, the domain is information indicating the type of service provided by the operation target to the user. Further, the corresponding function is a function provided by an operation target belonging to the associated domain, and is information indicating a function provided via a predetermined screen. Further, the operation content is information indicating the content of the operation that the user can perform on the screen that exerts the associated function. The natural language expression is information indicating the associated operation in natural language.

例えば、図8に示す例では、ドメイン「決済」、対応機能「ログイン」、操作内容「操作#1-1」、および自然言語表現「クリック」が対応付けて登録されている。このような情報は、提供するサービスが「決済」である操作対象が、ある画面において「ログイン」の機能を発揮しており、かかる画面において利用者が行うことができる操作が「操作#1-1」であり、かかる操作の自然言語表現が「クリック」である旨を示す。なお、図8に示す例では、対応機能「ログイン」に対し、「操作#1-1」や「操作#1-2」といった複数の操作が対応付けられている。かかる情報は、「ログイン」を行う画面において、「操作#1-1」(例えば、クリック)や「操作#1-2」(例えば、ユーザID入力)といった複数の操作をおこなうことができる旨を示す。 For example, in the example shown in FIG. 8, the domain "payment", the corresponding function "login", the operation content "operation # 1-1", and the natural language expression "click" are registered in association with each other. For such information, the operation target whose service is "payment" exerts the "login" function on a certain screen, and the operation that the user can perform on such a screen is "operation # 1-". 1 ”indicates that the natural language expression of such an operation is a“ click ”. In the example shown in FIG. 8, a plurality of operations such as "operation # 1-1" and "operation # 1-2" are associated with the corresponding function "login". Such information indicates that a plurality of operations such as "operation # 1-1" (for example, click) and "operation # 1-2" (for example, user ID input) can be performed on the screen for performing "login". show.

なお、図8に示す例では「操作#1-1」といった概念的な値を記載したが、実際には、操作内容を示す各種の情報(例えば、インスタンス等)が登録されることとなる。また、操作データベース31には、例えば、スクロール量やクリックの回数、ユーザIDやパスワードを構成する文字列等がさらに登録されていてもよい。 In the example shown in FIG. 8, a conceptual value such as "operation # 1-1" is described, but in reality, various information (for example, an instance or the like) indicating the operation content is registered. Further, for example, the scroll amount, the number of clicks, the character string constituting the user ID and the password, and the like may be further registered in the operation database 31.

組合わせデータベース32には、操作の組合わせを示す情報、すなわち操作情報が登録される。例えば、図9は、実施形態に係る組合わせデータベースに登録される情報の一例を示す図である。図9に示す例では、組合わせデータベース32には、対応ドメイン、対応機能および操作組合わせが対応付けて登録されている。なお、組合わせデータベース32には、図9に示す情報以外にも、操作の組合わせに関する各種の情報が登録されていてもよい。 Information indicating a combination of operations, that is, operation information is registered in the combination database 32. For example, FIG. 9 is a diagram showing an example of information registered in the combination database according to the embodiment. In the example shown in FIG. 9, the corresponding domain, the corresponding function, and the operation combination are registered in the combination database 32 in association with each other. In addition to the information shown in FIG. 9, various information related to the combination of operations may be registered in the combination database 32.

ここで、操作組合わせとは、操作対象の機能に応じて決定された複数の操作を示す情報である。また、対応機能とは、操作組合わせが示す操作が、どの機能に対するテストケースであるかを示す情報である。また、対応ドメインとは、対応付けられた操作組合わせがどのドメインに属する操作対象のテストケースであるかを示す情報である。 Here, the operation combination is information indicating a plurality of operations determined according to the function of the operation target. Further, the corresponding function is information indicating which function the operation indicated by the operation combination is a test case for. Further, the corresponding domain is information indicating to which domain the associated operation combination belongs to the test case of the operation target.

例えば、図9に示す例では、対応ドメイン「決済」、対応機能「ログイン」および操作組合わせ「組合わせ#1」、「組合わせ#2」等が対応付けて登録されている。かかる情報は、「決済」に関するサービスを提供する操作対象の、「ログイン」の機能を提供する画面において行われるテストケースが「組合わせ#1」や「組合わせ#2」等が示す操作である旨を示す。なお、図9に示す例では、「組合わせ#1」といった概念的な値を記載したが、実際には、複数の操作や各操作を行う順序を示す情報(例えば、インスタンス等)が登録されることとなる。 For example, in the example shown in FIG. 9, the corresponding domain "payment", the corresponding function "login", the operation combination "combination # 1", "combination # 2", and the like are registered in association with each other. Such information is an operation indicated by "combination # 1", "combination # 2", etc. in the test case performed on the screen providing the "login" function of the operation target for providing the service related to "payment". Show that. In the example shown in FIG. 9, a conceptual value such as "combination # 1" is described, but in reality, information indicating a plurality of operations and the order in which each operation is performed (for example, an instance) is registered. The Rukoto.

コンテンツデータベース33には、基準コンテンツとなるデータと、比較コンテンツとなるデータが登録される。例えば、図10は、実施形態に係るコンテンツデータベースに登録される情報の一例を示す図である。図10に示す例では、コンテンツデータベース33には、コンテンツID、コンテンツ種別、取得元端末、スクリーンショット、オブジェクト情報といった項目を有する情報が登録されている。なお、図10に示す情報以外にも、コンテンツデータベース33には、例えば、アプリケーションのバージョン、コンテンツを取得した日時といったタイムスタンプ等、基準コンテンツや比較コンテンツに関する各種の情報が登録されていてもよい。 Data as reference content and data as comparison content are registered in the content database 33. For example, FIG. 10 is a diagram showing an example of information registered in the content database according to the embodiment. In the example shown in FIG. 10, information having items such as a content ID, a content type, an acquisition source terminal, a screenshot, and object information is registered in the content database 33. In addition to the information shown in FIG. 10, various information related to the reference content and the comparison content, such as the version of the application and the time stamp such as the date and time when the content was acquired, may be registered in the content database 33.

ここで、コンテンツIDとは、コンテンツの識別子である。また、コンテンツ種別とは、コンテンツが基準コンテンツであるか、比較コンテンツであるかを示す情報である。また、取得元端末は、コンテンツのスクリーンショットを取得した端末装置、すなわち、試験対象となるアプリケーションを実行する端末装置を示す情報である。また、スクリーンショットとは、各コンテンツとして取得されたスクリーンショットのデータである。また、オブジェクト情報とは、コンテンツに含まれる各種オブジェクトに関する情報である。 Here, the content ID is an identifier of the content. The content type is information indicating whether the content is reference content or comparative content. Further, the acquisition source terminal is information indicating a terminal device that has acquired a screenshot of the content, that is, a terminal device that executes an application to be tested. Further, the screenshot is the data of the screenshot acquired as each content. Further, the object information is information about various objects included in the content.

なお、図10に示す例では、「SSBC1」や「OOBC1」といった概念的な値を記載したが、実際には、スクリーンショットとして取得された各種の画像データや、オブジェクトの内容、種別、外観等を示す各種のデータがコンテンツデータベース33に登録されることとなる。 In the example shown in FIG. 10, conceptual values such as "SSBC1" and "OOBC1" are described, but in reality, various image data acquired as screenshots, the content, type, appearance, etc. of the object are described. Various data indicating the above will be registered in the content database 33.

図7に戻り、説明を続ける。制御部40は、例えば、コントローラ(controller)であり、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報提供装置10内部の記憶装置に記憶されている各種プログラム(通知プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部40は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。 Returning to FIG. 7, the explanation will be continued. The control unit 40 is, for example, a controller, and is an example of various programs (notification programs) stored in a storage device inside the information providing device 10 by a CPU (Central Processing Unit), an MPU (Micro Processing Unit), or the like. Is realized by executing RAM as a work area. Further, the control unit 40 is a controller, and is realized by, for example, an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array).

図7に示すように、制御部40は、特定部41、決定部42、生成部43、適用部44、取得部45、判定部46、および通知部47を有する。 As shown in FIG. 7, the control unit 40 includes a specific unit 41, a determination unit 42, a generation unit 43, an application unit 44, an acquisition unit 45, a determination unit 46, and a notification unit 47.

特定部41は、利用者の操作対象が発揮する機能を特定する。例えば、特定部41は、操作対象となるアプリケーションが所定の端末装置に対して表示させる画面に基づいて、その操作対象が発揮する機能を特定する。すなわち、特定部41は、画面を介して提供される機能を特定する。例えば、特定部41は、操作対象が提供するサービスの種別、すなわち、ドメインを特定する。そして、特定部41は、特定したドメインと、操作対象が提供する各画面上のオブジェクトに基づいて、操作対象が各画面上で提供する機能を画面ごとに特定する。 The specific unit 41 specifies a function exhibited by the user's operation target. For example, the specifying unit 41 identifies a function exhibited by the operation target based on a screen displayed on a predetermined terminal device by the operation target application. That is, the specifying unit 41 specifies the function provided via the screen. For example, the specifying unit 41 specifies the type of service provided by the operation target, that is, the domain. Then, the specifying unit 41 specifies the function provided by the operation target on each screen for each screen based on the specified domain and the object on each screen provided by the operation target.

決定部42は、特定された機能に応じて、操作対象に対して行われる利用者の操作の組合わせを決定する。例えば、決定部42は、機能と、操作対象にその機能を発揮させる際に行われる利用者の操作とを対応付けた操作データベース31を参照し、特定部41により特定された機能と対応する操作に基づいて、組合わせを決定する。 The determination unit 42 determines a combination of user operations performed on the operation target according to the specified function. For example, the determination unit 42 refers to the operation database 31 in which the function is associated with the operation of the user performed when the operation target exerts the function, and the operation corresponding to the function specified by the specific unit 41. The combination is determined based on.

生成部43は、決定された操作の組合わせを自然言語で表した操作情報を生成する。例えば、生成部43は、操作対象が提供する画面ごとに、操作情報を生成する。例えば、生成部43は、操作情報の生成対象となる画面において提供される機能と、操作対象のドメインとに対応付けられた操作組合わせを組合わせデータベース32から取得する。続いて、生成部43は、各操作組合わせに含まれる各操作を示す自然言語表現を操作データベース31から取得する。そして、生成部43は、取得した自然言語表現と、操作組合わせに含まれる操作の順序とに応じて、操作組合わせが示す操作内容を自然言語で示す操作情報を操作組合わせごとに生成する。このような処理の結果、情報提供装置10は、テストケースとなる操作情報を自動的に生成することができる。 The generation unit 43 generates operation information expressing the determined combination of operations in natural language. For example, the generation unit 43 generates operation information for each screen provided by the operation target. For example, the generation unit 43 acquires from the combination database 32 the operation combination associated with the function provided on the screen on which the operation information is generated and the domain to be operated. Subsequently, the generation unit 43 acquires a natural language expression indicating each operation included in each operation combination from the operation database 31. Then, the generation unit 43 generates operation information indicating the operation content indicated by the operation combination in natural language for each operation combination according to the acquired natural language expression and the order of the operations included in the operation combination. .. As a result of such processing, the information providing device 10 can automatically generate operation information as a test case.

適用部44は、生成部43によって生成された操作情報に従って、対象の試験を行う。例えば、適用部44は、操作情報を取得すると、図3に例示した処理を実行することで、操作情報と対象との組み合わせごとに適用情報を生成し、生成した適用情報を端末装置200に適用することで、試験を実現する。なお、適用部44が実行する適用処理については、上述した各種の処理が適用可能であるものとし、詳細な説明を省略する。 The application unit 44 tests the subject according to the operation information generated by the generation unit 43. For example, when the application unit 44 acquires the operation information, it executes the process illustrated in FIG. 3 to generate application information for each combination of the operation information and the target, and applies the generated application information to the terminal device 200. By doing so, the test is realized. As for the application process executed by the application unit 44, it is assumed that the various processes described above can be applied, and detailed description thereof will be omitted.

なお、適用部44は、上述した判定処理を実行する場合、各端末装置200を比較端末として、比較端末200にスナップショットを取得し、送信させるための適用情報を生成する。なお、このような処理は、例えば、生成部43により生成された操作情報に基づいて実現されてもよい。 When executing the above-mentioned determination process, the application unit 44 uses each terminal device 200 as a comparison terminal, and generates application information for acquiring and transmitting a snapshot to the comparison terminal 200. It should be noted that such processing may be realized, for example, based on the operation information generated by the generation unit 43.

取得部45は、基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する。例えば、取得部45は、基準端末BTに試験対象となるアプリケーションをインストールさせるとともに、アプリケーションが表示させるすべてのコンテンツ、あるいはあらかじめ定められた一部のコンテンツを表示させ、各コンテンツのスクリーンショットを取得させる。そして、取得部45は、基準端末BTからスクリーンショットを基準コンテンツとして取得する。 The acquisition unit 45 acquires the reference content displayed when the reference terminal executes the predetermined application and the comparison content displayed when the comparison terminal to be compared executes the predetermined application. For example, the acquisition unit 45 causes the reference terminal BT to install the application to be tested, displays all the contents displayed by the application, or displays a part of the predetermined contents, and acquires a screenshot of each content. .. Then, the acquisition unit 45 acquires the screenshot as the reference content from the reference terminal BT.

また、取得部45は、各端末装置200から、アプリケーションが表示させたコンテンツのスクリーンショットを比較コンテンツとして取得する。すなわち、取得部45は、比較端末が基準端末と同じ所定のアプリケーションを実行した際に表示させた比較コンテンツを取得する。なお、取得部45は、基準端末が基準コンテンツを表示させた際の複数スクリーンショットと、比較端末が比較コンテンツを表示させた際の複数のスクリーンショットとを取得してもよい。すなわち、取得部45は、1つのコンテンツの一部を表示させた際のスクリーンショットを基準コンテンツや比較コンテンツとして取得してもよい。また、取得部45は、同一のコンテンツについて、異なる数のスクリーンショットを基準コンテンツおよび比較コンテンツとして取得してもよい。 Further, the acquisition unit 45 acquires a screenshot of the content displayed by the application from each terminal device 200 as the comparison content. That is, the acquisition unit 45 acquires the comparison content displayed when the comparison terminal executes the same predetermined application as the reference terminal. The acquisition unit 45 may acquire a plurality of screenshots when the reference terminal displays the reference content and a plurality of screenshots when the comparison terminal displays the comparison content. That is, the acquisition unit 45 may acquire a screenshot when displaying a part of one content as a reference content or a comparison content. Further, the acquisition unit 45 may acquire different numbers of screenshots of the same content as reference content and comparison content.

また、取得部45は、各コンテンツとなるスクリーンショットから、各種のオブジェクトを特定し特定したオブジェクトに関する情報をオブジェクトとして抽出し、スクリーンショットとオブジェクトとをコンテンツデータベース33に登録する。なお、取得部45は、各コンテンツの外観が有する特徴量を算出し、コンテンツデータベース33に登録してもよい。 Further, the acquisition unit 45 identifies various objects from the screenshots of each content, extracts information about the specified objects as objects, and registers the screenshots and the objects in the content database 33. The acquisition unit 45 may calculate the feature amount of the appearance of each content and register it in the content database 33.

判定部46は、基準コンテンツが有する特徴と、比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定する。ここで、判定部46は、利用者が、同一のサービスを提供するコンテンツであると認識することができる程度に、各コンテンツの類似性を判定するのであれば、任意の基準に基づいて、各コンテンツの類似性を判定してよい。以下に説明する判定基準は、あくまで一例であり、実施形態は、これに限定されるものではない。 The determination unit 46 determines whether or not the similarity between the feature of the reference content and the feature of the comparative content satisfies a predetermined condition. Here, if the determination unit 46 determines the similarity of each content to the extent that the user can recognize that the content provides the same service, each determination unit 46 is based on an arbitrary criterion. Content similarity may be determined. The determination criteria described below are merely examples, and the embodiments are not limited thereto.

例えば、判定部46は、基準コンテンツの外観が有する特徴と、比較コンテンツが有する外観の特徴との類似性が所定の条件を満たすか否かを判定する。例えば、判定部46は、各種の特徴量や、ピクセル単位での比較により、各コンテンツの外観の類似性を判定する。 For example, the determination unit 46 determines whether or not the similarity between the characteristics of the appearance of the reference content and the characteristics of the appearance of the comparative content satisfies a predetermined condition. For example, the determination unit 46 determines the similarity in appearance of each content by comparing various feature quantities and pixel units.

また、判定部46は、基準コンテンツ内に配置されたオブジェクトの配置位置と、比較コンテンツ内に配置されたオブジェクトの配置位置との類似性が所定の条件を満たすか否かを判定してもよい。例えば、判定部46は、テキスト、画像、各種機能オブジェクト等が画面上に表示された位置を特定し、特定した位置の類似性に基づいて、各コンテンツの類似性を判定してもよい。 Further, the determination unit 46 may determine whether or not the similarity between the arrangement position of the object arranged in the reference content and the arrangement position of the object arranged in the comparison content satisfies a predetermined condition. .. For example, the determination unit 46 may specify the position where the text, the image, various functional objects, and the like are displayed on the screen, and determine the similarity of each content based on the similarity of the specified position.

また、判定部46は、基準コンテンツ内に配置された複数のオブジェクトの相対的な配置位置と、比較コンテンツ内に配置された複数のオブジェクトの相対的なオブジェクトの配置位置との類似性が所定の条件を満たすか否かを判定してもよい。例えば、判定部46は、「パスワード」といった所定のテキストと、パスワードを入力するためのテキストボックスといった所定の機能オブジェクトとの相対的な位置関係(例えば、縦方向に並んでいる、横方向に並んでいる、離れている方向、離れている距離等)を各コンテンツごとに特定し、特定した位置関係が類似しているか否かに応じて、各コンテンツの類似性を判定してもよい。 Further, the determination unit 46 has a predetermined similarity between the relative arrangement positions of the plurality of objects arranged in the reference content and the relative arrangement positions of the plurality of objects arranged in the comparison content. It may be determined whether or not the condition is satisfied. For example, the determination unit 46 has a relative positional relationship (for example, vertically arranged or horizontally arranged) between a predetermined text such as “password” and a predetermined functional object such as a text box for inputting a password. You may specify each content (such as password, distant direction, distant distance, etc.) and determine the similarity of each content according to whether or not the specified positional relationship is similar.

また、判定部46は、基準コンテンツ内に複数のオブジェクトが配置されている順序と、比較コンテンツ内に複数のオブジェクトが配置されている順序との類似性が所定の条件を満たすか否かを判定してもよい。例えば、判定部46は、各コンテンツにおいて、所定のオブジェクトが所定の順序で並んでいるか否か、各オブジェトが配置されている順序の類似性等に応じて、各コンテンツの類似性を判定してもよい。 Further, the determination unit 46 determines whether or not the similarity between the order in which the plurality of objects are arranged in the reference content and the order in which the plurality of objects are arranged in the comparison content satisfies a predetermined condition. You may. For example, the determination unit 46 determines the similarity of each content according to whether or not the predetermined objects are arranged in a predetermined order in each content, the similarity of the order in which the objects are arranged, and the like. May be good.

また、判定部46は、基準コンテンツに含まれる文字が有する外観の特徴と、比較コンテンツに含まれる文字が有する外観の特徴との類似性が所定の条件を満たすか否かを判定してもよい。例えば、判定部46は、各コンテンツにおけるテキストの内容、色彩、フォントサイズ、自体等の類似性に基づいて、各コンテンツの類似性を判定してもよい。 Further, the determination unit 46 may determine whether or not the similarity between the appearance characteristics of the characters included in the reference content and the appearance characteristics of the characters included in the comparison content satisfies a predetermined condition. .. For example, the determination unit 46 may determine the similarity of each content based on the similarity of the text content, color, font size, itself, etc. in each content.

また、判定部46は、基準コンテンツ内に配置されたオブジェクトと類似するオブジェクトが比較コンテンツ内に配置されているか否かに基づいて、基準コンテンツが有する特徴と、比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定してもよい。例えば、判定部46は、各コンテンツ内に同一もしくは類似するオブジェクト(例えば、表示サイズが少し異なるが、同一のテキストが配置されたボタン等)が配置されているか否か、同一もしくは類似するオブジェクトが配置されている数に応じて、各コンテンツの類似性を判定してもよい。 Further, the determination unit 46 has similarities between the features of the reference content and the features of the comparison content, based on whether or not an object similar to the object placed in the reference content is placed in the comparison content. May determine whether or not satisfies a predetermined condition. For example, the determination unit 46 determines whether or not the same or similar objects (for example, buttons having slightly different display sizes but the same text are arranged) are arranged in each content, and the same or similar objects are arranged. The similarity of each content may be determined according to the number of arrangements.

また、判定部46は、基準コンテンツ内に配置されたオブジェクトのうち、利用者からの操作により所定の機能を発揮する機能オブジェクトと、比較コンテンツ内に配置された機能オブジェクトとの類似性が所定の条件を満たすか否かを判定してもよい。また、判定部46は、基準コンテンツ内に配置された機能オブジェクトが発揮する機能と、比較コンテンツ内に配置された機能オブジェクトが発揮する機能との類似性が所定の条件を満たすか否かを判定してもよい。例えば、判定部46は、共通する機能を発揮する機能オブジェクトが各コンテンツに共通して配置されている場合は、各コンテンツが類似すると判定してもよい。 Further, among the objects arranged in the reference content, the determination unit 46 has a predetermined similarity between the functional object that exerts a predetermined function by the operation from the user and the functional object arranged in the comparison content. It may be determined whether or not the condition is satisfied. Further, the determination unit 46 determines whether or not the similarity between the function exhibited by the functional object arranged in the reference content and the function exhibited by the functional object arranged in the comparison content satisfies a predetermined condition. You may. For example, the determination unit 46 may determine that the contents are similar when the function objects exhibiting the common functions are arranged in common for each content.

また、判定部46は、基準コンテンツ内に配置された機能オブジェクトの外観と、比較コンテンツ内に配置された機能オブジェクトの外観との類似性が所定の条件を満たすか否かを判定してもよい。例えば、判定部46は、各コンテンツに含まれる機能オブジェクトの外観を、ピクセルごと或いは特徴量比較により、各コンテンツ内に配置されている機能オブジェクトの外観の類似性を判定し、判定結果に応じて、各コンテンツの類似性を判定してもよい。 Further, the determination unit 46 may determine whether or not the similarity between the appearance of the functional object arranged in the reference content and the appearance of the functional object arranged in the comparison content satisfies a predetermined condition. .. For example, the determination unit 46 determines the similarity of the appearance of the functional objects included in each content for each pixel or by comparing the features, and determines the similarity of the appearances of the functional objects arranged in each content according to the determination result. , You may judge the similarity of each content.

また、判定部46は、基準コンテンツが有する属性の特徴と、比較コンテンツが有する属性の特徴との類似性が所定の条件を満たすか否かを判定してもよい。また、判定部46は、基準コンテンツが有する機能の特徴と、比較コンテンツが有する機能の特徴との類似性が所定の条件を満たすか否かを判定してもよい。 Further, the determination unit 46 may determine whether or not the similarity between the attribute characteristics of the reference content and the attribute characteristics of the comparison content satisfies a predetermined condition. Further, the determination unit 46 may determine whether or not the similarity between the feature of the function of the reference content and the feature of the function of the comparison content satisfies a predetermined condition.

なお、判定部46は、上述した各種の基準に基づいて、類似性を示すスコアを算出する。しかしながら、実施形態はこれに限定されるものではない。判定部46は、基準コンテンツが有する特徴を示す基準特徴情報と比較コンテンツが有する特徴を示す比較特徴情報とが入力された場合に、利用者によって設定された情報であって、基準コンテンツと比較コンテンツとが類似するか否かを示す情報を出力するように学習が行われたモデルを用いて、基準コンテンツが有する特徴と、比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定してもよい。すなわち、判定部46は、共通する構成サービスを提供するコンテンツであると利用者が判断したコンテンツの特徴を学習したモデルを用いて、基準コンテンツと比較コンテンツとの共通性を判定してもよい。 The determination unit 46 calculates a score indicating similarity based on the various criteria described above. However, the embodiments are not limited to this. The determination unit 46 is information set by the user when the reference feature information indicating the characteristics of the reference content and the comparison feature information indicating the features of the comparison content are input, and is the information set by the user, and the reference content and the comparison content. Whether or not the similarity between the characteristics of the reference content and the characteristics of the comparative content satisfies a predetermined condition using a model trained to output information indicating whether or not they are similar to each other. May be determined. That is, the determination unit 46 may determine the commonality between the reference content and the comparison content by using a model that learns the characteristics of the content that the user has determined to be the content that provides the common configuration service.

なお、上述した処理は、コンテンツデータベース33に登録された情報を参照して実行することとなる。例えば、判定部46は、コンテンツデータベース33を参照し、基準コンテンツと、基準コンテンツに対する比較コンテンツとのスクリーンショットやオブジェクト情報を取得する。そして、判定部46は、取得した情報に基づき、基準コンテンツと比較コンテンツとの類似性を判定する。 The above-mentioned process is executed with reference to the information registered in the content database 33. For example, the determination unit 46 refers to the content database 33 and acquires screenshots and object information of the reference content and the comparison content with respect to the reference content. Then, the determination unit 46 determines the similarity between the reference content and the comparison content based on the acquired information.

通知部47は、判定結果に応じて、基準端末が実行したアプリケーションと比較端末が実行したアプリケーションとの関係性を示す情報を利用者に通知する。例えば、通知部47は、あるアプリケーションが比較端末に表示させた各比較コンテンツのうち、各比較コンテンツに対応する基準コンテンツと類似すると判定されたコンテンツの割合が所定の閾値を超える場合は、基準端末が実行したアプリケーションと比較端末が実行したアプリケーションとの同一性が担保されている旨を通知してもよい。また、通知部47は、比較した結果類似しないと判定された各コンテンツに関する情報を通知してもよい。 The notification unit 47 notifies the user of information indicating the relationship between the application executed by the reference terminal and the application executed by the comparison terminal according to the determination result. For example, when the ratio of the content determined to be similar to the reference content corresponding to each comparison content among the comparison contents displayed on the comparison terminal by a certain application exceeds a predetermined threshold, the notification unit 47 is the reference terminal. May notify that the identity between the application executed by the user and the application executed by the comparison terminal is guaranteed. Further, the notification unit 47 may notify information about each content determined to be dissimilar as a result of comparison.

〔4.処理手順〕
次に、図11を用いて、実施形態に係る情報提供装置10による判定処理の手順について説明する。図11は、実施形態に係る判定処理の流れの一例を示すフローチャートである。
[4. Processing procedure]
Next, the procedure of the determination process by the information providing apparatus 10 according to the embodiment will be described with reference to FIG. FIG. 11 is a flowchart showing an example of the flow of the determination process according to the embodiment.

例えば、情報提供装置10は、判定対象となるアプリケーションを受付けたか否かを判定する(ステップS201)。そして、情報提供装置10は、アプリケーションを受付けていない場合は(ステップS201:No)、受付けるまで待機する(ステップS201)。一方、情報提供装置10は、アプリケーションを受付けた場合は(ステップS201:Yes)、基準端末にアプリケーションを実行させ、基準コンテンツを取得する(ステップS202)。なお、情報提供装置10は、基準コンテンツが所定のデータベースに登録済みである場合は、それを取得すればよい。 For example, the information providing device 10 determines whether or not the application to be determined has been accepted (step S201). Then, if the information providing device 10 has not accepted the application (step S201: No), the information providing device 10 waits until the application is accepted (step S201). On the other hand, when the information providing device 10 receives the application (step S201: Yes), the information providing device 10 causes the reference terminal to execute the application and acquires the reference content (step S202). If the reference content is registered in a predetermined database, the information providing device 10 may acquire the reference content.

また、情報提供装置10は、比較端末にアプリケーションを実行させ、比較コンテンツを取得する(ステップS203)。なお、情報提供装置10は、任意の順序でステップS202、S203を実行してもよい。 Further, the information providing device 10 causes the comparison terminal to execute the application and acquires the comparison content (step S203). The information providing device 10 may execute steps S202 and S203 in any order.

そして、情報提供装置10は、基準コンテンツと比較コンテンツとの類似性が所定の条件を満たすか否かを判定し(ステップS204)、判定結果に応じた情報を提供して(ステップS205)、処理を終了する。 Then, the information providing device 10 determines whether or not the similarity between the reference content and the comparison content satisfies a predetermined condition (step S204), provides information according to the determination result (step S205), and processes. To finish.

〔5.変形例〕
上述した情報提供装置10は、上記実施形態以外にも種々の異なる形態にて実施されてもよい。そこで、以下では、情報提供装置10の他の実施形態について説明する。
[5. Modification example]
The information providing device 10 described above may be implemented in various different forms other than the above embodiment. Therefore, another embodiment of the information providing device 10 will be described below.

〔5-1.操作について〕
上述した例では、情報提供装置10は、アプリケーションが表示させたコンテンツの比較を行った。ここで、情報提供装置10は、生成処理や適用処理により生成された適用処理による試験において自動的に適用される操作の結果表示されるコンテンツの比較を行ってもよい。例えば、情報提供装置10は、利用者があるボタンをタップした場合や、QRコードの支払を行った場合、メニューを開く操作を行った場合において表示されるコンテンツを基準コンテンツや比較コンテンツとして取得し、取得した基準コンテンツや比較コンテンツの類似性を判定してもよい。
[5-1. About operation]
In the above example, the information providing device 10 compares the contents displayed by the application. Here, the information providing device 10 may compare the contents displayed as a result of the operation automatically applied in the test by the generation process or the application process generated by the application process. For example, the information providing device 10 acquires the content displayed when the user taps a certain button, pays for the QR code, or performs an operation to open the menu as reference content or comparison content. , The similarity of the acquired reference content or comparison content may be determined.

このように、情報提供装置10は、各種の操作により基準コンテンツや比較コンテンツの表示態様が変化する場合、変化前のコンテンツと変化後のコンテンツとをそれぞれ個別の基準コンテンツや比較コンテンツとして取得し、類似性を判定してもよい。なお、このような処理は、例えば、操作を行うたびにスクリーンショットを取得し、取得したスクリーンショットを基準コンテンツや比較コンテンツとして取得させる適用情報を生成することにより実現可能である。また、このような処理を行う場合、情報提供装置10は、例えば、基準コンテンツや比較コンテンツが、どのような操作が行われた際に表示されたものであるかに応じて、比較対象とする基準コンテンツや比較コンテンツを選択すればよい。すなわち、情報提供装置10は、基準端末や比較端末において、同じ操作が行われた際にアプリケーションが表示させるコンテンツの類似性を判定すればよい。 In this way, when the display mode of the reference content or the comparison content changes due to various operations, the information providing device 10 acquires the content before the change and the content after the change as individual reference content or comparison content, respectively. Similarity may be determined. It should be noted that such processing can be realized, for example, by acquiring a screenshot each time an operation is performed and generating application information for acquiring the acquired screenshot as reference content or comparison content. Further, when performing such processing, the information providing device 10 makes a comparison target, for example, depending on what kind of operation the reference content or the comparison content is displayed. You can select reference content and comparison content. That is, the information providing device 10 may determine the similarity of the contents displayed by the application when the same operation is performed on the reference terminal or the comparison terminal.

なお、情報提供装置10は、例えば、SNS等に対する所定の文字列や写真といったコンテンツの投稿や、ゲーム等に対する入力、動画の閲覧といった任意の行動が行われた際における操作が行われる度に、スクリーンショットを基準コンテンツや比較コンテンツとして取得させてもよい。また、情報提供装置10は、例えば、端末装置200の向きを変更する、端末装置200を振る、音量を変更する等、音声による各種操作の入力といったハードウェアに依存する各種の行動が行われる際の操作が行われる度に、スクリーンショットを基準コンテンツや比較コンテンツとして取得させてもよい。 The information providing device 10 is operated every time an operation is performed, for example, when an arbitrary action such as posting a content such as a predetermined character string or a photograph to an SNS or the like, inputting to a game or the like, or viewing a video is performed. Screenshots may be acquired as reference content or comparison content. Further, when the information providing device 10 performs various hardware-dependent actions such as inputting various operations by voice, such as changing the direction of the terminal device 200, shaking the terminal device 200, and changing the volume. Each time the operation of is performed, a screenshot may be acquired as reference content or comparison content.

また、情報提供装置10は、任意のアプリケーションについて上述した各種の処理を実行してよい。例えば、情報提供装置10は、端末装置200を用いた各種の決済サービスを提供するアプリケーションについて、操作情報の生成や、基準コンテンツや比較コンテンツの比較を行ってもよい。例えば、決済サービスには、店舗に設置されたQRコード(登録商標)を読み取るとともに、決済額の入力を受付け、QRコードと対応する店舗の口座に対し、受付けた決済額の電子マネーを利用者の口座から送金するといったサービスが存在する。また、決済サービスには、利用者の口座やクレジットカードを識別するバーコードを表示し、表示したバーコードを店舗の端末が読み取ることで、利用者に対する課金を実現するものが存在する。 Further, the information providing device 10 may execute the various processes described above for any application. For example, the information providing device 10 may generate operation information and compare reference contents and comparison contents with respect to an application that provides various payment services using the terminal device 200. For example, in the payment service, the user reads the QR code (registered trademark) installed in the store, accepts the input of the payment amount, and uses the electronic money of the received payment amount for the account of the store corresponding to the QR code. There are services such as sending money from your account. In addition, some payment services display a barcode that identifies a user's account or credit card, and the terminal of the store reads the displayed barcode to charge the user.

情報提供装置10は、このような各種決済サービスに関するアプリケーションについて、操作情報の生成や基準コンテンツや比較コンテンツの比較を行ってもよい。この場合、情報提供装置10は、例えば、所定の送金額を入力した場合、QRコードを読み取った場合、利用者の口座を示すバーコードを表示させた場合等において、基準コンテンツや比較コンテンツの比較を行うことで、適切な額や情報の表示が行われているかを判定してもよい。 The information providing device 10 may generate operation information and compare reference contents and comparison contents for applications related to such various payment services. In this case, the information providing device 10 compares the reference content and the comparison content, for example, when a predetermined remittance amount is input, when the QR code is read, when the bar code indicating the user's account is displayed, and the like. By doing so, it may be determined whether or not an appropriate amount or information is displayed.

〔5-2.目的について〕
ここで、情報提供装置10は、対象のアプリケーションの試験以外にも、任意の目的で上述した判定処理を行ってよい。例えば、各種の提携作業をソフトウェア型のロボットやAI(Artificial Intelligence)が代行、自動化するRPA(Robotic Process Automation)の技術が知られている。情報提供装置10は、このようなRPAの技術において、上述した判定処理を適用してもよい。例えば、情報提供装置10は、基準端末となるロボットの動作結果(例えば、動作時の外観を撮影した動画像)を基準コンテンツとし、比較端末となるロボットの動作結果を比較コンテンツとする。そして、情報提供装置10は、各コンテンツの同一性に基づいて、比較端末となるロボットが適切に動作するかを判定してもよい。
[5-2. About the purpose]
Here, the information providing device 10 may perform the above-mentioned determination process for any purpose other than the test of the target application. For example, RPA (Robotic Process Automation) technology is known in which software-type robots and AI (Artificial Intelligence) act on behalf of various alliance work and automate it. The information providing device 10 may apply the above-mentioned determination process in such RPA technology. For example, the information providing device 10 uses the operation result of the robot serving as the reference terminal (for example, a moving image obtained by photographing the appearance during operation) as the reference content, and the operation result of the robot serving as the comparison terminal as the comparison content. Then, the information providing device 10 may determine whether the robot serving as the comparison terminal operates appropriately based on the identity of each content.

また、情報提供装置10は、QAAS(Quality Assurance as a Service)を試験するために、各種ソフトウェアの比較処理を実行してもよい。例えば、情報提供装置10は、基準コンテンツと比較コンテンツとの類似性が所定の閾値を超える場合は、比較端末において実行されたアプリケーションのクオリティが所定の条件を満たすと判定してもよい。 Further, the information providing device 10 may execute a comparison process of various software in order to test QAAS (Quality Assurance as a Service). For example, the information providing device 10 may determine that the quality of the application executed on the comparison terminal satisfies the predetermined condition when the similarity between the reference content and the comparison content exceeds a predetermined threshold value.

このように、情報提供装置10は、表示される画像の類似性を判定する試験のみならず、アプリケーションが適切に動作するか、アプリケーションのクオリティが所定の閾値を超えているかに、判定結果を利用してもよい。また、情報提供装置10は、上述した目的以外にも、対象に対する操作を示す操作情報を生成するのであれば、任意の目的について、適用情報を生成してよい。 In this way, the information providing device 10 uses not only the test for determining the similarity of the displayed images but also the determination result as to whether the application operates properly or the quality of the application exceeds a predetermined threshold value. You may. Further, the information providing device 10 may generate application information for any purpose other than the above-mentioned purpose as long as it generates operation information indicating an operation for the target.

〔5-3.処理態様について〕
上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、逆に、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
[5-3. About processing mode]
Of the processes described in the above embodiments, all or part of the processes described as being automatically performed can be performed manually, and conversely, all the processes described as being performed manually. Alternatively, a part thereof can be automatically performed by a known method. In addition, information including processing procedures, specific names, various data and parameters shown in the above documents and drawings can be arbitrarily changed unless otherwise specified. For example, the various information shown in each figure is not limited to the information shown in the figure.

また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。 Further, each component of each of the illustrated devices is a functional concept, and does not necessarily have to be physically configured as shown in the figure. That is, the specific form of distribution / integration of each device is not limited to the one shown in the figure, and all or part of them may be functionally or physically distributed / physically in any unit according to various loads and usage conditions. Can be integrated and configured.

また、上記してきた各実施形態は、処理内容を矛盾させない範囲で適宜組合わせることが可能である。 In addition, each of the above-described embodiments can be appropriately combined as long as the processing contents do not contradict each other.

〔5-4.プログラム〕
また、上述した実施形態に係る情報提供装置10は、例えば図12に示すような構成のコンピュータ1000によって実現される。図12は、ハードウェア構成の一例を示す図である。コンピュータ1000は、出力装置1010、入力装置1020と接続され、演算装置1030、一次記憶装置1040、二次記憶装置1050、出力IF(Interface)1060、入力IF1070、ネットワークIF1080がバス1090により接続された形態を有する。
[5-4. program〕
Further, the information providing device 10 according to the above-described embodiment is realized by, for example, a computer 1000 having a configuration as shown in FIG. FIG. 12 is a diagram showing an example of a hardware configuration. The computer 1000 is connected to the output device 1010 and the input device 1020, and the arithmetic unit 1030, the primary storage device 1040, the secondary storage device 1050, the output IF (Interface) 1060, the input IF 1070, and the network IF 1080 are connected by the bus 1090. Have.

演算装置1030は、一次記憶装置1040や二次記憶装置1050に格納されたプログラムや入力装置1020から読み出したプログラム等に基づいて動作し、各種の処理を実行する。一次記憶装置1040は、RAM等、演算装置1030が各種の演算に用いるデータを一次的に記憶するメモリ装置である。また、二次記憶装置1050は、演算装置1030が各種の演算に用いるデータや、各種のデータベースが登録される記憶装置であり、ROM(Read Only Memory)、HDD(Hard Disk Drive)、フラッシュメモリ等により実現される。 The arithmetic unit 1030 operates based on a program stored in the primary storage device 1040 or the secondary storage device 1050, a program read from the input device 1020, or the like, and executes various processes. The primary storage device 1040 is a memory device that temporarily stores data used by the arithmetic unit 1030 for various operations such as RAM. Further, the secondary storage device 1050 is a storage device in which data used by the calculation device 1030 for various calculations and various databases are registered, such as a ROM (Read Only Memory), an HDD (Hard Disk Drive), and a flash memory. Is realized by.

出力IF1060は、モニタやプリンタといった各種の情報を出力する出力装置1010に対し、出力対象となる情報を送信するためのインタフェースであり、例えば、USB(Universal Serial Bus)やDVI(Digital Visual Interface)、HDMI(登録商標)(High Definition Multimedia Interface)といった規格のコネクタにより実現される。また、入力IF1070は、マウス、キーボード、およびスキャナ等といった各種の入力装置1020から情報を受信するためのインタフェースであり、例えば、USB等により実現される。 The output IF 1060 is an interface for transmitting information to be output to an output device 1010 that outputs various information such as a monitor and a printer. For example, USB (Universal Serial Bus), DVI (Digital Visual Interface), and the like. It is realized by a connector of a standard such as HDMI (registered trademark) (High Definition Multimedia Interface). Further, the input IF 1070 is an interface for receiving information from various input devices 1020 such as a mouse, a keyboard, a scanner, and the like, and is realized by, for example, USB.

なお、入力装置1020は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等から情報を読み出す装置であってもよい。また、入力装置1020は、USBメモリ等の外付け記憶媒体であってもよい。 The input device 1020 is, for example, an optical recording medium such as a CD (Compact Disc), a DVD (Digital Versatile Disc), a PD (Phase change rewritable Disk), a magneto-optical recording medium such as an MO (Magneto-Optical disk), or a tape. It may be a device that reads information from a medium, a magnetic recording medium, a semiconductor memory, or the like. Further, the input device 1020 may be an external storage medium such as a USB memory.

ネットワークIF1080は、ネットワークNを介して他の機器からデータを受信して演算装置1030へ送り、また、ネットワークNを介して演算装置1030が生成したデータを他の機器へ送信する。 The network IF 1080 receives data from another device via the network N and sends it to the arithmetic unit 1030, and also transmits the data generated by the arithmetic unit 1030 to the other device via the network N.

演算装置1030は、出力IF1060や入力IF1070を介して、出力装置1010や入力装置1020の制御を行う。例えば、演算装置1030は、入力装置1020や二次記憶装置1050からプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行する。 The arithmetic unit 1030 controls the output device 1010 and the input device 1020 via the output IF 1060 and the input IF 1070. For example, the arithmetic unit 1030 loads a program from the input device 1020 or the secondary storage device 1050 onto the primary storage device 1040, and executes the loaded program.

例えば、コンピュータ1000が情報提供装置10として機能する場合、コンピュータ1000の演算装置1030は、一次記憶装置1040上にロードされたプログラムを実行することにより、制御部40の機能を実現する。 For example, when the computer 1000 functions as the information providing device 10, the arithmetic unit 1030 of the computer 1000 realizes the function of the control unit 40 by executing the program loaded on the primary storage device 1040.

〔6.効果〕
上述したように、情報提供装置10は、基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する。そして、情報提供装置10は、基準コンテンツが有する特徴と、比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定する。
[6. effect〕
As described above, the information providing device 10 includes the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes the predetermined application. To get. Then, the information providing device 10 determines whether or not the similarity between the feature of the reference content and the feature of the comparative content satisfies a predetermined condition.

例えば、情報提供装置10は、比較端末が基準端末と同じ所定のアプリケーションを実行した際に表示させた比較コンテンツを取得する。このような処理の結果、情報提供装置10は、同一のアプリケーションが異なる端末装置に表示させるコンテンツの類似性を判定することができるので、アプリケーションの開発時や更新時において、適切な開発が行われているかを自動的に判定することができる。また、情報提供装置10は、異なるアプリケーションを比較端末と基準端末とに実行させた場合、比較端末で実行させたアプリケーションが、基準端末で実行させたアプリケーションと同一視できるかを自動的に判定することができる。このような判定を自動化する結果、情報提供装置10は、各種アプリケーションが提供するUIの試験を自動化し、手間を削減することができる。 For example, the information providing device 10 acquires the comparison content displayed when the comparison terminal executes the same predetermined application as the reference terminal. As a result of such processing, the information providing device 10 can determine the similarity of the contents displayed on different terminal devices by the same application, so that appropriate development is performed at the time of application development or update. It can be automatically determined whether or not it is. Further, when the comparison terminal and the reference terminal execute different applications, the information providing device 10 automatically determines whether the application executed on the comparison terminal can be identified with the application executed on the reference terminal. be able to. As a result of automating such a determination, the information providing device 10 can automate the test of the UI provided by various applications and reduce the time and effort.

また、情報提供装置10は、基準コンテンツの外観が有する特徴と、比較コンテンツが有する外観の特徴との類似性が所定の条件を満たすか否かを判定する。また、情報提供装置10は、基準コンテンツ内に配置されたオブジェクトの配置位置と、比較コンテンツ内に配置されたオブジェクトの配置位置との類似性が所定の条件を満たすか否かを判定する
このため、情報提供装置10は、利用者が同一のサービスを提供するコンテンツであると判断することができる程度に外観が類似しているかを自動的に判定することができる。
Further, the information providing device 10 determines whether or not the similarity between the characteristics of the appearance of the reference content and the characteristics of the appearance of the comparative content satisfies a predetermined condition. Further, the information providing device 10 determines whether or not the similarity between the arrangement position of the object arranged in the reference content and the arrangement position of the object arranged in the comparison content satisfies a predetermined condition. , The information providing device 10 can automatically determine whether the appearances are similar to the extent that the user can determine that the contents provide the same service.

また、情報提供装置10は、基準コンテンツ内に配置された複数のオブジェクトの相対的な配置位置と、比較コンテンツ内に配置された複数のオブジェクトの相対的なオブジェクトの配置位置との類似性が所定の条件を満たすか否かを判定する。また、情報提供装置10は、基準コンテンツ内に複数のオブジェクトが配置されている順序と、比較コンテンツ内に複数のオブジェクトが配置されている順序との類似性が所定の条件を満たすか否かを判定する。このため、情報提供装置10は、オブジェクトの相対的な位置関係や順序が利用者に与える類似性に応じて、各コンテンツの類似性を判定することができる。 Further, the information providing device 10 determines the similarity between the relative arrangement position of the plurality of objects arranged in the reference content and the relative arrangement position of the plurality of objects arranged in the comparison content. Judge whether or not the condition of is satisfied. Further, the information providing device 10 determines whether or not the similarity between the order in which a plurality of objects are arranged in the reference content and the order in which the plurality of objects are arranged in the comparison content satisfies a predetermined condition. judge. Therefore, the information providing device 10 can determine the similarity of each content according to the similarity given to the user by the relative positional relationship and the order of the objects.

また、情報提供装置10は、基準コンテンツに含まれる文字が有する外観の特徴と、比較コンテンツに含まれる文字が有する外観の特徴との類似性が所定の条件を満たすか否かを判定する。このため、情報提供装置10は、字体等、文字の外観が利用者に与える類似性に応じて、各コンテンツの類似性を判定することができる。 Further, the information providing device 10 determines whether or not the similarity between the appearance characteristics of the characters included in the reference content and the appearance characteristics of the characters included in the comparison content satisfies a predetermined condition. Therefore, the information providing device 10 can determine the similarity of each content according to the similarity given to the user by the appearance of the characters such as the font.

また、情報提供装置10は、基準コンテンツ内に配置されたオブジェクトと類似するオブジェクトが比較コンテンツ内に配置されているか否かに基づいて、基準コンテンツが有する特徴と、比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定する。また、情報提供装置10は、基準コンテンツ内に配置されたオブジェクトのうち、利用者からの操作により所定の機能を発揮する機能オブジェクトと、比較コンテンツ内に配置された機能オブジェクトとの類似性が所定の条件を満たすか否かを判定する。このため、情報提供装置10は、各種のコンテンツの有無や類似性に応じて、各コンテンツの類似性を判定することができる。 Further, the information providing device 10 is similar to the feature of the reference content and the feature of the comparison content based on whether or not an object similar to the object arranged in the reference content is arranged in the comparison content. It is determined whether or not the sex satisfies a predetermined condition. Further, among the objects arranged in the reference content, the information providing device 10 determines the similarity between the functional object that exerts a predetermined function by the operation from the user and the functional object arranged in the comparison content. Judge whether or not the condition of is satisfied. Therefore, the information providing device 10 can determine the similarity of each content according to the presence / absence and similarity of various contents.

また、情報提供装置10は、基準コンテンツ内に配置された機能オブジェクトが発揮する機能と、比較コンテンツ内に配置された機能オブジェクトが発揮する機能との類似性が所定の条件を満たすか否かを判定する。このため、情報提供装置10は、各コンテンツが提供する機能の類似性に基づいて、各コンテンツの類似性を判定することができる。 Further, the information providing device 10 determines whether or not the similarity between the function exhibited by the functional object arranged in the reference content and the function exhibited by the functional object arranged in the comparison content satisfies a predetermined condition. judge. Therefore, the information providing device 10 can determine the similarity of each content based on the similarity of the functions provided by each content.

また、情報提供装置10は、基準コンテンツ内に配置された機能オブジェクトの外観と、比較コンテンツ内に配置された機能オブジェクトの外観との類似性が所定の条件を満たすか否かを判定する。このため、情報提供装置10は、外観が利用者に与える類似性に応じて、各コンテンツの類似性を判定することができる。 Further, the information providing device 10 determines whether or not the similarity between the appearance of the functional object arranged in the reference content and the appearance of the functional object arranged in the comparison content satisfies a predetermined condition. Therefore, the information providing device 10 can determine the similarity of each content according to the similarity that the appearance gives to the user.

また、情報提供装置10は、基準コンテンツが有する属性の特徴と、比較コンテンツが有する属性の特徴との類似性が所定の条件を満たすか否かを判定する。また、情報提供装置10は、基準コンテンツが有する機能の特徴と、比較コンテンツが有する機能の特徴との類似性が所定の条件を満たすか否かを判定する。このため、情報提供装置10は、各コンテンツの類似性を適切に判定し、各コンテンツの類似性を判定することができる。 Further, the information providing device 10 determines whether or not the similarity between the attribute characteristics of the reference content and the attribute characteristics of the comparison content satisfies a predetermined condition. Further, the information providing device 10 determines whether or not the similarity between the functional feature of the reference content and the functional feature of the comparative content satisfies a predetermined condition. Therefore, the information providing device 10 can appropriately determine the similarity of each content and determine the similarity of each content.

また、情報提供装置10は、基準コンテンツが有する特徴を示す基準特徴情報と比較コンテンツが有する特徴を示す比較特徴情報とが入力された場合に、利用者によって設定された情報であって、その基準コンテンツと比較コンテンツとが類似するか否かを示す情報を出力するように学習が行われたモデルを用いて、基準コンテンツが有する特徴と、比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定する。このため、情報提供装置10は、利用者が各コンテンツを同一の機能を提供するコンテンツと判断するか否かを自動的に判定することができる。 Further, the information providing device 10 is information set by the user when the reference feature information indicating the feature of the reference content and the comparative feature information indicating the feature of the comparison content are input, and the reference thereof. Using a model trained to output information indicating whether the content and the comparison content are similar, the similarity between the characteristics of the reference content and the characteristics of the comparison content is a predetermined condition. Determine if it meets or not. Therefore, the information providing device 10 can automatically determine whether or not the user determines that each content is content that provides the same function.

また、情報提供装置10は、基準端末が表示させた基準コンテンツのスクリーンショットと、比較端末が表示させた比較コンテンツのスクリーンショットとを取得する。また、情報提供装置10は、基準端末が基準コンテンツを表示させた際の複数スクリーンショットと、比較端末が比較コンテンツを表示させた際の複数のスクリーンショットとを取得する。また、情報提供装置10は、基準端末におけるスクリーンショットと、比較端末におけるスクリーンショットであって、基準端末におけるスクリーンショットとは異なる数のスクリーンショットとを取得する。このため、情報提供装置10は、単一のコンテンツの全体が基準端末あるいは比較端末に表示される場合や、一部のみが表示される場合であっても、適切にコンテンツの同一性を自動的に判定することができる。 Further, the information providing device 10 acquires a screenshot of the reference content displayed by the reference terminal and a screenshot of the comparison content displayed by the comparison terminal. Further, the information providing device 10 acquires a plurality of screenshots when the reference terminal displays the reference content and a plurality of screenshots when the comparison terminal displays the comparison content. Further, the information providing device 10 acquires a screenshot of the reference terminal and a screenshot of the comparison terminal, which is different from the screenshot of the reference terminal. Therefore, the information providing device 10 automatically automatically identifies the identity of the content appropriately even when the entire single content is displayed on the reference terminal or the comparison terminal, or when only a part of the content is displayed. Can be determined.

また、情報提供装置10は、判定結果に応じて、基準端末が実行したアプリケーションと比較端末が実行したアプリケーションとの関係性を示す情報を利用者に通知する。このため、情報提供装置10は、例えば、アプリケーションの修正の要否や、アプリケーションが正当なアプリケーションであるか否かといった各種の情報を提供することができる。 Further, the information providing device 10 notifies the user of information indicating the relationship between the application executed by the reference terminal and the application executed by the comparison terminal according to the determination result. Therefore, the information providing device 10 can provide various information such as whether or not the application needs to be modified and whether or not the application is a legitimate application.

以上、本願の実施形態を図面に基づいて詳細に説明したが、これは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。 The embodiments of the present application have been described in detail with reference to the drawings, but this is an example, and various modifications and improvements are made based on the knowledge of those skilled in the art, including the embodiments described in the disclosure column of the invention. It is possible to carry out the present invention in other forms described above.

また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。 Further, the above-mentioned "section, module, unit" can be read as "means" or "circuit". For example, the acquisition unit can be read as an acquisition means or an acquisition circuit.

10 情報提供装置
20 通信部
30 記憶部
31 操作データベース
32 組合わせデータベース
33 コンテンツデータベース
40 制御部
41 特定部
42 決定部
43 生成部
44 取得部
46 判定部
47 通知部
200 端末装置
300 操作者端末
BT 基準端末
CS クラウドサーバ
10 Information provider 20 Communication unit 30 Storage unit 31 Operation database 32 Combination database 33 Content database 40 Control unit 41 Specific unit 42 Decision unit 43 Generation unit 44 Acquisition unit 46 Judgment unit 47 Notification unit 200 Terminal device 300 Operator terminal BT reference Terminal CS cloud server

Claims (27)

基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得部と、
前記基準コンテンツ内に配置された複数のオブジェクトが配置されている順序と、前記比較コンテンツ内に配置された複数のオブジェクトが配置されている順序との類似性が所定の条件を満たすか否かを判定する判定部と
を有することを特徴とする判定装置。
An acquisition unit that acquires the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes the predetermined application.
Whether or not the similarity between the order in which the plurality of objects arranged in the reference content are arranged and the order in which the plurality of objects arranged in the comparison content are arranged satisfies a predetermined condition. A determination device characterized by having a determination unit for determination.
基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得部と、
前記基準コンテンツ内に配置されたオブジェクトのうち、利用者からの操作により所定の機能を発揮する機能オブジェクトが発揮する機能と、前記比較コンテンツ内に配置された機能オブジェクトが発揮する機能との類似性が所定の条件を満たすか否かを判定する判定部と
を有することを特徴とする判定装置。
An acquisition unit that acquires the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes the predetermined application.
Among the objects arranged in the reference content, the function exhibited by the functional object that exerts a predetermined function by the operation from the user and the function exhibited by the functional object arranged in the comparison content are similar to each other. A determination device comprising a determination unit for determining whether or not a predetermined condition is satisfied.
前記判定部は、前記基準コンテンツ内に配置された機能オブジェクトの外観と、前記比較コンテンツ内に配置された機能オブジェクトの外観との類似性が所定の条件を満たすか否かを判定する
ことを特徴とする請求項に記載の判定装置。
The determination unit is characterized in that it determines whether or not the similarity between the appearance of the functional object arranged in the reference content and the appearance of the functional object arranged in the comparison content satisfies a predetermined condition. The determination device according to claim 2 .
基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得部と、
基準コンテンツが有する特徴を示す基準特徴情報と比較コンテンツが有する特徴を示す比較特徴情報とが入力された場合に、利用者によって設定された情報であって、当該基準コンテンツと比較コンテンツとが類似するか否かを示す情報を出力するように学習が行われたモデルを用いて、前記基準コンテンツが有する特徴と、前記比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定する判定部と
を有することを特徴とする判定装置。
An acquisition unit that acquires the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes the predetermined application.
Information set by the user when the standard feature information indicating the characteristics of the reference content and the comparative feature information indicating the characteristics of the comparison content are input, and the reference content and the comparison content are similar. Using a model trained to output information indicating whether or not, it is determined whether or not the similarity between the feature of the reference content and the feature of the comparative content satisfies a predetermined condition. A determination device characterized by having a determination unit and a determination unit.
基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得部と、 An acquisition unit that acquires the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes the predetermined application.
前記基準コンテンツに配置された文字列と、前記比較コンテンツに配置された文字列との類似性が所定の条件を満たすか否かを判定する判定部と A determination unit for determining whether or not the similarity between the character string arranged in the reference content and the character string arranged in the comparison content satisfies a predetermined condition.
を有し、 Have,
前記判定部は、前記基準コンテンツ内に配置された第1言語の第1文字列と、前記比較コンテンツ内に配置された第2言語の第2文字列とが、同一内容を示している場合は、当該第1文字列と当該第2文字列とが同一もしくは類似すると判定する When the determination unit indicates that the first character string of the first language arranged in the reference content and the second character string of the second language arranged in the comparison content indicate the same content. , Judge that the first character string and the second character string are the same or similar
ことを特徴とする判定装置。 A judgment device characterized by the fact that.
前記基準端末が実行する所定のアプリケーションと、前記比較端末が実行する前記所定のアプリケーションに対して、所定の機能を発揮させるために行われる操作を適用する適用部
をさらに有し、
前記取得部は、前記操作が適用された際に前記基準端末が表示させた基準コンテンツと、前記操作が適用された際に前記比較端末が表示させた比較コンテンツとを取得す
ことを特徴とする請求項1~5のいずれか1つに記載の判定装置。
An application unit that applies an operation performed to exert a predetermined function to a predetermined application executed by the reference terminal and the predetermined application executed by the comparison terminal.
Have more
The acquisition unit acquires the reference content displayed by the reference terminal when the operation is applied and the comparison content displayed by the comparison terminal when the operation is applied .
The determination device according to any one of claims 1 to 5, wherein the determination device is characterized by the above.
前記判定部は、前記基準コンテンツが有する機能の特徴と、前記比較コンテンツが有する機能の特徴との類似性が所定の条件を満たすか否かを判定する
ことを特徴とする請求項1~6のうちいずれか1つに記載の判定装置。
The determination unit is characterized in that it determines whether or not the similarity between the feature of the function of the reference content and the feature of the function of the comparison content satisfies a predetermined condition . The determination device according to any one of them .
前記取得部は、前記比較端末が前記基準端末と同じ前記所定のアプリケーションを実行した際に表示させた比較コンテンツを取得する
ことを特徴とする請求項1~のうちいずれか1つに記載の判定装置。
The acquisition unit according to any one of claims 1 to 7 , wherein the acquisition unit acquires the comparison content displayed when the comparison terminal executes the same predetermined application as the reference terminal. Judgment device.
前記判定部は、前記基準コンテンツの外観が有する特徴と、前記比較コンテンツが有する外観の特徴との類似性が所定の条件を満たすか否かを判定する
ことを特徴とする請求項1~のうちいずれか1つに記載の判定装置。
The determination unit is characterized in that it determines whether or not the similarity between the appearance feature of the reference content and the appearance feature of the comparison content satisfies a predetermined condition. The determination device according to any one of them.
前記判定部は、前記基準コンテンツ内に配置されたオブジェクトの配置位置と、前記比較コンテンツ内に配置されたオブジェクトの配置位置との類似性が所定の条件を満たすか否かを判定する
ことを特徴とする請求項に記載の判定装置。
The determination unit is characterized in that it determines whether or not the similarity between the arrangement position of the object arranged in the reference content and the arrangement position of the object arranged in the comparison content satisfies a predetermined condition. The determination device according to claim 9 .
前記判定部は、前記基準コンテンツ内に配置された複数のオブジェクトの相対的な配置位置と、前記比較コンテンツ内に配置された複数のオブジェクトの相対的なオブジェクトの配置位置との類似性が所定の条件を満たすか否かを判定する
ことを特徴とする請求項1に記載の判定装置。
The determination unit has a predetermined similarity between the relative placement positions of the plurality of objects placed in the reference content and the relative placement positions of the plurality of objects placed in the comparison content. The determination device according to claim 10 , wherein the determination device determines whether or not the conditions are satisfied.
前記判定部は、前記基準コンテンツ内に前記複数のオブジェクトが配置されている順序と、前記比較コンテンツ内に前記複数のオブジェクトが配置されている順序との類似性が所定の条件を満たすか否かを判定する
ことを特徴とする請求項1に記載の判定装置。
The determination unit determines whether or not the similarity between the order in which the plurality of objects are arranged in the reference content and the order in which the plurality of objects are arranged in the comparison content satisfies a predetermined condition. The determination device according to claim 11, further comprising determining.
前記判定部は、前記基準コンテンツに含まれる文字が有する外観の特徴と、前記比較コンテンツに含まれる文字が有する外観の特徴との類似性が所定の条件を満たすか否かを判定する
ことを特徴とする請求項~1のうちいずれか1つに記載の判定装置。
The determination unit is characterized in that it determines whether or not the similarity between the appearance characteristics of the characters included in the reference content and the appearance characteristics of the characters included in the comparison content satisfies a predetermined condition. The determination device according to any one of claims 9 to 12.
前記判定部は、前記基準コンテンツ内に配置されたオブジェクトと類似するオブジェクトが前記比較コンテンツ内に配置されているか否かに基づいて、前記基準コンテンツが有する特徴と、前記比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定する
ことを特徴とする請求項1~1のうちいずれか1つに記載の判定装置。
The determination unit has a feature of the reference content and a feature of the comparison content based on whether or not an object similar to the object placed in the reference content is placed in the comparison content. The determination device according to any one of claims 1 to 13, wherein it is determined whether or not the similarity satisfies a predetermined condition.
前記判定部は、前記基準コンテンツが有する属性の特徴と、前記比較コンテンツが有する属性の特徴との類似性が所定の条件を満たすか否かを判定する
ことを特徴とする請求項1~1のうちいずれか1つに記載の判定装置。
Claims 1 to 14 are characterized in that the determination unit determines whether or not the similarity between the attribute characteristics of the reference content and the attribute characteristics of the comparison content satisfies a predetermined condition. The determination device according to any one of them.
前記取得部は、前記基準端末が表示させた基準コンテンツのスクリーンショットと、前記比較端末が表示させた比較コンテンツのスクリーンショットとを取得する
ことを特徴とする請求項1~1のうちいずれか1つに記載の判定装置。
One of claims 1 to 15 , wherein the acquisition unit acquires a screenshot of the reference content displayed by the reference terminal and a screenshot of the comparison content displayed by the comparison terminal. The determination device according to one.
前記取得部は、前記基準端末が前記基準コンテンツを表示させた際の複数スクリーンショットと、前記比較端末が前記比較コンテンツを表示させた際の複数のスクリーンショットとを取得する
ことを特徴とする請求項1に記載の判定装置。
The acquisition unit is characterized in that it acquires a plurality of screenshots when the reference terminal displays the reference content and a plurality of screenshots when the comparison terminal displays the comparison content. Item 16. The determination device according to item 16 .
前記取得部は、前記基準端末におけるスクリーンショットと、前記比較端末におけるスクリーンショットであって、前記基準端末におけるスクリーンショットとは異なる数のスクリーンショットとを取得する
ことを特徴とする請求項1に記載の判定装置。
16 is characterized in that the acquisition unit acquires a screenshot of the reference terminal and a screenshot of the comparison terminal, which is different from the screenshot of the reference terminal. The determination device described.
前記判定部による判定結果に応じて、前記基準端末が実行したアプリケーションと前記比較端末が実行したアプリケーションとの関係性を示す情報を利用者に通知する通知部
を有することを特徴とする請求項1~1のうちいずれか1つに記載の判定装置。
Claim 1 is characterized by having a notification unit for notifying a user of information indicating a relationship between an application executed by the reference terminal and an application executed by the comparison terminal according to a determination result by the determination unit. The determination device according to any one of 18 to 18.
判定装置が実行する判定方法であって、
基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得工程と、
前記基準コンテンツに配置された文字列と、前記比較コンテンツに配置された文字列との類似性が所定の条件を満たすか否かを判定する判定工程と
を含み、
前記判定工程は、前記基準コンテンツ内に配置された第1言語の第1文字列と、前記比較コンテンツ内に配置された第2言語の第2文字列とが、同一内容を示している場合は、当該第1文字列と当該第2文字列とが同一もしくは類似すると判定する
ことを特徴とする判定方法。
It is a judgment method executed by the judgment device.
An acquisition process for acquiring the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes the predetermined application .
It includes a determination step of determining whether or not the similarity between the character string arranged in the reference content and the character string arranged in the comparison content satisfies a predetermined condition.
In the determination step, when the first character string of the first language arranged in the reference content and the second character string of the second language arranged in the comparison content indicate the same content, the determination step is performed. , Judge that the first character string and the second character string are the same or similar
Judgment method characterized by that.
基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得手順と、
前記基準コンテンツに配置された文字列と、前記比較コンテンツに配置された文字列との類似性が所定の条件を満たすか否かを判定する判定手順と
をコンピュータに実行させるための判定プログラムであって、
前記判定手順は、前記基準コンテンツ内に配置された第1言語の第1文字列と、前記比較コンテンツ内に配置された第2言語の第2文字列とが、同一内容を示している場合は、当該第1文字列と当該第2文字列とが同一もしくは類似すると判定する
ことを特徴とする判定プログラム
An acquisition procedure for acquiring the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes a predetermined application, and an acquisition procedure.
It is a determination program for causing a computer to execute a determination procedure for determining whether or not the similarity between the character string arranged in the reference content and the character string arranged in the comparison content satisfies a predetermined condition. hand,
In the determination procedure, when the first character string of the first language arranged in the reference content and the second character string of the second language arranged in the comparison content indicate the same content, the determination procedure is performed. , Judge that the first character string and the second character string are the same or similar
A judgment program characterized by that .
判定装置が実行する判定方法であって、
基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得工程と、
前記基準コンテンツ内に配置された複数のオブジェクトが配置されている順序と、前記比較コンテンツ内に配置された複数のオブジェクトが配置されている順序との類似性が所定の条件を満たすか否かを判定する判定工程と
を含むことを特徴とする判定方法。
It is a judgment method executed by the judgment device.
An acquisition process for acquiring the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes the predetermined application.
Whether or not the similarity between the order in which the plurality of objects arranged in the reference content are arranged and the order in which the plurality of objects arranged in the comparison content are arranged satisfies a predetermined condition. A determination method including a determination determination step.
基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得手順と、
前記基準コンテンツ内に配置された複数のオブジェクトが配置されている順序と、前記比較コンテンツ内に配置された複数のオブジェクトが配置されている順序との類似性が所定の条件を満たすか否かを判定する判定手順と
をコンピュータに実行させるための判定プログラム。
An acquisition procedure for acquiring the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes a predetermined application, and an acquisition procedure.
Whether or not the similarity between the order in which the plurality of objects arranged in the reference content are arranged and the order in which the plurality of objects arranged in the comparison content are arranged satisfies a predetermined condition. Judgment A judgment program for making a computer execute the judgment procedure.
判定装置が実行する判定方法であって、
基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得工程と、
前記基準コンテンツ内に配置されたオブジェクトのうち、利用者からの操作により所定の機能を発揮する機能オブジェクトが発揮する機能と、前記比較コンテンツ内に配置された機能オブジェクトが発揮する機能との類似性が所定の条件を満たすか否かを判定する判定工程と
を含むことを特徴とする判定方法。
It is a judgment method executed by the judgment device.
An acquisition process for acquiring the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes the predetermined application.
Among the objects arranged in the reference content, the function exhibited by the functional object that exerts a predetermined function by the operation from the user and the function exhibited by the functional object arranged in the comparison content are similar to each other. A determination method including a determination step of determining whether or not a predetermined condition is satisfied.
基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得手順と、
前記基準コンテンツ内に配置されたオブジェクトのうち、利用者からの操作により所定の機能を発揮する機能オブジェクトが発揮する機能と、前記比較コンテンツ内に配置された機能オブジェクトが発揮する機能との類似性が所定の条件を満たすか否かを判定する判定手順と
をコンピュータに実行させるための判定プログラム。
An acquisition procedure for acquiring the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes a predetermined application, and an acquisition procedure.
Among the objects arranged in the reference content, the function exhibited by the functional object that exerts a predetermined function by the operation from the user and the function exhibited by the functional object arranged in the comparison content are similar to each other. A judgment program for causing a computer to execute a judgment procedure for judging whether or not a predetermined condition is satisfied.
判定装置が実行する判定方法であって、
基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得工程と、
基準コンテンツが有する特徴を示す基準特徴情報と比較コンテンツが有する特徴を示す比較特徴情報とが入力された場合に、利用者によって設定された情報であって、当該基準コンテンツと比較コンテンツとが類似するか否かを示す情報を出力するように学習が行われたモデルを用いて、前記基準コンテンツが有する特徴と、前記比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定する判定工程と
を含むことを特徴とする判定方法。
It is a judgment method executed by the judgment device.
An acquisition process for acquiring the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes the predetermined application.
Information set by the user when the standard feature information indicating the characteristics of the reference content and the comparative feature information indicating the characteristics of the comparison content are input, and the reference content and the comparison content are similar. Using a model trained to output information indicating whether or not, it is determined whether or not the similarity between the feature of the reference content and the feature of the comparative content satisfies a predetermined condition. Judgment method characterized by including a determination step to be performed.
基準端末が所定のアプリケーションを実行した際に表示させた基準コンテンツと、比較対象となる比較端末が所定のアプリケーションを実行した際に表示させた比較コンテンツとを取得する取得手順と、
基準コンテンツが有する特徴を示す基準特徴情報と比較コンテンツが有する特徴を示す比較特徴情報とが入力された場合に、利用者によって設定された情報であって、当該基準コンテンツと比較コンテンツとが類似するか否かを示す情報を出力するように学習が行われたモデルを用いて、前記基準コンテンツが有する特徴と、前記比較コンテンツが有する特徴との類似性が所定の条件を満たすか否かを判定する判定手順と
をコンピュータに実行させるための判定プログラム。
An acquisition procedure for acquiring the reference content displayed when the reference terminal executes a predetermined application and the comparison content displayed when the comparison terminal to be compared executes a predetermined application, and an acquisition procedure.
Information set by the user when the standard feature information indicating the characteristics of the reference content and the comparative feature information indicating the characteristics of the comparison content are input, and the reference content and the comparison content are similar. Using a model trained to output information indicating whether or not, it is determined whether or not the similarity between the feature of the reference content and the feature of the comparative content satisfies a predetermined condition. Judgment program to make the computer execute the judgment procedure to be performed.
JP2021020182A 2021-02-10 2021-02-10 Judgment device, judgment method and judgment program Active JP7029557B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021020182A JP7029557B1 (en) 2021-02-10 2021-02-10 Judgment device, judgment method and judgment program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021020182A JP7029557B1 (en) 2021-02-10 2021-02-10 Judgment device, judgment method and judgment program

Publications (2)

Publication Number Publication Date
JP7029557B1 true JP7029557B1 (en) 2022-03-03
JP2022122740A JP2022122740A (en) 2022-08-23

Family

ID=81212293

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021020182A Active JP7029557B1 (en) 2021-02-10 2021-02-10 Judgment device, judgment method and judgment program

Country Status (1)

Country Link
JP (1) JP7029557B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023188442A1 (en) * 2022-04-01 2023-10-05 株式会社エクストーン Software testing method

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7712980B2 (en) * 2023-06-14 2025-07-24 株式会社オービック Test scenario creation support system, test scenario creation support method, and test scenario creation support program

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008065749A (en) 2006-09-11 2008-03-21 Nippon Telegr & Teleph Corp <Ntt> Remote device operation system and remote device operation server
US20090248396A1 (en) 2008-03-28 2009-10-01 International Business Machines Corporation Method for automating an internationalization test in a multilingual web application
JP2010186406A (en) 2009-02-13 2010-08-26 Internatl Business Mach Corp <Ibm> Apparatus and method for supporting verification of software internationalization
JP2017138715A (en) 2016-02-02 2017-08-10 日本電信電話株式会社 Screen difference pass/fail determination device, screen difference pass/fail determination method, and program
JP2017162120A (en) 2016-03-08 2017-09-14 三菱電機株式会社 Information processor, information processing method, and information processing program
JP2018180094A (en) 2017-04-05 2018-11-15 東芝三菱電機産業システム株式会社 Hmi screen testing device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210286709A1 (en) * 2017-05-15 2021-09-16 Mitsubishi Electric Corporation Screen test apparatus and computer readable medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008065749A (en) 2006-09-11 2008-03-21 Nippon Telegr & Teleph Corp <Ntt> Remote device operation system and remote device operation server
US20090248396A1 (en) 2008-03-28 2009-10-01 International Business Machines Corporation Method for automating an internationalization test in a multilingual web application
JP2010186406A (en) 2009-02-13 2010-08-26 Internatl Business Mach Corp <Ibm> Apparatus and method for supporting verification of software internationalization
JP2017138715A (en) 2016-02-02 2017-08-10 日本電信電話株式会社 Screen difference pass/fail determination device, screen difference pass/fail determination method, and program
JP2017162120A (en) 2016-03-08 2017-09-14 三菱電機株式会社 Information processor, information processing method, and information processing program
JP2018180094A (en) 2017-04-05 2018-11-15 東芝三菱電機産業システム株式会社 Hmi screen testing device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023188442A1 (en) * 2022-04-01 2023-10-05 株式会社エクストーン Software testing method
JP2023151697A (en) * 2022-04-01 2023-10-16 株式会社エクストーン Software testing method

Also Published As

Publication number Publication date
JP2022122740A (en) 2022-08-23

Similar Documents

Publication Publication Date Title
US11119738B2 (en) Generating data mappings for user interface screens and screen components for an application
US11822919B2 (en) Auto-generation of API documentation via implementation-neutral analysis of API traffic
US9164874B1 (en) Testing conversion and rendering of digital content
US8671389B1 (en) Web application resource manager on the web and localizable components
US11468226B2 (en) Systems and methods for presentation of a terminal application screen
CN108399072B (en) Application page updating method and device
JP6861880B1 (en) Generation device, generation method and generation program
CN108292231A (en) It generates and applies from data
CN104484171A (en) System, method and associated equipment for designing terminal interface
US9195653B2 (en) Identification of in-context resources that are not fully localized
WO2013075612A1 (en) Auto login method and device
JP6354457B2 (en) Application development support apparatus, data processing method thereof, and program
CN112835579A (en) Method, apparatus, electronic device and storage medium for determining interface code
WO2021059848A1 (en) Information processing device, information processing method, and information processing program
JP7029557B1 (en) Judgment device, judgment method and judgment program
US20150161160A1 (en) Application Localization
CN112527278A (en) Smart form generating and issuing method, device, terminal and storage medium
CN114579461A (en) Browser compatibility detection method and related equipment
US8452814B1 (en) Gathering context in action to support in-context localization
US7882205B2 (en) Device setting apparatus, device setting method, information acquiring apparatus, information acquiring method, storage medium, and program
JP6798050B1 (en) Generator, generation method and generation program
CN115469849B (en) Service processing system, method, electronic equipment and storage medium
CN111078529A (en) Client write-in module testing method and device and electronic equipment
CN112783483B (en) Function creation method, device, equipment and medium based on floating button component
CN115826973A (en) List page generation method and device, computer equipment and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210210

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210210

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20210308

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210427

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210622

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211105

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220125

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220218

R150 Certificate of patent or registration of utility model

Ref document number: 7029557

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250