(57)【要約】【課題】ＧＵＩ画面の遷移エラーや生成エラーが発生した時に、このエラーの発生原因の特定を容易にする。【解決手段】ＧＵＩアプリケーションテスト支援装置において、ＧＵＩアプリケーションが生成するＧＵＩ画面と、ＧＵＩ画面設計仕様とを比較して、ＧＵＩ画面の生成エラーを判断し、テストスクリプトと対応付けてＧＵＩアプリケーションの実行箇所情報や、エラー発生時に生成されたＧＵＩアプリケーションのトレース情報、エラーＧＵＩ画面などを含むＧＵＩ画面テスト結果情報を生成する。これにより、ＧＵＩ画面のエラーとエラーを発生した時に実行されていたソースコードの箇所が明らかとなり、エラーの発生原因の特定が容易になる。【選択図】図１
2010152429.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの操作に対応するコマンドであるＵＩ操作コマンドをテスト対象プログラムに送出し、操作に従ったＧＵＩ画面を生成させるテスト対象プログラム制御手段と、
前記テスト対象プログラムがＵＩ操作コマンドに対応して生成するＧＵＩ画面データを記憶するＧＵＩ設計仕様記憶手段と、
ＧＵＩ設計仕様記憶手段に記憶されている、前記テスト対象プログラムが前記ＵＩ操作コマンドに対応して生成するべきＧＵＩ画面データを基準ＧＵＩ画面データとし、この基準ＧＵＩ画面データと、前記テスト対象プログラムが生成した生成ＧＵＩ画面とを比較する比較手段
とを備えることを特徴とするＧＵＩアプリケーションテスト支援装置。
【請求項２】
請求項１に記載のＧＵＩアプリケーションテスト支援装置において、
前記ＧＵＩアプリケーションテスト支援装置でのテストの実行にあたって、
前記ＧＵＩ設計仕様記憶手段は前記テスト対象プログラムが生成すべきＧＵＩ画面データと、前記テスト対象プログラムの画面遷移仕様とを記憶し、
前記テスト対象プログラム制御手段は、
当該テストをする際に使用されるスクリプトであるテストスクリプトを解釈し、前記テスト対象プログラムに送出するＵＩ操作コマンドを生成して送出し、
送出するＵＩ操作コマンドと、画面遷移仕様から、記ＧＵＩ設計仕様記憶手段に記憶されたＧＵＩ画面データの中から、前記テスト対象プログラムが生成すべきＧＵＩ画面データを判断し、基準ＧＵＩ画面データに指定することを特徴とするＧＵＩアプリケーションテスト支援装置。
【請求項３】
請求項２に記載のＧＵＩアプリケーションテスト支援装置において、
前記テスト対象プログラム制御手段は、前記比較手段よるＧＵＩ画面比較結果の情報を含むＧＵＩ画面テスト情報を生成し、
当該ＧＵＩ画面テスト情報を保存するテスト結果保存手段を設ける
ことを特徴とするＧＵＩアプリケーションテスト支援装置。
【請求項４】
請求項３に記載のＧＵＩアプリケーションテスト支援装置において、
前記テスト対象プログラム制御手段は、前記テストスクリプトの実行単位で前記テスト対象プログラムの実行箇所とソースコードを対応付けできるトレース情報を取得し、前記比較手段によるＧＵＩ画面比較結果と、トレース情報を前記ＧＵＩ画面テスト結果情報に含め前記テストスクリプトの実行単位で管理することで
エラー発生時のＵＩ操作と前記テスト対象プログラムの実行箇所を一意に特定可能とした
ことを特徴とするＧＵＩアプリケーションテスト支援装置。
【請求項５】
請求項３に記載のＧＵＩアプリケーション開発支援装置において
前記生成ＧＵＩ画面と、前記基準ＧＵＩ画面との比較結果がエラーの場合は、当該エラー情報を有する生成ＧＵＩ画面をエラーＧＵＩ画面として前記ＧＵＩ画面テスト情報に追加して、テスト結果保存手段に保存する
ことを特徴とするＧＵＩアプリケーションテスト支援装置。
【請求項６】
請求項３に記載のＧＵＩアプリケーション開発支援装置において
前記テスト対象プログラムがエラーＧＵＩ画面を生成したことによって、実行できなかったＵＩ操作コマンドに関する情報を前記ＧＵＩ画面テスト情報に含ませる
ことを特徴とするＧＵＩアプリケーションテスト支援装置。
【請求項７】
ユーザの操作に対応するコマンドであるＵＩ操作コマンドをテスト対象プログラムに送出し、操作に従ったＧＵＩ画面を生成させるテスト対象プログラム制御ステップと、
前記テスト対象プログラムがＵＩ操作コマンドに対応して生成するＧＵＩ画面データを記憶するＧＵＩ設計仕様記憶ステップと、
ＧＵＩ設計仕様記憶手段に記憶されている、前記テスト対象プログラムが前記ＵＩ操作コマンドに対応して生成するべきＧＵＩ画面データを基準ＧＵＩ画面データとし、この基準ＧＵＩ画面データと、前記テスト対象プログラムが生成した生成ＧＵＩ画面とを比較する比較ステップと
を備えることを特徴とするＧＵＩアプリケーションテスト支援方法。
【請求項８】
請求項７に記載のＧＵＩアプリケーションテスト支援方法において、
前記ＧＵＩアプリケーションテスト支援装置でのテストの実行にあたって、
前記ＧＵＩ設計仕様記憶ステップは前記テスト対象プログラムが生成すべきＧＵＩ画面データと、前記テスト対象プログラムの画面遷移仕様とを記憶し、
前記テスト対象プログラム制御ステップは、
当該テストをする際に使用されるスクリプトであるテストスクリプトを解釈し、前記テスト対象プログラムに送出するＵＩ操作コマンドを生成して送出し、
送出するＵＩ操作コマンドと、画面遷移仕様から、記ＧＵＩ設計仕様記憶ステップに記憶されたＧＵＩ画面データの中から、前記テスト対象プログラムが生成すべきＧＵＩ画面データを判断し、基準ＧＵＩ画面データに指定することを特徴とするＧＵＩアプリケーションテスト支援方法。
【請求項９】
請求項８に記載のＧＵＩアプリケーションテスト支援方法において、
前記テスト対象プログラム制御ステップは、前記比較手段よるＧＵＩ画面比較結果の情報を含むＧＵＩ画面テスト情報を生成し、
当該ＧＵＩ画面テスト情報を保存するテスト結果保存ステップを設ける
ことを特徴とするＧＵＩアプリケーションテスト支援方法。
【請求項１０】
請求項９に記載のＧＵＩアプリケーションテスト支援方法において、
前記テスト対象プログラム制御ステップは、前記テストスクリプトの実行単位で前記テスト対象プログラムの実行箇所とソースコードを対応付けできるトレース情報を取得し、前記比較手段によるＧＵＩ画面比較結果と、トレース情報を前記ＧＵＩ画面テスト結果情報に含め前記テストスクリプトの実行単位で管理することで
エラー発生時のＵＩ操作と前記テスト対象プログラムの実行箇所を一意に特定可能とした
ことを特徴とするＧＵＩアプリケーションテスト支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデジタルテレビなど組込み機器向けのグラフィカル・ユーザー・インターフェース（ＧＵＩ）アプリケーションのテストを実施する技術に関する。
【背景技術】
【０００２】
従来、ＧＵＩアプリケーションのテストを支援する方法としては、ＧＵＩ画面を構成す
る画面構成要素に着目し、過去と現在のテスト結果を比較して差異があった部分に関連するユーザ操作内容と、差異が発生した画面構成要素の種類を差異の内容を記憶する方法が特許文献１に記載されている。
【０００３】
【特許文献１】特開２００１−３０６３５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１はＧＵＩ画面で差異が発生したＧＵＩ画面の構成要素（ＧＵＩ画面に配置されているボタンなどのＧＵＩ部品）の特定を主眼としている。そのため、ＧＵＩ画面の差異があった箇所のソースコードの特定については、あまり考慮されていない。
【０００５】
本発明の目的は、ＧＵＩアプリケーションが生成する生成ＧＵＩ画面と、ＧＵＩ画面設計仕様に基づくＧＵＩ画面である基準ＧＵＩ画面とを比較して、両者のＧＵＩ画面の差異でＧＵＩアプリケーションの遷移やＧＵＩ画面の生成の正しさや、ＧＵＩ画面の生成のエラーなどＧＵＩ画面生成エラーを判断するＧＵＩアプリケーションのテストを支援する技術を提供することである。
【課題を解決するための手段】
【０００６】
前記目的を達成するために、ユーザの操作に対応するコマンドであるＵＩ操作コマンドをテスト対象プログラムに送信し、ＵＩ操作コマンドに従ったＧＵＩ画面を生成させるテスト対象プログラム制御手段を備え、画面設計仕様による基準ＧＵＩ画面とテスト対象プログラムが生成する生成ＧＵＩ画面とを比較する事で生成される生成ＧＵＩ画面の正しさ、エラー情報の有無のテストなどを実施する。
【０００７】
前記ＧＵＩアプリケーションのテストにおいて、前記ＵＩ操作コマンドをテスト対象プログラムに送信するにあたっては、例えば、テストする際に使用されるスクリプトであるテストスクリプトを作成し、当該テストスクリプトに対応して、テストを実行するものであってもよい。
【０００８】
さらに、テスト対象プログラム制御手段はテスト対象プログラムの実行時に得られるトレース情報を取得し、テストスクリプトで実行されるＵＩ操作と、テスト対象プログラムのトレース情報を対応付けて管理する。これにより、ＵＩ操作とそれにより生成される生成ＧＵＩ画面、ＧＵＩ画面を生成するテスト対象プログラムの実行箇所を対応付ける事ができ、生成ＧＵＩ画面のエラーの原因特定を容易にする情報をアプリケーション開発者に提供できる。
【０００９】
若しくは、ＧＵＩ画面生成エラーの判断結果を、テストスクリプトの実行箇所と対応付けて、ＧＵＩアプリケーションのトレース情報、ＧＵＩ画面の比較結果、および、比較結果に差異があった場合のエラー情報を有するＧＵＩ画面（エラーＧＵＩ画面）を含むＧＵＩ画面テスト結果情報を生成し、ＧＵＩ画面のエラーの原因の特定を容易にする情報をアプリケーション開発者に提供するＧＵＩアプリケーションのテストを支援する技術を提供することである。
【００１０】
前記構成とすることで、ＧＵＩアプリケーションテスト支援装置を構成すれば、ＧＵＩアプリケーションが生成するＧＵＩ画面と、ＧＵＩ画面設計仕様とを比較して、ＧＵＩ画面の生成エラーを判断し、テストスクリプトと対応付けてＧＵＩアプリケーションの実行箇所情報や、エラー発生時に生成されたＧＵＩアプリケーションのトレース情報、エラーＧＵＩ画面などを含むＧＵＩ画面テスト結果情報を生成することが可能となる。
【００１１】
これにより、ＧＵＩ画面のエラーとエラーを発生した時に実行されていたソースコードの箇所が特定することが可能となり、エラーの発生原因の特定が容易になる。しいては、従来よりもエラー終息までに要する作業の期間等が短縮され、ＧＵＩアプリケーションの開発効率向上につながり、ＧＵＩアプリケーションの開発コストや、製品の開発コストを削減することができる。
【発明の効果】
【００１２】
本発明によれば、ＧＵＩアプリケーションのテストについて、従来よりも効率の改善を可能とするものである。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態について図面を用いて説明する。
【実施例１】
【００１４】
図１は本発明のＧＵＩアプリケーションテスト支援装置の構成を示す図である。
【００１５】
１００は本発明のＧＵＩアプリケーションテスト支援装置である。ＧＵＩアプリケーションテスト支援装置１００は、テスト対象プログラム制御手段１０１、ＧＵＩ設計仕様記憶手段１０２、テスト結果保存手段１０３、比較手段１０４、テスト対象プログラム１０５、出力画面データキャプチャ手段１０６で構成する。
【００１６】
１１０はＧＵＩアプリケーションテスト支援装置１００に入力されるテストスクリプトである。
【００１７】
次に、各部の処理を説明する。
【００１８】
テスト対象プログラム制御手段１０１はテストスクリプト１１０を取り込み、解釈し、テストスクリプトに従ってＧＵＩ画面を操作しテスト対象プログラム１０５のＧＵＩをテストする手段であり、また、ＧＵＩアプリケーションテスト支援装置１００全体を制御する手段でもある。
【００１９】
ＧＵＩ設計仕様記憶手段１０２はテスト対象プログラム１０５のＧＵＩの画面設計仕様を記憶する手段である。画面設計仕様とは、ＧＵＩ画面の遷移定義、および、ＧＵＩ画面遷移単位のＧＵＩ画面イメージデータ、ＧＵＩ画面を構成するＧＵＩ部品に設定されるプロパティの情報（座標、大きさ、文字、フォント、文字の色、背景イメージ、背景の色など）やフォーカス状態などである。
【００２０】
テスト結果保存手段１０３はテスト対象プログラムから取得するトレース情報や、ＧＵＩアプリケーションが生成するＧＵＩ画面と、ＧＵＩ画面設計仕様とを比較した結果に基づき、スト対象プログラム制御手段１０１によって生成されるＧＵＩ画面テスト結果情報を保存する。
【００２１】
比較手段１０４は出力画面データキャプチャ手段１０６によってキャプチャされたＧＵＩ画面と画面設計仕様で定義されているＧＵＩ画面イメージとを比較し、同じか、異なるかを判断する手段である。比較対象となるＧＵＩ画面イメージの選択は、テストスクリプに記述されているＧＵＩ画面操作の情報と、ＧＵＩ画面の遷移定義を用いてテスト対象プログラム制御手段１０１が決定する。
【００２２】
テスト対象プログラム１０５はテスト対象となるＧＵＩアプリケーションを実行する手段である。ＧＵＩアプリケーションはテスト対象プログラム制御手段１０１が生成するＧＵＩ操作コマンド（リモコンコマンドなど）を受信し、それに従って実機上で動作するときと同様に動作し、ＧＵＩ画面を生成し出力する。
【００２３】
出力画面データキャプチャ手段１０６はテスト対象プログラム制御手段１０１に指示されたタイミングでテスト対象プログラム１０５が出力するＧＵＩ画面をキャプチャする。
【００２４】
ここで、ＧＵＩ設計仕様記憶手段１０２に記憶される画面遷移仕様について説明する。図２はＧＵＩ設計仕様記憶手段１０２に記憶される画面遷移仕様の一例である。
【００２５】
図２の画面遷移仕様は、ＧＵＩ画面遷移単位のＧＵＩ画面イメージデータも含んでいる。２００は遷移するＧＵＩ画面の１つを示すものである。ＧＵＩ画面を特定する画面ＩＤと２０１と、ＧＵＩ画面のイメージデータ２０２で構成する。２０３は１つのＧＵＩ画面状態から他のＧＵＩ画面状態への遷移を示す矢印である。２０４遷移条件である。遷移を示す矢印２０３の元側のＧＵＩ画面から、矢印の先側のＧＵＩ画面へ遷移するための条件が記述される。
【００２６】
例えば図２において、画面ＩＤ：ＵＩ１０１０００のＧＵＩ画面は、リモコンの「↓」ボタンが押されると画面ＩＤ：ＵＩ０１１００のＧＵＩ画面に遷移し、リモコンの「戻る」ボタンが押されか、もしくは「タイマー」イベントが発生するまでＧＵＩ画面が操作されない状態にあると画面ＩＤ：ＵＩ１００００に遷移することを表している。
【００２７】
図３は図２の画面遷移仕様を表形式で表したものである。
【００２８】
「現在の画面ＩＤ」欄に書かれているＧＵＩ画面が表示されている状態で、「イベント」欄に書かれているイベントが発生すると「遷移先画面ＩＤ」欄に書かれているＧＵＩ画面に画面が遷移する。
【００２９】
ＧＵＩ設計仕様記憶手段１０２に記憶される画面遷移仕様は図２、図３どちらの書式でも良く、また、遷移元のＧＵＩ画面、遷移先のＧＵＩ画面と遷移条件を特定できる書式であればどのような書式であっても構わない。
【００３０】
次に、ＧＵＩ画面テストに使用するテストスクリプトについて説明する。
【００３１】
テストスクリプトはＧＵＩ画面をテストするために、ユーザのＧＵＩ画面操作手続きを記述したものである。
【００３２】
図４はテストスクリプトの一例である。図４の例では、データをカンマ（","）で区切って並べたファイル形式であるＣＶＳ（Ｃｏｍｍａ  Ｓｅｐａｒａｔｅｄ  Ｖａｌｕｅｓ）で記述しているが、書式はどのようなものであっても構わない。
【００３３】
図４において、スクリプトＩＤはスクリプトを一意に特定するＩＤである。イベントはスクリプトが実行されるときに発生するＵＩイベントである。スクリプトＩＤ：１のイベント：「メニュー」ボタンは、ユーザがリモコンの「メニュー」ボタンを押す操作をすることを表している。テスト対象プログラム制御手段１０１はこの記述に従い、「メニュー」ボタンが押された時に生成されるリモコンコマンドを生成し、テスト対象プログラム１０５に送信する。エラー時飛び先はスクリプトを実行した結果エラーが発生した場合に次に実行されるスクリプトＩＤを示している。エラー時飛び先は、例えば、一連の操作で完結するＧＵＩメニューがあったとして、その途中でエラーが発生した場合は、残りの操作に対するテストはスキップするように設定する。なお、図4の例ではスクリプトＩＤ：０はテストスクリプトの終了を表している。
【００３４】
次に、テスト対象プログラム制御手段１０１が制御するＧＵＩ画面テスト処理について説明する。
【００３５】
図５はＧＵＩアプリケーションのＧＵＩ画面テスト処理フローの一例である。テスト対象プログラム制御手段１０１は図２や図３の画面遷移仕様とテストスクリプト１１０に記述されているＧＵＩ画面の操作情報からテストスクリプトの該当行が実行された時に遷移するＧＵＩ画面を決定し、比較手段１０４で比較対象となるＧＵＩ画面とする。
【００３６】
１）ＧＵＩ画面テストを開始すると、テスト対象プログラム制御手段１０１はテスト対象プログラム１０５で実行しているＧＵＩアプリケーションのトレース情報の取得を開始する（Ｓ１００）。ＧＵＩアプリケーションのトレース情報はテスト結果保存手段１０３に保存される。図６は保存されるトレース情報の一例である。この例では、トレース情報として、実行しているアプリケーションのファイル名、実行された行、実行されたメソッド名、付加情報としては実行されたメソッドの引数値を取得している。
【００３７】
２）次に、テスト対象プログラム制御手段１０１は入力されたテストスクリプト１１０を1ステップずつ解釈する（Ｓ１０１）。
【００３８】
３）次に、テスト対象プログラム制御手段１０１はテストスクリプト解釈した結果に基づきＵＩ（ユーザー・インターフェース）コマンドを生成し、テスト対象プログラム１０５に送出する（Ｓ１０２）。図４のテストスクリプトのスクリプトＩＤ：１を解釈した場合は、「メニュー」ボタン押下に対応するリモコンコマンドを生成し、テスト対象プログラム１０５に送出する。
【００３９】
４）次に、テスト対象プログラム制御手段１０１の指示により出力画面データキャプチャ手段１０６でテスト対象プログラム１０５が出力したＧＵＩ画面がキャプチャされる（Ｓ１０３）。
【００４０】
５）次に、比較手段１０４により、出力画面データキャプチャ手段１０６がキャプチャしたＧＵＩ画面と、テスト対象プログラム制御手段１０１により設定された画面設計仕様で定義されているＧＵＩ画面を比較し、差異がある場合はエラーと判断する。そして、テスト対象プログラム制御手段１０１は図７に示すようなＧＵＩ画面テスト結果情報を生成しテスト結果保存手段１０３に保存する。
【００４１】
６）テスト対象プログラム制御手段１０１は比較結果により、次に実行するテストスクリプトを決定する（Ｓ１０５）。比較結果が正常の場合は、実行するスクリプトのＩＤを1増やし、テストスクリプトの次の行を実行する（Ｓ１０６）。
【００４２】
７）比較結果がエラーの場合は、テストスクリプトに書かれているエラー時の飛び先を実行するスクリプトのＩＤに設定する（Ｓ１０７）。図５のテストスクリプトでスクリプトＩＤ：６を実行したときにエラーが発生した場合、次に実行されるスクリプトのスクリプトＩＤは９となる。エラーが発生した場合はテスト対象のＧＵＩアプリケーションを初期化してからテストを再開する（Ｓ１０８）
８）テストはテストスクリプトが終了するまで続けられる（Ｓ１０９）。
【００４３】
図７はＧＵＩ画面テスト結果情報の一例である。
【００４４】
図７の例ではＧＵＩ画面テスト結果情報として、スクリプトＩＤ、そのスクリプトが実行時のトレース情報、ＧＵＩ画面比較結果（結果）、正常動作時の遷移先のＧＵＩ画面ＩＤ（正常時遷移先ＩＤ）、エラーが発生した時にテスト対象プログラムが生成したＧＵＩ画面データ（異常画面ファイル名）を持つ。
【００４５】
ＧＵＩ画面比較結果（結果）は、正常時はＯＫ、エラー発生した場合はＮＧと記述する。そして、エラーが発生したために実行されなかったスクリプトＩＤの結果はＳＫＩＰで表現する。これにより、ＧＵＩ画面テストの正常、エラーの結果だけでなく、実行されなかったスクリプトも知ることができる。また、トレース情報はスクリプトＩＤと対応付けて管理するため、エラーが発生した場合に、どのような操作でエラーが発生したのかと、そのときに実行されていたコードの対応を明確にすることができる。
【００４６】
以上のように、本発明によればＧＵＩ画面のエラーとエラーを発生した時に実行されていたソースコードの箇所が明らかとなるため、エラーの発生原因の特定が容易になる効果がある。また、エラー時に生成されたＧＵＩ画面データも保存するため、エラーの状況を把握しやすくなる効果がある。
【実施例２】
【００４７】
図８は本発明のＧＵＩアプリケーションテスト支援装置およびテストシステムの構成を示す図である。図８に示す通りＧＵＩアプリケーションテストシステムはＧＵＩアプリケーションテスト支援装置１００、テスト対象装置２００で構成する。
【００４８】
１００は本発明のＧＵＩアプリケーションテスト支援装置である。ＧＵＩアプリケーションテスト支援装置１００は、テスト対象プログラム制御手段１０１、ＧＵＩ設計仕様記憶手段１０２、テスト結果保存手段１０３、出力画面データキャプチャ手段１０６、デバッグＩ／Ｆ手段１０７、ＵＩ送信Ｉ／Ｆ手段１０８で構成する。
【００４９】
１１０はＧＵＩアプリケーションテスト支援装置１００に入力されるテストスクリプトである。
【００５０】
２００はテスト対象となるＧＵＩアプリケーションが動作する実機であるテスト対象装置である。テスト対象装置２００は  テスト対象プログラム２０１、デバッグＩ／Ｆ手段２０２、ＵＩ受信Ｉ／Ｆ手段２０３、出力手段２０４で構成する。
【００５１】
次に、ＧＵＩアプリケーションテスト支援装置１００の各部の処理を説明する。テスト対象プログラム制御手段１０１はテストスクリプト１１０を取り込み、解釈し、テストスクリプトに従ってＧＵＩ画面を操作し、テスト対象装置２００で動作するテスト対象プログラム２０１のＧＵＩをテストする手段であり、また、ＧＵＩアプリケーションテスト支援装置１００全体を制御する手段でもある。
【００５２】
ＧＵＩ設計仕様記憶手段１０２はテスト対象装置２００で動作するテスト対象プログラム２０１のＧＵＩの画面設計仕様を記憶する手段である。画面設計仕様とは、ＧＵＩ画面の遷移定義、および、ＧＵＩ画面遷移単位のＧＵＩ画面イメージデータ、ＧＵＩ画面を構成するＧＵＩ部品に設定されるプロパティの情報（座標、大きさ、文字、フォント、文字の色、背景イメージ、背景の色など）やフォーカス状態などである。
【００５３】
テスト結果保存手段１０３はテスト対象プログラム２０１から取得するトレース情報や、ＧＵＩアプリケーションが生成するＧＵＩ画面と、ＧＵＩ画面設計仕様とを比較した結果に基づき、スト対象プログラム制御手段１０１によって生成されるＧＵＩ画面テスト結果情報を保存する。
【００５４】
比較手段１０４は出力画面データキャプチャ手段１０６によってキャプチャされたＧＵＩ画面と画面設計仕様で定義されているＧＵＩ画面イメージとを比較し、同じか、異なるかを判断する手段である。比較対象となるＧＵＩ画面イメージの選択は、テストスクリプに記述されているＧＵＩ画面操作の情報と、ＧＵＩ画面の遷移定義を用いてテスト対象プログラム制御手段１０１が決定する。
【００５５】
出力画面データキャプチャ手段１０６はテスト対象プログラム制御手段１０１に指示されたタイミングでテスト対象装置２００の出力手段２００を介してテスト対象プログラム１０５が出力するＧＵＩ画面をキャプチャする。
【００５６】
デバッグＩ／Ｆ手段１０７は、テスト対象装置２００とのデバッグ通信手段を提供する。テスト対象プログラム制御手段１０１はデバッグI/F手段１０７とテスト対象装置２００のデバッグＩ／Ｆ手段２０２を介してテスト対象プログラム２０１からトレース情報を取得し、テスト結果保持手段に保存する。
【００５７】
ＵＩ送信Ｉ／Ｆ手段１０８は、テスト対象装置２００にＵＩ操作コマンド（リモコンコマンドなど）を送信する手段である。デバイス形態は赤外線やBluetooth、IEEE1394などテスト対象装置２００と同じものを使用する。
【００５８】
次に、テスト対象装置２００の各部の処理を説明する。テスト対象プログラム２０１はＧＵＩを提供するプログラムで、本システムのＧＵＩアプリケーションテストのテスト対象となるプログラムである。
【００５９】
デバッグＩ／Ｆ手段２０２はＧＵＩアプリケーションテスト支援装置１００とのとのデバッグ通信手段を提供する手段である。
【００６０】
ＵＩ受信Ｉ／Ｆ手段２０３はテスト対象装置２００を操作するＵＩ操作コマンド（リモコンコマンドなど）を受信する手段である。
【００６１】
出力手段２０４はテスト対象プログラム２０１が生成するＧＵＩ画面を外部出力する手段である。
【００６２】
本実施例においても、本発明によればＧＵＩ画面のエラーとエラーを発生した時に実行されていたソースコードの箇所が明らかとなるため、エラーの発生原因の特定が容易になる効果がある。また、エラー時に生成されたＧＵＩ画面データも保存するため、エラーの状況を把握しやすくなる効果がある点は実施例１と同等である。
【００６３】
本実施例では、テスト対象プログラム２０１を実動作環境で動作させるため、実機固有の機能と連携したＧＵＩ部分のテストも可能となる。
【実施例３】
【００６４】
図９は本発明のＧＵＩアプリケーションテスト支援装置およびテストシステムの構成を示す図である。図９に示す通りＧＵＩアプリケーションテストシステムはＧＵＩアプリケーションテスト支援装置１００、テスト対象装置２００、テスト対象ＧＵＩシミュレーション装置３００で構成する。
【００６５】
１００は本発明のＧＵＩアプリケーションテスト支援装置である。ＧＵＩアプリケーションテスト支援装置１００は、テスト対象プログラム制御手段１０１、テスト結果保存手段１０３、出力画面データキャプチャ手段１０６、デバッグＩ／Ｆ手段１０７、ＵＩ送信Ｉ／Ｆ手段１０８で構成する。
【００６６】
１１０はＧＵＩアプリケーションテスト支援装置１００に入力されるテストスクリプトである。
【００６７】
２００はテスト対象となるＧＵＩアプリケーションが動作する実機であるテスト対象装置である。テスト対象装置２００はテスト対象プログラム２０１、デバッグＩ／Ｆ手段２０２、ＵＩ受信Ｉ／Ｆ手段２０３、出力手段２０４で構成する。
３００はテスト対象ＧＵＩシミュレーション装置である。テスト対象ＧＵＩシミュレーション装置３００はＧＵＩ画面生成手段３０１、ＧＵＩ設計仕様記憶手段３０２、ＵＩ受信Ｉ／Ｆ手段３０３、出力手段３０４で構成する。
【００６８】
テスト対象装置２００の各部の処理の説明は、実施例２のテスト対象装置２００と同じなので省略する。
【００６９】
ＧＵＩアプリケーションテスト支援装置１００の各部の処理も基本的に実施例２のＧＵＩアプリケーションテスト支援装置１００と同じであるが、テスト対象装置２００のテスト対象プログラム２０１が生成するＧＵＩ画面を、テスト対象ＧＵＩシミュレーション装置３００が生成するＧＵＩ画面と比較してテストする方式を取るので、ＧＵＩ設計仕様記憶手段１０２は不要となる。出力画面データキャプチャ手段１０９はテスト対象ＧＵＩシミュレーション装置３００が生成するＧＵＩ画面をキャプチャする手段である。
【００７０】
テスト対象ＧＵＩシミュレーション装置３００はＧＵＩアプリケーションの画面設計仕様を作成するための支援装置であり、また、仕様段階でＧＵＩ画面の動作を検証するツールである。ＧＵＩ設計仕様記憶手段３０２はテスト対象プログラムのＧＵＩ画面設計仕様を記憶する手段である。ＧＵＩ画面生成手段３０１はＧＵＩ設計仕様記憶手段３０２に記憶されているＧＵＩ画面設計仕様を元にＧＵＩ画面を生成し、出力手段３０４を介してＵＩ画面を外部出力する。
【００７１】
ＵＩ受信Ｉ／Ｆ手段３０３はテスト対象装置２００のＵＩ受信Ｉ／Ｆ手段２０３と同等の機能を有し、ＵＩ操作コマンド（リモコンコマンドなど）を受信する手段である。
【００７２】
本実施例においても、本発明によればＧＵＩ画面のエラーとエラーを発生した時に実行されていたソースコードの箇所が明らかとなるため、エラーの発生原因の特定が容易になる効果がある。また、エラー時に生成されたＧＵＩ画面データも保存するため、エラーの状況を把握しやすくなる効果がある点は実施例１、実施例２と同等である。
【００７３】
本実施例では、テスト対象ＧＵＩシミュレーション装置３００により、画面設計仕様に準じたＧＵＩ画面を生成し、それを比較対象としてＧＵＩ画面をテストする。従って、実施例１、実施例２のように、テスト対象装置２００が生成するであろう画面をあらかじめ持っていなくても良い。
【００７４】
また、画面遷移についても、テスト対象ＧＵＩシミュレーション装置３００は同じＧＵＩ設計仕様データを用いてＧＵＩ画面を遷移させるため、ＧＵＩアプリケーションテスト支援装置１００がＧＵＩ設計仕様データを用いて遷移先のＧＵＩ画面を決定する必要もない。ＧＵＩアプリケーションテスト支援装置１００は、テストスクリプトに従って、テスト対象装置２００とテスト対象ＧＵＩシミュレーション装置３００に同じＵＩ操作コマンド（リモコンコマンドなど）送ればよく、テスト対象装置２００とテスト対象ＧＵＩシミュレーション装置３００から出力されるＧＵＩ画面をキャプチャし比較するだけでＧＵＩ画面のテストを実施できる。
【図面の簡単な説明】
【００７５】
【図１】ＧＵＩアプリケーションテスト支援装置の構成図
【図２】ＧＵＩアプリケーションの画面遷移仕様の一例
【図３】ＧＵＩアプリケーションの画面遷移仕様の一例
【図４】ＧＵＩアプリケーションテスト支援装置が使用するテストスクリプトの一例
【図５】ＧＵＩアプリケーションのＧＵＩ画面テスト処理フローの一例
【図６】ＧＵＩアプリケーションテスト支援装置が収集するトレース情報の一例
【図７】ＧＵＩアプリケーションテスト支援装置が生成するＧＵＩ画面テスト結果情報の一例
【図８】ＧＵＩアプリケーションテスト支援装置およびテストシステムの構成図
【図９】ＧＵＩアプリケーションテスト支援装置およびテストシステムの構成図
【符号の説明】
【００７６】
１００：ＧＵＩアプリケーションテスト支援装置
１０１：テスト対象プログラム制御手段
１０２：ＧＵＩ設計仕様記憶手段
１０３：テスト結果保存手段
１０４：比較手段
１０５：テスト対象プログラム
１０６：出力画面データキャプチャ手段
１０７：デバッグＩ／Ｆ手段
１０８：ＵＩ送信Ｉ／Ｆ手段
１０９：出力画面データキャプチャ手段
１１０：テストスクリプト
２００：テスト対象装置
２０１：テスト対象プログラム
２０２：デバッグＩ／Ｆ手段
２０３：ＵＩ受信Ｉ／Ｆ手段
２０４：出力手段
２１０：一ＧＵＩ画面
２１１：ＧＵＩ画面ＩＤ
２１２：ＧＵＩ画面
２１３：画面遷移
２１４：画面遷移条件
３００：テスト対象ＧＵＩシミュレーション装置
３０１：ＧＵＩ画面生成手段
３０２：ＧＵＩ設計仕様記憶手段
３０３：ＵＩ受信Ｉ／Ｆ手段
３０４：出力手段
【図１】
2010152429.tif 000003
【図２】
2010152429.tif 000004
【図３】
2010152429.tif 000005
【図４】
2010152429.tif 000006
【図５】
2010152429.tif 000007
【図６】
2010152429.tif 000008
【図７】
2010152429.tif 000009
【図８】
2010152429.tif 000010
【図９】
2010152429.tif 000011