(57)【要約】      （修正有）【課題】ＧＵＩ部品のテスト状況を視覚的に示すことができるＧＵＩテスト装置を提供する。【解決手段】ＧＵＩテスト装置のＧＵＩ部品可視化プログラムＰは、複数のＧＵＩ部品を含む画面に対するＧＵＩ自動テストのためのＧＵＩ自動テスト情報ＴＩから各ＧＵＩ部品に対する検証情報を抽出する検証情報抽出部ｐ１と、画面グループ化定義情報ＧＤＩと検証情報からグループ化された画面毎のグループ化画面ＧＵＩ情報を生成するグルーピング実行部ｐ２と、指定された１又は２以上の可視化対象画面の画面情報ＧＩから、抽出された検証情報に係る複数のＧＵＩ部品のＧＵＩ部品情報を抽出する対象画面ＧＵＩ部品情報抽出部ｐ３と、抽出された検証情報と抽出されたＧＵＩ部品情報に基づいて、１又は２以上の可視化対象画面中のＧＵＩ自動テストされたＧＵＩ部品を識別可能に表示するためのＧＵＩ部品表示情報を生成する可視化処理部ｐ４を含む。【選択図】図２
2019159405.tif 000002
【特許請求の範囲】
【請求項１】
複数のＧＵＩ部品を含む画面に対するＧＵＩ自動テストのためのＧＵＩ自動テスト情報から各ＧＵＩ部品に対するテスト情報を抽出するテスト情報抽出部と、
指定された１又は２以上の可視化対象画面の画面情報から、前記テスト情報抽出部において抽出された前記テスト情報に係る前記複数のＧＵＩ部品のＧＵＩ部品情報を抽出するＧＵＩ部品情報抽出部と、
前記テスト情報抽出部において抽出された前記テスト情報と前記ＧＵＩ部品情報抽出部において抽出された前記ＧＵＩ部品情報に基づいて、前記１又は２以上の可視化対象画面中の前記ＧＵＩ自動テストされたＧＵＩ部品を識別可能に表示するためのＧＵＩ部品表示情報を生成するＧＵＩ部品表示情報生成部と、
を有するＧＵＩテスト装置。
【請求項２】
前記テスト情報抽出部において抽出された前記テスト情報に係る前記複数のＧＵＩ部品の前記ＧＵＩ部品情報を、複数の前記画面を関連付けてグループ化して同一の画面と定義するグループ化定義情報に基づいて、グループ化された画面毎のグループ化画面ＧＵＩ部品情報を作成するグループ化画面ＧＵＩ情報作成部を有し、
前記ＧＵＩ部品情報抽出部は、前記グループ化画面ＧＵＩ部品情報に基づいて、前記１又は２以上の可視化対象画面の画面情報から、ＧＵＩ部品情報を抽出する、請求項１に記載のＧＵＩテスト装置。
【請求項３】
前記グループ化定義情報を格納するグループ化定義情報格納部を有する、請求項２に記載のＧＵＩテスト装置。
【請求項４】
前記テスト情報は、各ＧＵＩ部品に対する操作に関する操作情報又は前記各ＧＵＩ部品の検証に関する検証情報である、請求項１から３のいずれか１つに記載のＧＵＩテスト装置。
【請求項５】
前記検証は、前記各ＧＵＩ部品の有無の確認又は前記各ＧＵＩ部品に表示されている文字列の適格性の確認である、請求項４に記載のＧＵＩテスト装置。
【請求項６】
前記テスト情報は、ＧＵＩ自動テスト部において前記ＧＵＩ自動テストを実行したときのＧＵＩ自動テスト情報である、請求項１から５のいずれか１つに記載のＧＵＩテスト装置。
【請求項７】
表示装置を有し、
前記ＧＵＩ部品表示情報は、前記１又は２以上の可視化対象画面中の前記ＧＵＩ自動テストされたＧＵＩ部品を、前記ＧＵＩ自動テストされていないＧＵＩ部品とは異なる形態で前記表示装置に表示するための表示画面の画面情報である、請求項１から６のいずれか１つに記載のＧＵＩテスト装置。
【請求項８】
複数のＧＵＩ部品を含む画面に対するＧＵＩ自動テストのためのＧＵＩ自動テスト情報から各ＧＵＩ部品に対するテスト情報を抽出し、
指定された１又は２以上の可視化対象画面の画面情報から、抽出された前記テスト情報に係る前記複数のＧＵＩ部品のＧＵＩ部品情報を抽出し、
抽出された前記テスト情報と抽出された前記ＧＵＩ部品情報に基づいて、前記１又は２以上の可視化対象画面中の前記ＧＵＩ自動テストされたＧＵＩ部品を識別可能に表示するためのＧＵＩ部品表示情報を生成する、
ＧＵＩテスト方法。
【請求項９】
複数のＧＵＩ部品を含む画面に対するＧＵＩ自動テストのためのＧＵＩ自動テスト情報から各ＧＵＩ部品に対するテスト情報を抽出する機能と、
指定された１又は２以上の可視化対象画面の画面情報から、抽出された前記テスト情報に係る前記複数のＧＵＩ部品のＧＵＩ部品情報を抽出する機能と、
抽出された前記テスト情報と抽出された前記ＧＵＩ部品情報に基づいて、前記１又は２以上の可視化対象画面中の前記ＧＵＩ自動テストされたＧＵＩ部品を識別可能に表示するためのＧＵＩ部品表示情報を生成する機能と、
をコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ＧＵＩテスト装置、ＧＵＩテスト方法及びプログラムに関する。
【背景技術】
【０００２】
従来より、グラフィカル・ユーザ・インターフェース（以下、ＧＵＩともいう）を有するコンピュータシステムでは、ＧＵＩテストが行われる。ＧＵＩテストとは、ＧＵＩを有するコンピュータシステムに対するテストの一種である。ＧＵＩテストでは、テストを行う者は、マウス、キーボードなどを操作しながらボタン等の各ＧＵＩ部品を手動により操作しながら、各ＧＵＩ部品の動作が正しいかの確認を行う。
【０００３】
手動によるＧＵＩテストでは、時間が掛かるため、近年は、ＧＵＩ自動テストが行われる。ＧＵＩ自動テストは、ソフトウエアプログラムを用いてＧＵＩテストを自動化したものであり、各ＧＵＩ部品の操作及び動作が正しいかの検証を人手を用いずに行う。
【０００４】
しかし、これまでは、全てのＧＵＩ部品がテストされたか、あるいはどのＧＵＩ部品がテストされたかあるいはされていないかの確認あるいは把握は、人手により、テスト仕様のレビュー、テストコードのレビュー、等を行うことにより行われている。
【０００５】
そのため、どのＧＵＩ部品がテストされているかを確認することは手間が掛かると共に、レビュー漏れがあると、ＧＵＩ部品のテスト漏れが生じ、結果として、システムの不具合を生じてしまうという問題がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】日本国特許第４２９５７７５号明細書
【特許文献２】日本国特許第４９０３２７８号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００７】
そこで、本実施形態は、ＧＵＩ部品のテスト状況を視覚的に示すことができるＧＵＩテスト装置、ＧＵＩテスト方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
実施形態のＧＵＩテスト装置は、複数のＧＵＩ部品を含む画面に対するＧＵＩ自動テストのためのＧＵＩ自動テスト情報から各ＧＵＩ部品に対するテスト情報を抽出するテスト情報抽出部と、指定された１又は２以上の可視化対象画面の画面情報から、前記テスト情報抽出部において抽出された前記テスト情報に係る前記複数のＧＵＩ部品のＧＵＩ部品情報を抽出するＧＵＩ部品情報抽出部と、前記テスト情報抽出部において抽出された前記テスト情報と前記ＧＵＩ部品情報抽出部において抽出された前記ＧＵＩ部品情報に基づいて、前記１又は２以上の可視化対象画面中の前記ＧＵＩ自動テストされたＧＵＩ部品を識別可能に表示するためのＧＵＩ部品表示情報を生成するＧＵＩ部品表示情報生成部と、を有する。
【図面の簡単な説明】
【０００９】
【図１】実施形態に係わるＧＵＩ部品可視化装置の構成を示す構成図である。
【図２】実施形態に係わるＧＵＩ部品のテスト状況の可視化プログラムの構成図である。
【図３】実施形態に係わるシステムの画面の構造例を示す図である。
【図４】実施形態に係わる、複数のＧＵＩ部品を有する画面例を示す図である。
【図５】実施形態に係わる、部品管理システムで管理されるある種類の部品の詳細画面の例を示す図である。
【図６】実施形態に係わる、部品管理システムで管理されるある種類の部品の編集画面の例を示す図である。
【図７】実施形態に係わる画面の遷移を示す画面遷移図である。
【図８】実施形態に係わる、ＧＵＩ自動テストで使用されたＧＵＩ部品テスト情報の例を示す図である。
【図９】実施形態に係わる、ＧＵＩ自動テストで使用されたＧＵＩ部品テスト情報の例を示す図である。
【図１０】実施形態に係わる画面グループ化定義情報の例を示す図である。
【図１１】実施形態に係わる可視化プログラムの処理の流れの例を示すフローチャートである。
【図１２】実施形態に係わる、グルーピング実行部による図１１のステップ２の処理を説明するための図である。
【図１３】実施形態に係わる、対象画面ＧＵＩ部品情報抽出部による図１１のステップ３の処理を説明するための図である。
【図１４】実施形態に係わる、可視化処理部による図１１のステップ４の可視化処理を説明するための図である。
【図１５】実施形態に係わる、ＧＵＩ部品の可視化例を示す画面を示す図である。
【図１６】実施形態に係わる、可視化処理を利用したＧＵＩ自動テストの流れを示す図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して実施形態を説明する。
（構成）
図１は、本実施形態に係わるＧＵＩ部品可視化装置の構成を示す構成図である。ＧＵＩテスト装置としてのＧＵＩ部品可視化装置１は、プロセッサ２ａを有する本体装置２と、本体装置２と接続され各種ソフトウエアプログラム等を記憶する記憶装置３と、本体装置２と接続された表示装置４と有するコンピュータシステムである。そして、ユーザが、各種プログラムを実行させるための指示を与えるための、キーボード５とマウス６の入力装置が、本体装置２には接続されている。
【００１１】
プロセッサ２ａは、各種ソフトウエアプログラムを実行する中央処理装置（以下、ＣＰＵという）と、ＲＯＭ、ＲＡＭ等を含む。  
記憶装置３は、後述する可視化プログラムＰを格納する可視化プログラム格納部１１、ＧＵＩ自動テストを行うＧＵＩ自動テスト部１２、可視化対象画面の画面情報を格納する対象画面情報格納部１３及び画面グループ化定義情報を格納する画面グループ化定義情報格納部１４を有する。
【００１２】
可視化プログラム格納部１１には、ＧＵＩ部品のテスト状況を可視化するテスト状況可視化プログラム（以下、可視化プログラムともいう）Ｐが記憶されている。本体装置２のプロセッサ２ａは、ＧＵＩ部品のテストを行う者（以下、ユーザという）の指示に応じて、記憶装置３に記憶された可視化プログラムＰを読み出して実行する。
【００１３】
図２は、ＧＵＩ部品のテスト状況の可視化プログラムの構成図である。可視化プログラムＰは、検証情報抽出部ｐ１、グルーピング実行部ｐ２、対象画面ＧＵＩ部品情報抽出部ｐ３及び可視化処理部ｐ４の各処理プログラムを含む。
【００１４】
プロセッサ２ａは、ＧＵＩ自動テスト部１２からのＧＵＩ自動テスト情報ＴＩ、対象画面情報格納部１３からの可視化対象画面情報ＧＩ及び画面グループ化定義情報格納部１４からの画面グループ化定義情報ＧＤＩを入力として、可視化プログラムＰを実行する。
【００１５】
ＧＵＩ自動テスト部１２は、ＧＵＩ自動テストのためのプログラムを格納する。ＧＵＩ自動テスト部１２には、ＧＵＩ自動テスト情報ＴＩも格納されている。
ＧＵＩ自動テスト情報（以下、テスト情報という）ＴＩは、ＧＵＩ自動テスト部１２で実行されたオペレーションについての情報である。テスト情報ＴＩは、ＧＵＩ自動テスト部１２の実行結果の結果情報、例えば「ＯＫ」、「ＮＧ」の情報を含んでもよいが、ここでは、後述するように、ＧＵＩ自動テスト部１２に与えられたオペレーションについての「画面」、「ＧＵＩ部品」及び「操作」の情報である。
【００１６】
なお、ここでは、ＧＵＩ自動テスト部１２は、本体装置２のプロセッサ２ａにおいて実行されるＧＵＩ自動テストのためのプログラムを含むが、本体装置２とは別のシステムにおいて実行され、本体装置２は、テスト情報ＴＩのみを記憶装置３に格納するようにしてもよい。
【００１７】
対象画面情報格納部１３には、可視化対象画面情報ＧＩが格納される。
可視化対象画面情報ＧＩは、可視化対象画面として指定された画面の構成情報である。可視化対象画面情報ＧＩは、ソースコードであり、可視化対象画面に含まれる各ＧＵＩ部品の部品名、画面上の配置位置情報、テキスト情報等を含む。
【００１８】
画面グループ化定義情報格納部１４には、画面グループ化定義情報ＧＤＩが格納される。
画面グループ化定義情報ＧＤＩは、ユーザにより定義される情報であり、後述するように、グループ毎にそのグループに含まれる画面の情報を含む。  
各部ｐ１〜ｐ４の処理、テスト情報ＴＩ（図８，図９）及び画面グループ化定義情報ＧＤＩ（図１０）の構成については後述する。  
ＧＵＩ部品可視化装置１の可視化プログラムＰは、複数の画面の中から、ユーザにより指定された対象画面に対して実行される。そのため、可視化プログラムＰには、その対象画面の画面情報が与えられる。
【００１９】
ここで、コンピュータシステムに含まれる画面の構造について説明する。システムは、表示装置４に表示可能な複数の画面を含む。  
図３は、システムの画面の構造例を示す図である。
【００２０】
ＧＵＩを有するシステム２１は、コンピュータシステムであり、複数の画面２２を表示可能である。各画面２２は、ＧＵＩであり、システム２１のユーザは、画面を見て情報を得たり、ボタン、チェックボックスなどを操作することによって所望のコマンドをシステム２１へ与えたりすることができる。
【００２１】
各画面は、１又は２以上のＧＵＩ部品を有する。ＧＵＩ部品は、テキスト、テキストボックス、ボタン、チェックボックス等の画面を構成する要素である。テキストは、テキストが表示されるＧＵＩ部品である。テキストボックスは、テキストの入力あるいは表示がされるＧＵＩ部品である。ボタンは、カーソルが重畳された状態でマウスのクリック等が行われることで所定のコマンドを指示するＧＵＩ部品である。チェックボックスは、カーソルを移動させてクリックをすることにより、選択あるいは非選択の状態を指定するＧＵＩ部品である。
【００２２】
図３に示すように、システム２１は、複数の画面を有し、各画面は、１又は２以上のＧＵＩ部品を含む。
ＧＵＩ自動テストは、システム２１に含まれる各画面２２に対して行われる。
（ＧＵＩ部品を有する画面例）
図４は、複数のＧＵＩ部品を有する画面例を示す図である。図４は、図面管理システムの１つの図面の例を示す。図面管理システムは、複数の製品あるいは部品に関する複数の図面を登録及び管理するためのシステムである。
【００２３】
図４に示す画面３０は、製品毎の図面を登録するための図面登録画面の例である。  
画面３０は、タイトル部３１、品名表示部３２、品目コード表示部３３、メモ欄部３４、添付ファイル名入力部３５、参照ボタン部３６、戻るボタン部３７及び登録ボタン部３８を含む。タイトル部３１は、テキストのＧＵＩ部品である。品名表示部３２、品目コード表示部３３、メモ欄部３４及び添付ファイル名入力部３５は、テキストボックスのＧＵＩ部品であり、参照ボタン部３６、戻るボタン部３７及び登録ボタン部３８は、ボタンのＧＵＩ部品である。
【００２４】
画面３０は、各製品についての図面を登録するときに表示される。よって、ユーザは、画面３０を表示装置４に表示させて図面の登録を行うことができる。  
タイトル表示部３１は、画面のタイトルが表示される領域である。
【００２５】
品名表示部３２は、図面を登録しようとする製品の品目名が表示される領域である。  
品目コード表示部３３は、図面を登録しようとする製品の品目コードが表示される領域である。  
例えば、品名表示部３２及び品目コード表示部３３には、ユーザが別の画面において選択した製品の品目名及び品目コードがテキストで表示される。
【００２６】
メモ欄部３４は、ユーザがコメント等をテキストで任意に入力するための領域である。  
添付ファイル名入力部３５は、登録する図面のファイル名を入力するための領域である。
【００２７】
参照ボタン部３６は、図面のファイル名をディレクトリから参照することによって入力するためのボタンである。  
ここでは、３つの添付ファイルが入力できるように、画面３０では、添付ファイル名入力部３５と参照ボタン部３６は、３つ表示されている。
【００２８】
戻るボタン部３７は、１つ前に表示されていた画面に戻る指示を与えるためのボタンである。  
登録ボタン部３８は、品名表示部３２に表示された品目名の品目について、メモ欄部３４に記載されたメモ情報、及び添付ファイル名入力部３５に入力された添付ファイル情報を、システム２１に登録する指示を与えるためのボタンである。
【００２９】
図４は、画面の一例であり、システムのために多くの様々な画面が作成される。また、システムに含まれる複数の画面は、互いに全く異なるのではなく、類似する複数の画面を含む場合も多い。そのため、画面は、画面のテンプレートを用いて作成されたり、所定のフォーマットに従って作成されたりする場合もある。
【００３０】
後述するように、作成された各画面の各ＧＵＩ部品について、ＧＵＩ部品可視化装置１は、ＧＵＩ自動テストに使用されたテスト情報を利用して、ＧＵＩ自動テストが行われたＧＵＩ部品を可視化する。
【００３１】
ＧＵＩ部品可視化装置１の動作について説明するが、その動作の説明を簡単にするために、後述する動作の説明で使用する簡素化された画面について説明する。ここでは、システム２１が、工場の部品管理システムを、例として説明する。
【００３２】
図５と図６は、それぞれ、部品管理システムで管理されるある種類の部品の詳細画面と編集画面の例を示す図である。  
図５は、部品Ａの詳細情報を表示する詳細情報表示画面の例を示す図である。
【００３３】
詳細情報を表示する詳細画面４１は、部品Ａの詳細情報というタイトルを表示するタイトル部４１ａと、部品Ａの詳細情報を表示する詳細部４１ｂと、１つ前の画面に戻ることを指示する戻るボタン部４１ｃと、編集画面へのリンクを示すリンク部４１ｄを有する。
【００３４】
タイトル部４１ａ及び詳細部４１ｂは、テキストである。なお、図５では、詳細部４１ｂにはテキストが示されていないが、二点鎖線により、テキストの表示範囲が示されている。戻るボタン部４１ｃは、ボタンであり、リンク部４１ｄは、リンク先の画面に移動するためのリンクである。  
ユーザは、図５に示す部品Ａの詳細画面４１を表示装置４に表示させて、詳細部４１ｂに表示された部品Ａの詳細情報を見ることができる。  
ユーザは、戻るボタン部４１ｃにカーソルを合わせてクリックすると、一つ前に表示していた画面を表示装置４に表示させることができる。
【００３５】
ユーザは、リンク部４１ｄにカーソルを合わせてクリックすると、図６に示す編集画面を表示装置４に表示させることができる。  
図６は、部品Ａの編集画面の例を示す図である。
【００３６】
部品Ａの編集画面４２は、部品Ａの編集というタイトルを表示するタイトル部４２ａと、部品Ａの詳細情報を表示しかつ編集可能な詳細部４２ｂと、１つ前の画面に戻ることを指示する戻るボタン部４２ｃと、編集内容の確定を指示するＯＫボタン部４２ｄを有する。
【００３７】
タイトル部４２ａは、テキストである。詳細部４２ｂは、テキストボックスである。戻るボタン部４２ｃとＯＫボタン部４２ｄは、ボタンである。  
ユーザは、図６に示す部品Ａの編集画面４２を表示装置４に表示させて、詳細部４２ｂに表示された部品Ａの詳細情報を変更、追加及び削除することができる。
【００３８】
ユーザは、戻るボタン部４２ｃにカーソルを合わせてクリックすると、一つ前に表示していた画面を表示装置４に表示させることができる。  
ユーザは、ＯＫボタン部４２ｄにカーソルを合わせてクリックすると、詳細部４２ｂに表示された情報を確定させることができる。
【００３９】
図７は、画面の遷移を示す画面遷移図である。  
部品管理システムは、トップ画面５１を有する。トップ画面５１は、２つのボタン５１ａと５１ｂを有する。ボタン５１ａは、部品Ａの詳細画面を表示させるためのボタンである。ボタン５１ｂは、部品Ｂの詳細画面を表示させるためのボタンである。
【００４０】
ボタン５１ａにカーソルを合わせてクリックすると、表示装置４には、図５に示す部品Ａの詳細画面４１が表示される。ユーザは、部品Ａの詳細情報を見ることができる。  
ユーザは、部品Ａの情報を変更したいときは、編集ボタン部４１ｄにボタン５１ａにカーソルを合わせてクリックする。
【００４１】
詳細画面４１の編集ボタン部４１ｄをクリックすると、図６に示す部品Ａの編集画面４２が表示装置４に表示される。ユーザは、部品Ａの詳細情報を編集することができる。  
ユーザは、編集した内容で部品Ａの情報を確定したいときは、ＯＫボタン部４２ｄにボタン５１ａにカーソルを合わせてクリックする。
【００４２】
ユーザは、詳細画面４１を表示装置４に表示させたときは、戻るボタン部４２ｃをクリックする。  
ユーザは、詳細画面４１からトップ画面５１に戻りたいときは、戻るボタン部４１ｃをクリックする。
【００４３】
以上のように、トップ画面５１、部品Ａの詳細画面４１及び部品Ａの編集画面４２間の画面遷移は、図７において一点鎖線で示すように行われる。よって、ユーザは、部品Ａの詳細情報を見たり、詳細情報を変更したりすることができる。
【００４４】
図７には、部品Ｂの画面についての画面遷移も示されている。図７において、部品Ｂの詳細画面６１は、部品Ａの詳細画面４１と同様に、タイトル部６１ａと、詳細部６１ｂと、ボタン部６１ｃと、リンク部６１ｄを有する。部品Ｂの編集画面６２は、部品Ａの編集画面４２と同様に、タイトル部６２ａと、詳細部６２ｂと、ボタン部６２ｃと、ＯＫボタン部６２ｄを有する。
【００４５】
部品Ｂについても、部品Ａと同様であり、トップ画面５１、部品Ｂの詳細画面６１及び編集画面６２間の画面遷移は、部品Ａと同様に図７において二点鎖線で示すように行われる。よって、ユーザは、部品Ａと同様に、部品Ｂの詳細情報を見たり、詳細情報を変更したりすることができる。
（動作）
次に、ＧＵＩ部品可視化装置１の動作について説明する。以下、上述した図５及び図６の画面を例に説明する。
【００４６】
動作説明の前にＧＵＩ自動テストのテスト情報について説明する。  
ＧＵＩ自動テストは、人手によらず、ソフトウエアプログラムを用いて行われる。ＧＵＩ自動テストでは、ＧＵＩの操作及び動作が正しいかの検証が行われる。ＧＵＩ自動テストは、各ＧＵＩ部品に対してどのような操作を行うかが記述されたテスト情報を利用して行われる。テスト情報は、ユーザにより記述されて作成される。
【００４７】
図８と図９は、ＧＵＩ自動テストで使用されたＧＵＩ部品テスト情報の例を示す図である。図８は、部品Ａの詳細画面のタイトルを検証するテストのためのテスト情報ＴＩ１を示す。図９は、部品Ｂの詳細の編集が行えることを検証するテストのためのテスト情報ＴＩ２を示す。
【００４８】
テスト情報ＴＩは、ＧＵＩ自動テスト部１２においてＧＵＩ自動テストを実行したときのＧＵＩ自動テスト情報である。各テスト情報は、１又は２以上のオペレーションを、リスト形式で表現された情報である。各オペレーションは、画面、ＧＵＩ部品及び操作の３つを含む。
【００４９】
上述したように、各画面は、システムに含まれる画面であり、各ＧＵＩ部品は、画面内に設けられた、例えばテキストボックス、ボタン、チェックボックスである。
【００５０】
テスト情報中の「操作」は、ＧＵＩ部品に対するユーザの操作であり、例えば「クリック、「キー入力」、「検証」である。「クリック」と「キー入力」は、各ＧＵＩ部品に対する操作に関する操作情報である。「検証」は、各ＧＵＩ部品の検証に関する検証情報であり、ＧＵＩ部品の存在すなわち有無の確認、ＧＵＩ部品に表示されている文字列が所望のものかすなわち文字列の適格性の確認、等をすることを含む。文字列が所望のものであるか否かは、テキスト解析などの技術により行われる。
【００５１】
図８のテスト情報ＴＩ１では、「トップ画面」、「ボタン［部品Ａ］」及び「クリック」の３つの情報からなる１つのオペレーションと、「部品Ａの詳細画面」、「テキスト［タイトル］」及び「検証」の３つの情報からなるもう１つのオペレーションとを含む。
【００５２】
１行目の「トップ画面」、「ボタン［部品Ａ］」及び「クリック」のオペレーションは、トップ画面において部品Ａのボタンをクリックする、というＧＵＩ部品テストである。  
２行目は、「部品Ａの詳細画面」、「テキスト［タイトル］」及び「検証」のオペレーションは、部品Ａの詳細画面において、タイトルのテキストが正しいか否かの検証を行うＧＵＩ部品テストである。
【００５３】
図９のテスト情報ＴＩ２では、「トップ画面」、「ボタン［部品Ｂ］」及び「クリック」の３つの情報からなるオペレーションと、「部品Ｂの詳細画面」、「リンク［編集］」及び「検証」のオペレーションと、図９に示すような他に６つのオペレーションとを含む。
【００５４】
１行目の「トップ画面」、「ボタン［部品Ｂ］」及び「クリック」のオペレーションは、トップ画面において部品Ｂのボタンをクリックする、というＧＵＩ部品テストである。  
２行目の「部品Ｂの詳細画面」、「リンク［編集］」及び「検証」のオペレーションは、部品Ｂの詳細画面において、リンクである編集ボタンの有無を確認するというＧＵＩ部品テストである。
【００５５】
３行目の「部品Ｂの詳細画面」、「リンク［編集］」及び「検証」のオペレーションは、部品Ｂの詳細画面において、リンクである編集ボタンをクリックする、というＧＵＩ部品テストである。
【００５６】
４行目の「部品Ｂの編集画面」、「テキストボックス［詳細］」及び「検証」のオペレーションは、部品Ｂの詳細画面において、詳細のテキストボックスの有無を確認するというＧＵＩ部品テストである。
【００５７】
５行目の「部品Ｂの編集画面」、「テキストボックス［詳細］」及び「キー入力［部品Ｂの詳細］」のオペレーションは、部品Ｂの編集画面において、詳細のテキストボックスにキー入力をして、テキストを変更するというＧＵＩ部品テストである。
【００５８】
６行目の「部品Ｂの編集画面」、「ボタン［ＯＫ］」及び「検証」のオペレーションは、部品Ｂの編集画面において、ＯＫボタンの有無を確認するというＧＵＩ部品テストである。  
７行目の「部品Ｂの編集画面」、「ボタン［ＯＫ］」及び「クリック」のオペレーションは、部品Ｂの編集画面において、ＯＫボタンをクリックする、というＧＵＩ部品テストである。
【００５９】
８行目の「部品Ｂの詳細画面」、「テキスト［詳細］」及び「検証」のオペレーションは、部品Ｂの詳細画面において、詳細のテキストボックス中のテキストが変更されているかを確認する、というＧＵＩ部品テストである。
【００６０】
ＧＵＩ部品可視化装置１は、以上のようなテスト情報を得て可視化プログラムＰを実行する。  
また、ここでは、画面のグループ化が設定可能となっている。画面のグループ化について説明する。画面のグループ化は、ＧＵＩ部品がテスト済みであることを可視化するために、複数の画面をグループ化して、同一の画面と見なすことである。
【００６１】
図１０は、画面グループ化定義情報の例を示す図である。  
画面グループ化定義情報ＧＤＩは、ＧＵＩ部品を可視化するとき同一の画面として扱う複数の画面を定義する情報である。画面グループ化定義情報ＧＤＩは、ユーザにより作成されて設定される。
【００６２】
図１０に示すように、ここでは、トップ画面は１つであるが、トップ画面としてグループ化されている。  
部品Ａの詳細画面と部品Ｂの詳細画面は、詳細画面としてグループ化されている。  
部品Ａの編集画面と部品Ｂの編集画面は、編集画面としてグループ化されている。
【００６３】
後述するように、グループ化された部品Ａの詳細画面と部品Ｂの詳細画面の一方のあるＧＵＩ部品のＧＵＩ自動テストが行われていれば、他方においては対応するＧＵＩ部品も、ＧＵＩ部品のＧＵＩ自動テストが行われたと見なされる。
【００６４】
同様に、グループ化された部品Ａの編集画面と部品Ｂの編集画面の一方のあるＧＵＩ部品の自動テストが行われていれば、他方においては対応するＧＵＩ部品も、ＧＵＩ部品の自動テストが行われたと見なされる。
【００６５】
上述したように、システムに含まれる複数の画面の中には、類似する複数の画面もある。類似する複数の画面は、システムの開発者による人手で作成される場合もあるが、上述したように、予め用意されたテンプレート画面を用いて作成される場合もある。
【００６６】
そのため、グループ化は、所定の条件に基づいて自動で行うようにしてもよい。例えば、画面上のタイトルを、所定のルールに従って表記するようにして、そのルールに従ったタイトルが複数の画面に付けられているときは、そのルールを用いたソフトウエアにより画面のグループ化を自動で行う。また、画面タイトルの正規表現によるパターンマッチングにより、それらの複数の画面は、同じグループとしてグループ化するなどするようにしてもよい。
【００６７】
また、ＷＥＢシステムの場合は、ＵＲＬを利用したグループ化を行うようにしてもよい。例えば、ＵＲＬのコードの類似度あるいは部分一致度に基づいて、ソフトウエアにより複数の画面を同じグループとしてグループ化するようにしてもよい。
【００６８】
画面グループ化定義情報は、ユーザによって定義されて、画面グループ化定義情報格納部１４に設定されて記憶される。以上のような画面グループ化定義情報が、ＧＵＩ部品可視化装置１の可視化プログラムＰに与えられる。
【００６９】
次に、可視化プログラムＰの動作を説明する。  
図１１は、可視化プログラムＰの処理の流れの例を示すフローチャートである。
【００７０】
上述したように、ＧＵＩ自動テストが行われたＧＵＩ部品の可視化をする対象画面が、ユーザによりプロセッサ２ａに対して指定される。以下では、図７における部品Ａの編集画面４２と部品Ｂの詳細画面６１が対象画面として指定された場合を説明する。
【００７１】
プロセッサ２ａは、ＧＵＩ自動テストの各オペレーションを読み出して、検証情報のみを抽出する（ステップ（以下、Ｓと略す）１）。ここでは、テスト情報中の検証情報のみを抽出しているが、各ＧＵＩ部品に対する操作に関する操作情報のみ、あるいは検証情報と操作情報を抽出するようにしてもよい。Ｓ１の処理は、テスト情報抽出部としての検証情報抽出部ｐ１により実行される。
【００７２】
すなわち、検証情報抽出部ｐ１は、複数のＧＵＩ部品を含む画面に対するＧＵＩ自動テストのためのＧＵＩ自動テスト情報から各ＧＵＩ部品に対するテスト情報を抽出するテスト情報抽出部を構成する。ここでは、検証情報抽出部ｐ１は、テスト情報ＴＩの中から検証に関わる検証情報を抽出する。テスト情報ＴＩは、例えばＧＵＩ自動テスト部１２からログ情報として与えられる。
【００７３】
次に、プロセッサ２ａは、Ｓ１において抽出された検証情報に基づいて、グループ化された画面毎の検証情報を作成する（Ｓ２）。  
図１２は、グルーピング実行部ｐ２による図１１のＳ２の処理を説明するための図である。
【００７４】
図１２において、グループ化された画面毎のグループ化画面ＧＵＩ情報ＴＧＩは、画面グループ化定義情報ＧＤＩと、Ｓ１において抽出された検証情報７１とから生成される。  
グループ化画面ＧＵＩ情報ＴＧＩは、図８と図９に示すテスト情報ＴＩ１とＴＩ２の中から、「検証」の操作に関わるＧＵＩ部品のみを抽出して、画面グループ化定義情報ＧＤＩに規定された画面毎にＧＵＩ部品をリスト化して生成される。  
図８及び図９のテスト情報ＴＩ１及びＴＩ２中には、「トップ画面」についての「検証」の操作がないので、図１２の「トップ画面」の「ＧＵＩ部品」には、「−」が設定される。
【００７５】
テスト情報ＴＩ１の２行目には、「部品Ａの詳細画面」について操作が「検証」であるオペレーションがあるので、図１２の「詳細画面」の「ＧＵＩ部品」に、「テキスト［タイトル］」を設定する。
【００７６】
テスト情報ＴＩ２の２行目には、「部品Ｂの詳細画面」について操作が「検証」であるオペレーションがあるので、図１２の「詳細画面」の「ＧＵＩ部品」に、「リンク［編集］」を設定する。
【００７７】
テスト情報ＴＩ２の４行目には、「部品Ｂの編集画面」について操作が「検証」であるオペレーションがあるので、図１２の「詳細画面」の「ＧＵＩ部品」に、「テキストボックス［詳細］」を設定する。
【００７８】
テスト情報ＴＩ２の６行目には、「部品Ｂの編集画面」について操作が「検証」であるオペレーションがあるので、図１２の「詳細画面」の「ＧＵＩ部品」に、「ボタン［ＯＫ］」を設定する。
【００７９】
テスト情報ＴＩ２の８行目には、「部品Ｂの詳細画面」について操作が「検証」であるオペレーションがあるので、図１２の「詳細画面」の「ＧＵＩ部品」に、「テキスト［詳細］」を設定する。  
以上のように、グルーピング実行部ｐ２は、検証情報抽出部ｐ１において抽出されたテスト情報に係る複数のＧＵＩ部品のＧＵＩ部品情報を、複数の画面を関連付けてグループ化して同一の画面と定義するグループ化定義情報ＧＤＩに基づいて、グループ化された画面毎のグループ化画面ＧＵＩ部品情報ＴＧＩを作成するグループ化画面ＧＵＩ情報作成部を構成する。
【００８０】
すなわち、グルーピング実行部ｐ２は、検証情報抽出部ｐ１において抽出された検証情報に係るＧＵＩ部品情報を、グループ化された各画面に割り当てる。結果として、グループ化された画面毎のグループ化画面ＧＵＩ情報ＴＧＩが生成される。  
なお、画面グループ化定義情報が設定されていないときは、Ｓ２のステップは、スキップされる。
【００８１】
次に、プロセッサ２ａは、可視化対象画面毎に、Ｓ２で作成されたグループ化された検証情報に基づいて、ＧＵＩ部品情報を抽出する（Ｓ３）。  
図１３は、対象画面ＧＵＩ部品情報抽出部ｐ３による図１１のＳ３の処理を説明するための図である。
【００８２】
図１３において、対象画面である部品Ｂの詳細画面６１における可視化ＧＵＩ部品情報ＶＣＩ１は、対象画面である部品Ｂの詳細画面６１の画面情報と、グループ化画面ＧＵＩ情報ＴＧＩとから生成される。
【００８３】
グループ化画面ＧＵＩ情報ＴＧＩの詳細画面の１行目の「テキスト［タイトル］」は、部品Ｂの詳細画面６１における検証されたＧＵＩ部品であるので、ＧＵＩ部品として「テキスト［タイトル］」が可視化ＧＵＩ部品情報ＶＣＩ１の１行目に入力される。
【００８４】
グループ化画面ＧＵＩ情報ＴＧＩの詳細画面の２行目の「テキスト［編集］」は部品Ｂの詳細画面６１における検証されたＧＵＩ部品であるので、ＧＵＩ部品として「テキスト［編集］」が可視化ＧＵＩ部品情報ＶＣＩ１の２行目に入力される。
【００８５】
グループ化画面ＧＵＩ情報ＴＧＩの詳細画面の３行目の「リンク［編集］」は部品Ｂの詳細画面６１における検証されたＧＵＩ部品であるので、可視化ＧＵＩ部品情報ＶＣＩ１の３行目に、ＧＵＩ部品として「リンク［編集］」が入力される。
【００８６】
同様に、対象画面である部品Ａの編集画面４２における可視化ＧＵＩ部品情報ＶＣＩ２は、対象画面である部品Ａの編集画面４２の画面情報と、グループ化画面ＧＵＩ情報ＴＧＩとから生成される。
【００８７】
グループ化画面ＧＵＩ情報ＴＧＩの編集画面の１行目の「ボタン［ＯＫ］」は、部品Ａの編集画面４２における検証されたＧＵＩ部品であるので、ＧＵＩ部品として「ボタン［ＯＫ］」が可視化ＧＵＩ部品情報ＶＣＩ２の１行目に入力される。
【００８８】
グループ化画面ＧＵＩ情報ＴＧＩの編集画面の２行目の「テキストボックス［詳細］」は、部品Ａの編集画面４２における検証されたＧＵＩ部品であるので、ＧＵＩ部品として「テキストボックス［詳細］」が可視化ＧＵＩ部品情報ＶＣＩ２の２行目に入力される。
【００８９】
以上のように、対象画面ＧＵＩ部品情報抽出部ｐ３は、指定された１又は２以上の可視化対象画面の画面情報から、検証情報抽出部ｐ１において抽出されたテスト情報に係る複数のＧＵＩ部品のＧＵＩ部品情報を抽出するＧＵＩ部品情報抽出部を構成する。ここでは、対象画面ＧＵＩ部品情報抽出部ｐ３は、グルーピング実行部ｐ２により作成されたグループ化された画面毎のＧＵＩ部品情報に基づいて、１又は２以上の可視化対象画面の画面情報からＧＵＩ部品情報を抽出する。
【００９０】
Ｓ３に続いて、プロセッサ２ａは、対象画面について、可視化ＧＵＩ部品情報ＶＣＩ１，ＶＣＩ２を読み出して、対象画面上の各ＧＵＩ部品に対して可視化処理を行う（Ｓ４）。可視化処理は、例えば、その部品について表示画面上のその部品の領域に所定の透明な色を付けるなどして、ユーザが、可視化するＧＵＩ部品を、対象画面中の他の領域あるいは他のＧＵＩ部品と識別可能にする処理である。
【００９１】
Ｓ４の処理は、可視化対象画面毎に行われる。  
図１４は、可視化処理部ｐ４による図１１のステップＳ４の可視化処理を説明するための図である。
【００９２】
上述したように、ここでは図７における部品Ａの編集画面４２と部品Ｂの詳細画面６１が対象画面として指定されている。部品Ｂの詳細画面６１の画面情報は、詳細画面６１に含まれる各ＧＵＩ部品の画面上の位置、領域等の情報を含む。よって、可視化ＧＵＩ部品情報ＶＣＩ１に含まれる各ＧＵＩ部品をユーザが識別可能になるように、可視化処理が行われる。
【００９３】
図１４では、可視化ＧＵＩ部品情報ＶＣＩ１に含まれる「テキスト［タイトル］」、「テキスト［詳細］」及び「リンク［編集］」の３つのＧＵＩ部品が、可視化された部品Ｂの詳細画面６１Ｘ上で、識別可能に表示される。例えば、図１４では、部品Ｂの詳細画面６１Ｘ上で、点線で囲む範囲が、特定の透明な色が付加されるので、ユーザは、その色が付けられたＧＵＩ部品は、ＧＵＩ自動テストがされたものであることを簡単に認識することができる。
【００９４】
１つの可視化対象画面について、Ｓ４の処理が終了すると、全ての可視化対象画面についてＳ４の処理が終了したか否かを判定する（Ｓ５）。全ての可視化対象画面についてＳ４の処理が終了していないとき（Ｓ５：ＮＯ）、処理は、Ｓ４に戻り、Ｓ４を実行していない残りの可視化対象画面についてＳ４の処理を実行する。
【００９５】
ここでは、可視化対象画面が２つ指定されているため、部品Ｂの詳細画面６１についての可視化処理が終了しても、部品Ａの編集画面４２について可視化処理が行われていなければ（Ｓ５：ＮＯ）、処理はＳ４に戻る。
【００９６】
以上のように、可視化処理部ｐ４は、ＧＵＩ自動テストにおいて実行されたＧＵＩ部品を、可視化対象画面上において識別可能に表示する画像の画像情報を生成する。すなわち、可視化処理部ｐ４は、検証情報抽出部ｐ１において抽出されたテスト情報と対象画面ＧＵＩ部品情報抽出部ｐ３において抽出されたＧＵＩ部品情報に基づいて、１又は２以上の可視化対象画面中のＧＵＩ自動テストされたＧＵＩ部品を識別可能に表示するためのＧＵＩ部品表示情報を生成するＧＵＩ部品表示情報生成部を構成する。
【００９７】
よって、可視化ＧＵＩ部品情報ＶＣＩ２に含まれる「ボタン［ＯＫ］」及び「テキストボックス［詳細］」の２つのＧＵＩ部品が、可視化された部品Ａの編集画面４２Ｘ上で、識別可能に表示される。例えば、図１４では、部品Ａの編集画面４２Ｘ上で、点線で囲む範囲が、特定の透明な色が付加されるので、ユーザは、その色が付けられたＧＵＩ部品は、ＧＵＩ自動テストがされたものであることを簡単に認識することができる。  
逆に、ユーザは、色の付けられていないＧＵＩ部品は、ＧＵＩ自動テストにおいてテストされていないＧＵＩ部品であることを認識することができる。
【００９８】
全ての可視化対象画面についてＳ４の処理が終了しているとき（Ｓ５：ＹＥＳ）、プロセッサ２ａは、可視化結果の結果情報を、例えば１つのファイル情報として、出力する（Ｓ６）。可視化結果の結果情報は、可視化対象画面の画面データを含むＧＵＩ部品表示情報である。ＧＵＩ部品表示情報は、１又は２以上の可視化対象画面中のＧＵＩ自動テストされたＧＵＩ部品を、ＧＵＩ自動テストされていないＧＵＩ部品とは異なる形態で表示装置４に表示するための表示画面の画面情報である。よって、表示装置４には、可視化対象画面が、ＧＵＩ部品についてＧＵＩ自動テストが実行されたか否かがユーザも識別可能に表示される。  
以上のように、可視化対象画面においてＧＵＩ自動テストが実行されたＧＵＩ部品であるか否かが、ユーザに識別可能に可視化される。
【００９９】
図１５は、ＧＵＩ部品の可視化例を示す画面を示す図である。図１５では、図４に示した画面において、斜線で示す部分に所定の透明な色、例えば黄色が付けられるので、ユーザは、色が付けられてない２行目と３行目の添付ファイル名入力部３５，２行目と３行目の参照ボタン部３６及び戻るボタン部３７の各ＧＵＩ部品がＧＵＩ自動テストによりテストされていないことが簡単に把握できる。
【０１００】
よって、画面においてＧＵＩ自動テストが全てのＧＵＩ部品について行われているかのテストの網羅性の確認を、ユーザは容易にできる。  
以上のように、上述した実施形態によれば、ＧＵＩ部品のテスト状況を視覚的に示すことができるＧＵＩテスト装置、ＧＵＩテスト方法及びそのためのプログラムを提供することができる。
【０１０１】
図１６は、上述した可視化処理を利用したＧＵＩ自動テストの流れを示す図である。ＧＵＩ自動テストでは、ＧＵＩ自動テストのためのテスト情報ＴＩの作成（８１）が行われる。その作成されたテスト情報ＴＩを入力として、ＧＵＩ自動テストが実行される（８２）。
【０１０２】
ＧＵＩ自動テストの後に、上述した実施形態の可視化プログラムＰを用いて、ＧＵＩ自動テストの網羅性の確認（８３）を行う。ユーザは、その網羅性の確認により、簡単にＧＵＩ自動テストがされていないＧＵＩ部品をテストするためのテスト情報ＴＩの作成を迅速に行うことができる。
【０１０３】
なお、上述した実施形態では、可視化プログラムＰは、プロセッサ２ａを有するコンピュータに搭載されて実行されているが、インターネットを介して存在するクラウド上の１又は２以上のサーバに、可視化プログラムＰの全部又は一部を実行させるようにして、テスト情報及びグループ化情報、及び可視化対象画面情報をクラウド上の１又は２以上のサーバに送って、上述した処理を実行させるようにしてもよい。
【０１０４】
また、以上説明した動作を実行するプログラムは、コンピュータプログラム製品として、フレキシブルディスク、ＣＤ−ＲＯＭ等の可搬媒体や、ハードディスク等の記憶媒体に、その全体あるいは一部が記録され、あるいは記憶されている。そのプログラムがコンピュータにより読み取られて、動作の全部あるいは一部が実行される。あるいは、そのプログラムの全体あるいは一部を通信ネットワークを介して流通または提供することができる。利用者は、通信ネットワークを介してそのプログラムをダウンロードしてコンピュータにインストールしたり、あるいは記録媒体からコンピュータにインストールすることで、容易に本発明のＧＵＩテストシステムを実現することができる。
【０１０５】
本発明の実施形態を説明したが、実施形態は、例として例示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１０６】
１  部品可視化装置、２  本体装置、２ａ  プロセッサ、３  記憶装置、４  表示装置、５  キーボード、６  マウス、１１  可視化プログラム格納部、１２  ＧＵＩ自動テスト部、１３  対象画面情報格納部、１４  画面グループ化定義情報格納部、２１  システム、２２、３１  画面、３２  品名表示部、３３  品目コード表示部、３４  メモ欄部、３５  添付ファイル名入力部、３６  参照ボタン部、３７  戻るボタン部、３８  登録ボタン部、４１  詳細画面、４１ａ  タイトル部、４１ｂ  詳細部、４１ｃ  戻るボタン部、４１ｄ  リンク部、４１ｄ  編集ボタン部、４２、４２Ｘ  編集画面、４２ａ  タイトル部、４２ｂ  詳細部、４２ｃ  戻るボタン部、４２ｄ         ＯＫボタン部、４１ｄ  リンク部、５１  トップ画面、５１ａ、５１ｂ  ボタン、６１、６１Ｘ  詳細画面、６１ａ  タイトル部、６１ｂ  詳細部、６１ｃ  ボタン部、６１ｄ  リンク部、６２  編集画面、６２ａ  タイトル部、６２ｂ  詳細部、６２ｃ、６２ｄ  ボタン部、７１  検証情報。
【図１】
2019159405.tif 000003
【図２】
2019159405.tif 000004
【図３】
2019159405.tif 000005
【図４】
2019159405.tif 000006
【図５】
2019159405.tif 000007
【図６】
2019159405.tif 000008
【図７】
2019159405.tif 000009
【図８】
2019159405.tif 000010
【図９】
2019159405.tif 000011
【図１０】
2019159405.tif 000012
【図１１】
2019159405.tif 000013
【図１２】
2019159405.tif 000014
【図１３】
2019159405.tif 000015
【図１４】
2019159405.tif 000016
【図１５】
2019159405.tif 000017
【図１６】
2019159405.tif 000018