(57)【要約】  【課題】  画面遷移図のパスを網羅するだけでなく、様々な観点を持つテストシナリオを作成するテストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法を提供する。  【解決手段】  画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法をコンピュータに実行させるテストシナリオ作成プログラムであって、アプリケーションの設計情報を取得する設計情報取得ステップＳ１１と、設計情報と予め設定された生成ルールとに基づいて、テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップＳ１２と、設計情報に基づいてテストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップＳ３１とをコンピュータに実行させる。  【選択図】  図２
2007052703.tif 000002
【特許請求の範囲】
【請求項１】
画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法をコンピュータに実行させるテストシナリオ作成プログラムであって、
前記アプリケーションの設計情報を取得する設計情報取得ステップと、
前記設計情報取得ステップにより取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップと、
前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップと、
をコンピュータに実行させるテストシナリオ作成プログラム。
【請求項２】
請求項１に記載のテストシナリオ作成プログラムにおいて、
更に、前記テストシナリオ設定ステップの後に、前記設計情報取得ステップにより取得された設計情報と前記テストシナリオ設定ステップにより設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定ステップをコンピュータに実行させることを特徴とするテストシナリオ作成プログラム。
【請求項３】
請求項２に記載のテストシナリオ作成プログラムにおいて、
更に、前記テストデータ設定ステップの後に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得する設計情報再取得ステップと、
前記設計情報再取得ステップの後に、前記設計情報再取得ステップにより再取得された設計情報と前記生成ルールに基づいて、テストシナリオ雛形情報の再生成を行い、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報再生成ステップと、
をコンピュータに実行させることを特徴とするテストシナリオ作成プログラム。
【請求項４】
請求項１乃至請求項３のいずれかに記載のテストシナリオ作成プログラムにおいて、
前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするテストシナリオ作成プログラム。
【請求項５】
画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成装置であって、
前記アプリケーションの設計情報を取得する設計情報取得部と、
前記設計情報取得部により取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成部と、
前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定部と、
を備えてなるテストシナリオ作成装置。
【請求項６】
請求項５に記載のテストシナリオ作成装置において、
更に、前記設計情報取得部により取得された設計情報と前記テストシナリオ設定部により設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定部を備えることを特徴とするテストシナリオ作成装置。
【請求項７】
請求項６に記載のテストシナリオ作成装置において、
前記設計情報取得部は更に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得し、
前記テストシナリオ雛形情報生成部は更に、前記設計情報取得部により再取得された設計情報に基づいて、テストシナリオ雛形情報の再生成を行い、
更に、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報選択部を備えることを特徴とするテストシナリオ作成装置。
【請求項８】
請求項５乃至請求項７のいずれかに記載のテストシナリオ作成装置において、
前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするテストシナリオ作成装置。
【請求項９】
画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法であって、
前記アプリケーションの設計情報を取得する設計情報取得ステップと、
前記設計情報取得ステップにより取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップと、
前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップと、
を実行するテストシナリオ作成方法。
【請求項１０】
請求項９に記載のテストシナリオ作成方法において、
更に、前記テストシナリオ設定ステップの後に、前記設計情報取得ステップにより取得された設計情報と前記テストシナリオ設定ステップにより設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定ステップを実行することを特徴とするテストシナリオ作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法に関するものである。
【背景技術】
【０００２】
従来、Ｗｅｂアプリケーションのような画面の変化を伴うアプリケーションの機能テストを行う場合、設計情報に含まれる画面遷移の情報に基づいて、アプリケーションの作成者（テストシナリオの作成者）がテストシナリオを作成することが多かった。画面遷移の情報は、ノードを画面に対応させたフローグラフで表され、一般に画面遷移図と呼ばれている。
【０００３】
なお、本発明の関連ある従来技術として、例えば、下記に示す特許文献１が知られている。このソフトウェアのシステムテスト支援装置およびこれに用いるテストシナリオ生成装置は、ＧＵＩベースのソフトウェアのシステムテストを簡単に行えるようにするためのものであり、ソフトウェアのＧＵＩ部が持つ全ての状態と全ての状態遷移を網羅するために必要なテストシナリオを生成するものである。
【特許文献１】特開平９−２２３０４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１の技術は、全ての画面遷移を網羅するようにテストシナリオを作成している。しかしながら、テストシナリオを作成する際に、単に画面遷移を網羅するだけでは、作成者が必要とするテストシナリオを得られるとは限らない。つまり、同じパス（開始から終了までの遷移の順序列）であっても、画面に入力するデータや画面に表示される表示項目の構造の違いによって、異なるテストシナリオが必要となる。また、どのような観点でテストシナリオを作成するかは、作成者のスキルに依存するため、テストの品質にばらつきが出るという問題がある。例えば、テストシナリオやテストシナリオの実行に必要な入力データや期待値であるテストデータの数が膨大になり、テストシナリオやテストデータの作成や実施が不可能となる、あるいは、業務において意味のないテストシナリオができてしまう、等の問題が生じる。
【０００５】
また、テストシナリオの編集において、作成者は、正しい画面遷移であるか、画面を遷移するために押下するボタンは正しいか等、テストシナリオの妥当性を確認する必要があり、この作業は作成者への負担が大きいという問題があると共に、入力ミスが生じるという問題があった。
【０００６】
また、テストシナリオの編集において、作成者は、テストシナリオで用いられるテストデータを作成することも必要である。これらテストデータは、設計情報に含まれる画面項目定義に適合し、テストシナリオに適切なデータを作成する必要がある。ここで、画面項目定義とは、画面内の構成要素を定義したものである。そのため、作成者は画面項目定義やテストシナリオ等の複数のドキュメントを参照しながら作業を行う必要がある、あるいは、作成者は遷移の度に遷移元画面と遷移先画面に対してデータを作成する必要がある、あるいは、データの作成量が多く、作成者への負担が大きい、等の問題がある。
【０００７】
また、設計情報である画面遷移図や画面項目定義は、テストシナリオ作成開始後も変更される可能性がある。変更後の設計情報に基づいて自動的にテストシナリオを生成すると、再びテストシナリオやテストデータの編集の作業が必要となる、あるいは、設計情報の部分的な変更であっても全てのテストシナリオを調べる必要がある、等の問題がある。
【０００８】
本発明は上述した問題点を解決するためになされたものであり、画面遷移図のパスを網羅するだけでなく、様々な観点を持つテストシナリオを作成するテストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決するため、本発明は、画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法をコンピュータに実行させるテストシナリオ作成プログラムであって、前記アプリケーションの設計情報を取得する設計情報取得ステップと、前記設計情報取得ステップにより取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップと、前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップとをコンピュータに実行させるものである。
【００１０】
また、本発明に係るテストシナリオ作成プログラムにおいて、更に、前記テストシナリオ設定ステップの後に、前記設計情報取得ステップにより取得された設計情報と前記テストシナリオ設定ステップにより設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定ステップをコンピュータに実行させることを特徴とするものである。
【００１１】
また、本発明に係るテストシナリオ作成プログラムにおいて、更に、前記テストデータ設定ステップの後に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得する設計情報再取得ステップと、前記設計情報再取得ステップの後に、前記設計情報再取得ステップにより再取得された設計情報と前記生成ルールに基づいて、テストシナリオ雛形情報の再生成を行い、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報再生成ステップとをコンピュータに実行させることを特徴とするものである。
【００１２】
また、本発明に係るテストシナリオ作成プログラムにおいて、前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするものである。
【００１３】
また、本発明に係るテストシナリオ作成プログラムにおいて、前記設計情報は、前記アプリケーションの画面の遷移を表す画面遷移図と前記画面内の構成要素の定義を表す画面項目定義を含むことを特徴とするものである。
【００１４】
また、本発明に係るテストシナリオ作成プログラムにおいて、前記テストシナリオ雛形情報生成ステップは、全ての画面遷移を少なくとも１回使用するようにテストシナリオ雛形情報を生成し、更に、所定の画面遷移のループを行うテストシナリオ雛形情報を生成することを特徴とするものである。
【００１５】
また、本発明に係るテストシナリオ作成プログラムにおいて、前記テストシナリオ設定ステップは、作成者が前記テストシナリオ雛形情報に対する設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするものである。
【００１６】
また、本発明に係るテストシナリオ作成プログラムにおいて、前記テストデータ設定ステップは、作成者が前記テストデータの設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするものである。
【００１７】
また、本発明は、画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成装置であって、前記アプリケーションの設計情報を取得する設計情報取得部と、前記設計情報取得部により取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成部と、前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定部とを備えたものである。
【００１８】
また、本発明に係るテストシナリオ作成装置において、更に、前記設計情報取得部により取得された設計情報と前記テストシナリオ設定部により設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定部を備えることを特徴とするものである。
【００１９】
また、本発明に係るテストシナリオ作成装置において、前記設計情報取得部は更に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得し、前記テストシナリオ雛形情報生成部は更に、前記設計情報取得部により再取得された設計情報に基づいて、テストシナリオ雛形情報の再生成を行い、更に、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報選択部を備えることを特徴とするものである。
【００２０】
また、本発明に係るテストシナリオ作成装置において、前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするものである。
【００２１】
また、本発明に係るテストシナリオ作成装置において、前記設計情報は、前記アプリケーションの画面の遷移を表す画面遷移図と前記画面内の構成要素の定義を表す画面項目定義を含むことを特徴とするものである。
【００２２】
また、本発明に係るテストシナリオ作成装置において、前記テストシナリオ雛形情報生成部は、全ての画面遷移を少なくとも１回使用するようにテストシナリオ雛形情報を生成し、更に、所定の画面遷移のループを行うテストシナリオ雛形情報を生成することを特徴とするものである。
【００２３】
また、本発明に係るテストシナリオ作成装置において、前記テストシナリオ設定部は、作成者が前記テストシナリオ雛形情報に対する設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするものである。
【００２４】
また、本発明に係るテストシナリオ作成装置において、前記テストデータ設定部は、作成者が前記テストデータの設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするものである。
【００２５】
また、本発明は、画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法であって、前記アプリケーションの設計情報を取得する設計情報取得ステップと、前記設計情報取得ステップにより取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップと、前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップとを実行するものである。
【発明の効果】
【００２６】
本発明によれば、設計情報とテスト観点に基づいてテストシナリオの雛形を生成することにより、作成者の負担が大幅に軽減されると共に、正確にテストシナリオを作成することができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の実施の形態について図面を参照しつつ説明する。
【００２８】
本発明に係るテストシナリオ作成装置は、画面の変化を伴うアプリケーションの検証を行うためのテストシナリオとテストデータを作成するものである。本実施の形態においては、テストシナリオ作成装置の対象となるアプリケーションの具体例として、レンタカーの検索を行うＷｅｂアプリケーションを用いる。
【００２９】
まず、本発明に係るテストシナリオ作成装置の構成について説明する。
【００３０】
図１は、本発明に係るテストシナリオ作成装置の構成の一例を示すブロック図である。このテストシナリオ作成装置は、設計情報取得部１、テストシナリオ雛形情報生成部２、テストシナリオ設定部３、テストデータ設定部４、テストシナリオ雛形情報選択部５で構成される。
【００３１】
次に、本発明に係るテストシナリオ作成装置の動作の概要について説明する。
【００３２】
図２は、本発明に係るテストシナリオ作成装置の動作の一例を示すフローチャートである。まず、設計情報取得部１は、テストシナリオを作成するアプリケーションの設計情報を取得する（Ｓ１１）。設計情報は、画面遷移図や画面項目定義を含む。
【００３３】
図３は、本実施の形態に係る画面遷移図の一例を示すフローグラフである。画面遷移図には、画面と画面に対して入出力されるデータが表される。このＷｅｂアプリケーションは、予め画面項目定義として記憶された検索条件の選択肢を表示すると共に、ユーザから入力された検索条件を取得する検索画面、検索結果を表示する結果画面、エラーを表示するエラー画面を持つ。このＷｅｂアプリケーションを開始すると、まず、検索画面が表示され、検索ボタンにより検索が行われる。検索の結果が正常であれば、結果画面が表示され、戻るボタンにより検索画面に戻る。一方、検索の結果が異常であれば、エラー画面が表示され、戻るボタンにより検索画面に戻る。図４は、本実施の形態に係る画面項目定義の一例を示すクラス図である。親クラスとしてユーザにより入力される基本の条件を表す検索条件を持ち、集約関連の子クラスとして検索条件に加わる詳細な条件である、定員、サイズ、積載量を持つ。また、親クラスとして結果画面に検索の結果を１件毎に表示する欄である検索結果を持ち、集約関連の子クラスとして、検索結果の内容を表す詳細な項目である、結果項目を持つ。
【００３４】
図５は、本実施の形態に係るＷｅｂアプリケーションの検索画面の一例を示す図である。この検索画面は、検索条件、定員、サイズ、積載量等の選択肢、検索ボタン、戻るボタン、終了ボタンを備え、ユーザからの入力を受け付ける。図６は、本実施の形態に係るＷｅｂアプリケーションの結果画面の一例を示す図である。この結果画面は、戻るボタンを備え、所定の表示件数分の結果項目が表示される。
【００３５】
次に、テストシナリオ雛形情報生成部２は、設計情報取得部１により取得された設計情報と予め設定されたテスト観点に基づいてテストシナリオ雛形情報の生成を行う（Ｓ１２）。テストシナリオ雛形情報とは、テストシナリオの雛形として、テストシナリオの情報の一部が設定された情報であり、残りの情報を設定することによりテストシナリオとなるものである。また、テスト観点とは、ある画面遷移を持つテストシナリオ雛形情報を元にして、同じ画面遷移を持つ異なるテストシナリオ雛形情報を生成する場合の生成ルールを表すものであり、最初に生成されたテストシナリオ雛形情報から適用対象を検出するための条件と、適用対象に対する処理の内容が示される。
【００３６】
次に、テストシナリオ雛形情報選択部５は、既存のテストシナリオやテストデータがあるか否かの判断を行う（Ｓ２１）。既存のテストシナリオやテストデータがない場合（Ｓ２１，Ｎ）、処理Ｓ３１へ移行する。一方、既存のテストシナリオやテストデータがある場合（Ｓ２１，Ｙ）、テストシナリオ雛形情報選択部５は、使用するテストシナリオ雛形情報の選択を行う（Ｓ２２）。
【００３７】
ここで、まず、テストシナリオ雛形情報選択部５は、既存のテストシナリオ雛形情報と新しく生成されたテストシナリオ雛形情報の比較を行い、同一のテストシナリオ雛形情報であるか否かの判断を行う。ここで、テストシナリオ雛形情報選択部５は、既存のテストシナリオ雛形情報と新しく生成されたテストシナリオ雛形情報において、全ての遷移元画面、遷移先画面、操作、適用されたテスト観点が同一である場合、既存のテストシナリオ雛形情報と新しく生成されたテストシナリオ雛形情報が同一であると判断する。更に、同一である場合、テストシナリオ雛形情報選択部５は、新しく生成されたテストシナリオ雛形情報を破棄し、既存のテストシナリオ雛形情報とそれを元に設定されたテストシナリオとテストデータを保持する。一方、同一でない場合、新しく生成されたテストシナリオ雛形情報を既存のテストシナリオ雛形情報に追加する。
【００３８】
次に、テストシナリオ設定部３は、テストシナリオ雛形情報における未設定の情報を設定することにより、テストシナリオの設定を行う（Ｓ３１）。ここで、テストシナリオ設定部３は、テストシナリオ設定画面を表示し、作成者による未設定の情報の入力を受け付けると共に、作成者によるテストシナリオの入力の支援を行う。
【００３９】
次に、テストデータ設定部４は、テストシナリオで用いるテストデータの設定を行う（Ｓ３２）。ここで、テストデータ設定部４は、テストシナリオ設定部３と同様、テストデータ設定画面を表示し、作成者によるテストデータの入力を受け付けると共に、作成者によるテストデータの入力の支援を行う。
【００４０】
次に、テストシナリオ作成装置は、設定されたテストシナリオとテストデータをドキュメントとして出力し（Ｓ３４）、このフローを終了する。その後、設計情報が変更された場合、このフローを再度実行する。
【００４１】
以上が、本発明に係るテストシナリオ作成装置の動作の概要である。以下、各動作の詳細について説明する。
【００４２】
まず、テストシナリオ雛形情報の生成（Ｓ１２）の動作の詳細について説明する。
【００４３】
図７は、本発明に係るテストシナリオ雛形情報の生成の動作の一例を示すフローチャートである。まず、テストシナリオ雛形情報生成部２は、画面遷移図における全ての遷移を最低１回辿るように画面遷移の系列群を探索することにより、テストシナリオ雛形情報を生成し、これを第１テストシナリオ雛形情報としてテストシナリオ雛形情報一覧に記録する（Ｓ５１）。上述したように、全ての遷移を最低１回辿るように画面遷移の系列群を探索することは、従来の技術（例えば、ボーリス・バイザー著，小野間彰，山浦恒央訳．ソフトウェアテスト技法．日経ＢＰ出版センター，１９９４，ｐ．６３−６４．）を用いて実現することができる。
【００４４】
図８は、本実施の形態に係るテストシナリオ雛形情報の一例を示すドキュメントである。ここでは、第１テストシナリオ雛形情報としてＴＣ−１−１，ＴＣ−３−１，ＴＣ−７−１が生成される。他のテストシナリオ雛形情報は、後述の処理で生成される。
【００４５】
テストシナリオ雛形情報とテストシナリオには、項目として、テストケースＩＤ、テスト項目番号、遷移元画面、遷移先画面、操作（ボタン名）、テスト観点が存在する。更に、第１テストシナリオ雛形情報は、上述したテストシナリオの項目のうち、テストケースＩＤ、テスト項目番号、遷移元画面、遷移先画面、操作（ボタン名）の値が設定されたものである。
【００４６】
ここで、テストケースＩＤとは、１回のテストシナリオを表すテストケースの識別子である。テスト項目とは、テストシナリオのうち１つの画面遷移に対応する部分である。テスト項目番号とは、テストシナリオ中の各画面遷移に対して順番に付けられた番号である。操作（ボタン名）とは、遷移元画面において遷移の契機となったボタンの名称である。また、ｉｎｉｔｉａｌは開始画面を表し、ｆｉｎａｌは終了画面を表す。
【００４７】
上述したように、ＴＣ−１−１，ＴＣ−３−１，ＴＣ−７−１は、全ての画面遷移を少なくとも１回辿るように生成されている。また、第１テストシナリオ雛形情報において、テスト観点の適用はなく、テスト観点の欄は空欄になっているが、入力データの場合は全て正常値とし、結果項目の件数の場合は一般的な値、例えば１件に設定される。
【００４８】
また、画面遷移図中に条件分岐がある場合、分岐する各遷移に優先順位を設定し、テストシナリオ雛形情報生成部２は、優先順位に従って画面遷移を限定した第１テストシナリオ雛形情報を作成してもよい。例えば、ページを前後に移動させることを表す画面遷移図、検索条件を設定するためのサブ画面に移るためのボタンが押下され、検索条件を設定してから検索実行ボタンが押されることを表す画面遷移図、等に有効である。図９は、遷移の優先順位の設定が有効な画面遷移図の一例を示すフローグラフである。この例は、ページを前後に移動させる場合であり、「次ページ」の優先順位を「前ページ」よりも高く設定することにより、「次ページ」ボタンが１度も押下されていない状態で「前ページ」ボタンを押下するような、業務上意味のないテストシナリオ雛形情報の生成を防ぐことができる。
【００４９】
次に、テストシナリオ雛形情報生成部２は、生成済みの第１テストシナリオ雛形情報を画面遷移のループに対応させたテストシナリオ雛形情報を生成し、第２テストシナリオ雛形情報としてテストシナリオ雛形情報一覧に追加する（Ｓ５２）。ここで、テストシナリオ雛形情報生成部２は、予め画面遷移のループを何回行うか等の設定を用意し、この設定に基づいて生成済みの第１テストシナリオ雛形情報にループを行う遷移を追加することにより、第２テストシナリオ雛形情報を生成する。このループを行う遷移の追加は、従来の技術を用いて実現することができる。
【００５０】
図８のテストシナリオ雛形情報のうち、ここでは、第２テストシナリオ雛形情報としてＴＣ−９−１，ＴＣ−１０−１が生成される。ＴＣ−９−１は、第１テストシナリオ雛形情報ＴＣ−３−１にループを追加して生成される。同様に、ＴＣ−１０−１は、第１テストシナリオ雛形情報ＴＣ−７−１にループを追加して生成される。ＴＣ−９−１，ＴＣ−１０−１は、結果画面とエラー画面をそれぞれ１回ずつ、順序を変えて辿るように生成されている。また、第１テストシナリオ雛形情報と同様、第２テストシナリオ雛形情報において、テスト観点の適用はなく、空欄になっているが、入力データは全て正常値であり、結果項目は一般的な値、例えば１件に設定される。
【００５１】
次に、テストシナリオ雛形情報生成部２は、テスト観点の適用の可否を検出しやすい単位（Ｆｒａｇｍｅｎｔ）に画面遷移図を分割し、テストシナリオ雛形情報毎に存在するＦｒａｇｍｅｎｔをテストシナリオ雛形情報表として記録する（Ｓ５３）。検出しやすい単位とは、例えば、ユーザが操作する単位である。上述した図３の画面遷移図は、以下の６個のＦｒａｇｍｅｎｔに分割される。
【００５２】
Ｆｒａｇｍｅｎｔ１．開始→検索画面
Ｆｒａｇｍｅｎｔ２．検索画面→終了
Ｆｒａｇｍｅｎｔ３．検索画面→結果画面
Ｆｒａｇｍｅｎｔ４．検索画面→エラー画面
Ｆｒａｇｍｅｎｔ５．結果画面→検索画面
Ｆｒａｇｍｅｎｔ６．エラー画面→検索画面
【００５３】
図１０は、本実施の形態に係るテストシナリオ雛形情報表の一例を示す表である。この図は、上述した第１テストシナリオ雛形情報と第２テストシナリオ雛形情報のそれぞれに対して、存在するＦｒａｇｍｅｎｔを「○」で表している。
【００５４】
次に、テストシナリオ雛形情報生成部２は、Ｆｒａｇｍｅｎｔ毎に、適用可能なテスト観点を列挙し、Ｆｒａｇｍｅｎｔ表として記録する（Ｓ５４）。Ｆｒａｇｍｅｎｔ表については後述する。次に、テストシナリオ雛形情報生成部２は、生成済みのテストシナリオ雛形情報にテスト観点を適用したテストシナリオ雛形情報を生成し、第３テストシナリオ雛形情報としてテストシナリオ雛形情報一覧に追加し（Ｓ５５）、このフローを終了する。
【００５５】
ここで、テスト観点の詳細について説明する。
【００５６】
図１１は、本実施の形態に係るテスト観点の一例を示す表である。これらのテスト観点は、クラスとして実装され、適用対象と内容は、クラスの中のメソッドとして実装される。
【００５７】
ここで、テスト観点１，２は、ユーザによる入力データが異常値である場合をテストするためのテスト観点である。また、テスト観点３，４，５は、テスト技術で一般的に用いられている境界値テストを行うためのテスト観点であり、条件が変化する境界値付近を重点的にテストするものである。例えば、所定の件数の結果項目が表示されるべき画面において、ある件数の結果項目が与えられると、表示されるべき結果項目は表示され、表示されるべきでない結果項目は表示されないことを確認するためのテスト観点である。
【００５８】
また、テスト観点１やテスト観点２を適用する場合のテストシナリオ雛形情報は、ユーザによる入力データとして異常値が設定されるが、適用しない場合のテストシナリオ雛形情報は、ユーザによる入力データとして全て正常値が設定される。また、テスト観点３やテスト観点４やテスト観点５を適用する場合のテストシナリオ雛形情報は、境界値付近の数の項目が与えられるが、適用しない場合のテストシナリオ雛形情報は、一般的な数の項目が与えられる。
【００５９】
例えば、ＴＣ−１−１，ＴＣ−２−１，ＴＣ−３−１，ＴＣ−４−１，ＴＣ−７−１，ＴＣ−８−１，ＴＣ−９−１，ＴＣ−１０−１のようにテスト観点３を適用しない場合、結果項目の件数を１とするケースが生成される。ここで、まず、テストシナリオ雛形情報生成部２においては、結果項目の件数を１件として生成されるが、テストデータ設定部４においては、作成者により結果項目の件数の追加や削除を行うことができる。一方、テスト観点３を適用する場合、ＴＣ−５−１のように結果項目の件数を０とするケースとＴＣ−６−１のように結果項目の件数をＮ（Ｎは十分大きい整数）とするケースが生成される。
【００６０】
また、例えば、テスト観点４を適用する場合、テストシナリオ雛形情報が多くなる。ここで、テストシナリオ雛形情報を少なくしたい場合、テスト観点４の内容を、以下のように変更しても良い。
【００６１】
多重度をＮ．．Ｍ（Ｎ，Ｍは整数、Ｎ＜Ｍ）とすると、以下の４種類を追加。
・子クラスのインスタンスが、Ｎ個の場合
・子クラスのインスタンスが、Ｎ−１個の場合
・子クラスのインスタンスが、Ｍ個の場合
・子クラスのインスタンスが、Ｍ−１個の場合
【００６２】
次に、Ｆｒａｇｍｅｎｔ表の生成（Ｓ５４）の詳細について説明する。
【００６３】
ここで、あるＦｒａｇｍｅｎｔに対して、あるテスト観点が適用可能であるか否かを判断する基準について説明する。Ｆｒａｇｍｅｎｔが適用対象の条件に合致した場合、そのＦｒａｇｍｅｎｔにテスト観点が適用可能と判断する。テスト観点１，２の適用対象である「ユーザからの入力がある画面」の場合、テストシナリオ雛形情報生成部２は、画面遷移図において遷移元画面への入力を表すオブジェクトフローが存在する場合に適用可能と判断する。例えば、Ｆｒａｇｍｅｎｔ２において、検索画面が検索条件の入力を持つことから、テスト観点１，２が適用可能と判断する。
【００６４】
また、テスト観点３の適用対象である「画面を表すクラスが集約関連の子クラスを持っている場合で、子クラスへの関連の多重度の上限が定まっていない場合」において、本実施の形態におけるテストシナリオ雛形情報生成部２は、画面項目定義において検索結果クラスから結果項目クラスへの多重度が「０．．＊」である場合に適用可能と判断する。例えば、Ｆｒａｇｍｅｎｔ３において、検索結果クラスから結果項目クラスへの多重度が「０．．＊」であることから、テスト観点３が適用可能と判断する。
【００６５】
同様に、テスト観点４の適用対象である「画面を表すクラスが集約関連の子クラスを持っている場合で、子クラスへの関連の多重度の上限と下限が定まっている場合」において、本実施の形態におけるテストシナリオ雛形情報生成部２は、画面項目定義において検索結果クラスから結果項目クラスへの多重度が「Ｎ．．Ｍ（Ｎ，Ｍは整数，Ｎ＜Ｍ）」である場合に適用可能と判断する。同様に、テスト観点５の適用対象である「画面を表すクラスが集約関連の子クラスを持っている場合で、子クラスへの関連の多重度がある数に定まっている場合」において、本実施の形態におけるテストシナリオ雛形情報生成部２は、画面項目定義において検索結果クラスから結果項目クラスへの多重度が「Ｎ（Ｎは整数）」である場合に適用可能と判断する。
【００６６】
図１２は、本実施の形態に係るＦｒａｇｍｅｎｔ表の一例を示す表である。この図は、あるＦｒａｇｍｅｎｔに対してあるテスト観点が適用可能である場合を「○」で表している。
【００６７】
次に、第３テストシナリオ雛形情報生成処理（Ｓ５５）の詳細について説明する。
【００６８】
図１３は、本発明に係る第３テストシナリオ雛形情報生成処理の動作の一例を示すフローチャートである。まず、テストシナリオ雛形情報生成部２は、テスト観点を適用していない最初のテストシナリオ雛形情報を取得し（Ｓ６１）、取得したテストシナリオ雛形情報における最初のＦｒａｇｍｅｎｔを取得する（Ｓ６２）。次に、テストシナリオ雛形情報生成部２は、テストシナリオ雛形情報表とＦｒａｇｍｅｎｔ表を検索し、処理中のＦｒａｇｍｅｎｔに適用可能なテスト観点があるか否かの判断を行う（Ｓ６３）。
【００６９】
ここで、まず、テストシナリオ雛形情報生成部２は、テストシナリオ雛形情報表を参照することにより、各テストシナリオ雛形情報にどのＦｒａｇｍｅｎｔが使われているかを検出する。次に、あるＦｒａｇｍｅｎｔが複数のテストシナリオ雛形情報で使われている場合、複数のテストシナリオ雛形情報において同じＦｒａｇｍｅｎｔに同じテスト観点が適用される可能性があり、同じテストの重複を避けるために、テストシナリオ雛形情報生成部２は、テストシナリオ雛形情報表とＦｒａｇｍｅｎｔ表を参照することにより、あるＦｒａｇｍｅｎｔに対するテスト観点について、どのテストシナリオで適用するかを決定する。また、テストシナリオ雛形情報生成部２は、上述した重複を許してテスト観点を適用しても良い。
【００７０】
適用可能なテスト観点がない場合（Ｓ６３，Ｎ）、処理Ｓ７３へ移行する。一方、適用可能なテスト観点がある場合（Ｓ６３，Ｙ）、テストシナリオ雛形情報生成部２は、適用可能なテスト観点を取得し（Ｓ７１）、取得したテスト観点を処理中のＦｒａｇｍｅｎｔに適用したテストシナリオ雛形情報を作成し（Ｓ７２）、処理Ｓ７３へ移行する。
【００７１】
処理Ｓ７３において、テストシナリオ雛形情報生成部２は、処理中のテストシナリオ雛形情報における次のＦｒａｇｍｅｎｔを取得可能であるか否かの判断を行う（Ｓ７３）。取得可能である場合（Ｓ７３，Ｙ）、テストシナリオ雛形情報生成部２は、処理中のテストシナリオ雛形情報における次のＦｒａｇｍｅｎｔを取得し（Ｓ７４）、処理Ｓ６３へ移行する。一方、取得不可能である場合（Ｓ７３，Ｎ）、テストシナリオ雛形情報生成部２は、次のテストシナリオ雛形情報を取得可能であるか否かの判断を行う（Ｓ７５）。取得可能である場合（Ｓ７５，Ｙ）、テストシナリオ雛形情報生成部２は、次のテストシナリオ雛形情報を取得し（Ｓ７６）、処理Ｓ６２へ移行する。一方、取得不可能である場合（Ｓ７５，Ｎ）、このフローを終了する。
【００７２】
図８のテストシナリオ雛形情報のうち、ここでは、第３テストシナリオ雛形情報としてＴＣ−２−１，ＴＣ−４−１，ＴＣ−５−１，ＴＣ−６−１，ＴＣ−８−１が生成される。ＴＣ−２−１は、第１テストシナリオ雛形情報ＴＣ−１−１にテスト観点１を適用して生成されたものであり、検索条件のみに異常な入力データを設定するものである。同様に、ＴＣ−４−１は、第１テストシナリオ雛形情報ＴＣ−３−１にテスト観点１を適用して生成されたものであり、検索条件のみに異常な入力データを設定するものである。また、ＴＣ−５−１は、第１テストシナリオ雛形情報ＴＣ−３−１にテスト観点３を適用して生成されたものであり、表示する結果項目を０件とするものである。同様に、ＴＣ−６−１は、第１テストシナリオ雛形情報ＴＣ−３−１にテスト観点３を適用して生成されたものであり、表示する結果項目をＮ件（Ｎが十分大きい整数）とするものである。同様に、ＴＣ−８−１は、第１テストシナリオ雛形情報ＴＣ−７−１にテスト観点１を適用して生成されたものであり、検索条件のみに異常な入力データを設定するものである。
【００７３】
なお、本実施の形態においては、１つのＦｒａｇｍｅｎｔに対してテスト観点を適用しない場合と１つのテスト観点を適用した場合のテストシナリオ雛形情報を生成したが、１つのＦｒａｇｍｅｎｔに対して組み合わせが可能なテスト観点を複数適用しても良い。ここで、同種のテスト観点１，２の組み合わせや、同種のテスト観点３，４，５の組み合わせを適用することはできないが、異種のテスト観点、例えばテスト観点１とテスト観点３を組み合わせて適用することは可能である。また、本実施の形態においては、テストシナリオ雛形情報における１つのＦｒａｇｍｅｎｔだけにテスト観点を適用しているが、テストシナリオ雛形情報における複数のＦｒａｇｍｅｎｔにテスト観点を適用しても良い。
【００７４】
次に、テストシナリオの設定（Ｓ３１）の動作の詳細について説明する。
【００７５】
図１４は、本実施の形態に係るテストシナリオ設定画面の第１の例を示す図である。この画面は、作成者が「操作（ボタン名）」の情報を入力する場合を示している。テストシナリオ設定部３は、カーソルが「操作（ボタン名）」の欄に合わせられると、画面遷移図、遷移元画面、遷移先画面の情報から「操作（ボタン名）」の候補を検出し、表示することにより、入力の支援を行う。作成者は、表示された候補の中から１つを選択し、「操作（ボタン名）」の設定を行う。
【００７６】
図１５は、本実施の形態に係るテストシナリオ設定画面の第２の例を示す図である。この画面は、作成者が「遷移先画面」の情報を入力する場合を示している。テストシナリオ設定部３は、カーソルが「遷移先画面」の欄に合わせられると、画面遷移図、遷移元画面、操作（ボタン名）の情報から「遷移先画面」の候補を検出し、表示することにより、入力の支援を行う。作成者は、表示された候補の中から１つを選択し、「遷移先画面」の設定を行う。
【００７７】
図１６は、本実施の形態に係るテストシナリオ設定画面の第３の例を示す図である。この画面は、作成者がテスト項目を追加した場合を示している。テスト項目４を追加したことにより、テスト項目４の遷移先画面とテスト項目５の遷移元画面が一致しなくなっている。この場合、テストシナリオ設定部３は、画面遷移が不正であることを警告するメッセージを表示し、作成者による修正を促す。
【００７８】
また、検索結果に対する検索項目の多重度が「０．．＊」であり、テスト観点３を適用し、検索項目をＮ個とする場合、「十分大きな値を入力してください」と表示し、作成者によるＮの値の入力を促す。
【００７９】
このように、テストシナリオ設定部３が作成者によるテストシナリオの設定を支援することにより、作成者の入力ミスを防ぐことができ、正確なテストシナリオを作成することができると共に、テストシナリオの作成の効率を大幅に向上させる。
【００８０】
次に、テストデータの設定（Ｓ３２）の動作の詳細について説明する。
【００８１】
図１７は、本実施の形態に係るテストデータ設定画面の第１の例を示す図である。「テスト観点／入力データ」は、テスト観点において入力データが正常の場合と異常の場合のどちらが指定されているかを示す。また、この画面は、作成者が画面項目「カーナビ」の値を入力する場合を示している。テストデータ設定部４は、カーソルが「カーナビ」の「値」の欄に合わせられると、画面項目定義、テスト観点から「値」の候補を検出し、入力の支援を行う。ここでは、画面項目定義により型が「ｂｏｏｌｅａｎ」であることから、値の候補として「Ｔｒｕｅ」，「Ｆａｌｓｅ」を表示し、入力の支援を行う。作成者は、表示された候補の中から１つを選択し、「値」の設定を行う。
【００８２】
また、この画面において、「定員」の「値」を入力する場合、型が「定員一覧」、入力データが正常の場合であることから、値の候補として、「２人以上」、「４人以上」等が表示される。また、「サイズ」の「値」を入力する場合、型が「サイズ一覧」、入力データが異常の場合であることから、値の候補として、「気にしない」、「軽自動車」等以外の入力を行うように表示される。
【００８３】
図１８は、本実施の形態に係るテストデータ設定画面の第２の例を示す図である。この画面は、作成者が検索項目の数を変更する場合を示している。ここで、例えば、検索結果に対する検索項目の多重度が「０．．＊」である場合、検索項目の追加や削除は自由に行うことができ、テストデータ設定部４は、検索項目の追加と検索項目の削除に関する指示の選択肢を表示し、ユーザに選択させる。また、例えば、検索結果に対する検索項目の多重度が固定である場合、テストデータ設定部４は指定された数の検索項目を表示し、ユーザによる検索項目の追加や削除を行うことはできない。また、検索結果に対する検索項目の多重度が上限や下限を持つ場合、テストデータ設定部４は上限や下限に従ってユーザによる検索項目の追加や削除を制限する。
【００８４】
なお、本実施の形態においては、テストシナリオの設定において、テストシナリオ設定部３やテストデータ設定部４が表示した適切な候補の中から作成者が選択して入力する、または作成者が不正な入力を行った場合にテストシナリオ設定部３やテストデータ設定部４が警告を表示するとしたが、テストシナリオやテストデータの保存時において、テストシナリオ設定部３やテストデータ設定部４が入力の妥当性を検証し、不正な入力があれば警告を表示するようにしても良い。
【００８５】
また、本実施の形態においては、テストシナリオ設定部３が作成者の入力に基づいてテストシナリオを設定するとしたが、予め用意された推奨値や所定の範囲のランダムな値等、テストシナリオ設定部３が決定した値をテストシナリオに設定しても良い。同様に、本実施の形態においては、テストデータ設定部４が作成者の入力に基づいてテストデータを設定するとしたが、予め用意された推奨値や所定の範囲のランダムな値等、テストデータ設定部４が決定した値をテストデータに設定しても良い。
【００８６】
また、本実施の形態においては、既存のテストシナリオやテストデータがある場合、テストシナリオ雛形情報選択部５がテストシナリオ雛形情報の選択を行うとしたが、テストシナリオ雛形情報の生成を１回だけしか行わない場合等は、テストシナリオ雛形情報選択部５を省いても良い。
【００８７】
更に、テストシナリオ作成装置を構成するコンピュータにおいて上述した各ステップを実行させるプログラムを、テストシナリオ作成プログラムとして提供することができる。上述したプログラムは、コンピュータにより読取り可能な記録媒体に記憶させることによって、テストシナリオ作成装置を構成するコンピュータに実行させることが可能となる。ここで、上記コンピュータにより読取り可能な記録媒体としては、ＲＯＭやＲＡＭ等のコンピュータに内部実装される内部記憶装置、ＣＤ−ＲＯＭやフレキシブルディスク、ＤＶＤディスク、光磁気ディスク、ＩＣカード等の可搬型記憶媒体や、コンピュータプログラムを保持するデータベース、或いは、他のコンピュータ並びにそのデータベースや、更に回線上の伝送媒体をも含むものである。
【００８８】
なお、設計情報取得ステップと設計情報再取得ステップは、実施の形態における処理Ｓ１１に対応する。また、テストシナリオ雛形情報生成ステップは、実施の形態における処理Ｓ１２に対応する。また、テストシナリオ設定ステップは、実施の形態における処理Ｓ３１に対応する。また、テストデータ設定ステップは、実施の形態における処理Ｓ３２に対応する。また、テストシナリオ雛形情報再生成ステップは、実施の形態における処理Ｓ１２，Ｓ２１，Ｓ２２に対応する。
【００８９】
（付記１）  画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法をコンピュータに実行させるテストシナリオ作成プログラムであって、
前記アプリケーションの設計情報を取得する設計情報取得ステップと、
前記設計情報取得ステップにより取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップと、
前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップと、
をコンピュータに実行させるテストシナリオ作成プログラム。
（付記２）  付記１に記載のテストシナリオ作成プログラムにおいて、
更に、前記テストシナリオ設定ステップの後に、前記設計情報取得ステップにより取得された設計情報と前記テストシナリオ設定ステップにより設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定ステップをコンピュータに実行させることを特徴とするテストシナリオ作成プログラム。
（付記３）  付記２に記載のテストシナリオ作成プログラムにおいて、
更に、前記テストデータ設定ステップの後に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得する設計情報再取得ステップと、
前記設計情報再取得ステップの後に、前記設計情報再取得ステップにより再取得された設計情報と前記生成ルールに基づいて、テストシナリオ雛形情報の再生成を行い、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報再生成ステップとをコンピュータに実行させることを特徴とするテストシナリオ作成プログラム。
（付記４）  付記１乃至付記３のいずれかに記載のテストシナリオ作成プログラムにおいて、
前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするテストシナリオ作成プログラム。
（付記５）  付記１乃至付記４のいずれかに記載のテストシナリオ作成プログラムにおいて、
前記設計情報は、前記アプリケーションの画面の遷移を表す画面遷移図と前記画面内の構成要素の定義を表す画面項目定義を含むことを特徴とするテストシナリオ作成プログラム。
（付記６）  付記５に記載のテストシナリオ作成プログラムにおいて、
前記テストシナリオ雛形情報生成ステップは、全ての画面遷移を少なくとも１回使用するようにテストシナリオ雛形情報を生成し、更に、所定の画面遷移のループを行うテストシナリオ雛形情報を生成することを特徴とするテストシナリオ作成プログラム。
（付記７）  付記１乃至付記６のいずれかに記載のテストシナリオ作成プログラムにおいて、
前記テストシナリオ設定ステップは、作成者が前記テストシナリオ雛形情報に対する設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするテストシナリオ作成プログラム。
（付記８）  付記２乃至付記７のいずれかに記載のテストシナリオ作成プログラムにおいて、
前記テストデータ設定ステップは、作成者が前記テストデータの設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするテストシナリオ作成プログラム。
（付記９）  画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成装置であって、
前記アプリケーションの設計情報を取得する設計情報取得部と、
前記設計情報取得部により取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成部と、
前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定部と、
を備えてなるテストシナリオ作成装置。
（付記１０）  付記８に記載のテストシナリオ作成装置において、
更に、前記設計情報取得部により取得された設計情報と前記テストシナリオ設定部により設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定部を備えることを特徴とするテストシナリオ作成装置。
（付記１１）  付記９に記載のテストシナリオ作成装置において、
前記設計情報取得部は更に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得し、
前記テストシナリオ雛形情報生成部は更に、前記設計情報取得部により再取得された設計情報に基づいて、テストシナリオ雛形情報の再生成を行い、
更に、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報選択部を備えることを特徴とするテストシナリオ作成装置。
（付記１２）  付記９乃至付記１１のいずれかに記載のテストシナリオ作成装置において、
前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするテストシナリオ作成装置。
（付記１３）  付記９乃至付記１２のいずれかに記載のテストシナリオ作成装置において、
前記設計情報は、前記アプリケーションの画面の遷移を表す画面遷移図と前記画面内の構成要素の定義を表す画面項目定義を含むことを特徴とするテストシナリオ作成装置。
（付記１４）  付記１３に記載のテストシナリオ作成装置において、
前記テストシナリオ雛形情報生成部は、全ての画面遷移を少なくとも１回使用するようにテストシナリオ雛形情報を生成し、更に、所定の画面遷移のループを行うテストシナリオ雛形情報を生成することを特徴とするテストシナリオ作成装置。
（付記１５）  付記９乃至付記１４のいずれかに記載のテストシナリオ作成装置において、
前記テストシナリオ設定部は、作成者が前記テストシナリオ雛形情報に対する設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするテストシナリオ作成装置。
（付記１６）  付記１０乃至付記１５のいずれかに記載のテストシナリオ作成装置において、
前記テストデータ設定部は、作成者が前記テストデータの設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするテストシナリオ作成装置。
（付記１７）  画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法であって、
前記アプリケーションの設計情報を取得する設計情報取得ステップと、
前記設計情報取得ステップにより取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップと、
前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップと、
を実行するテストシナリオ作成方法。
（付記１８）  付記１７に記載のテストシナリオ作成方法において、
更に、前記テストシナリオ設定ステップの後に、前記設計情報取得ステップにより取得された設計情報と前記テストシナリオ設定ステップにより設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定ステップを実行することを特徴とするテストシナリオ作成方法。
（付記１９）  付記１８に記載のテストシナリオ作成方法において、
更に、前記テストデータ設定ステップの後に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得する設計情報再取得ステップと、
前記設計情報再取得ステップの後に、前記設計情報再取得ステップにより再取得された設計情報と前記生成ルールに基づいて、テストシナリオ雛形情報の再生成を行い、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報再生成ステップとを実行することを特徴とするテストシナリオ作成方法。
（付記２０）  付記１７乃至付記１９のいずれかに記載のテストシナリオ作成方法において、
前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするテストシナリオ作成方法。
【図面の簡単な説明】
【００９０】
【図１】本発明に係るテストシナリオ作成装置の構成の一例を示すブロック図である。
【図２】本発明に係るテストシナリオ作成装置の動作の一例を示すフローチャートである。
【図３】本実施の形態に係る画面遷移図の一例を示すフローグラフである。
【図４】本実施の形態に係る画面項目定義の一例を示すクラス図である。
【図５】本実施の形態に係るＷｅｂアプリケーションの検索画面の一例を示す図である。
【図６】本実施の形態に係るＷｅｂアプリケーションの結果画面の一例を示す図である。
【図７】本発明に係るテストシナリオ雛形情報の生成の動作の一例を示すフローチャートである。
【図８】本実施の形態に係るテストシナリオ雛形情報の一例を示すドキュメントである。
【図９】遷移の優先順位の設定が有効な画面遷移図の一例を示すフローグラフである。
【図１０】本実施の形態に係るテストシナリオ雛形情報表の一例を示す表である。
【図１１】本実施の形態に係るテスト観点の一例を示す表である。
【図１２】本実施の形態に係るＦｒａｇｍｅｎｔ表の一例を示す表である。
【図１３】本発明に係る第３テストシナリオ雛形情報生成処理の動作の一例を示すフローチャートである。
【図１４】本実施の形態に係るテストシナリオ設定画面の第１の例を示す図である。
【図１５】本実施の形態に係るテストシナリオ設定画面の第２の例を示す図である。
【図１６】本実施の形態に係るテストシナリオ設定画面の第３の例を示す図である。
【図１７】本実施の形態に係るテストデータ設定画面の第１の例を示す図である。
【図１８】本実施の形態に係るテストデータ設定画面の第２の例を示す図である。
【符号の説明】
【００９１】
１  設計情報取得部、２  テストシナリオ雛形情報生成部、３  テストシナリオ設定部、４  テストデータ設定部、５  テストシナリオ雛形情報選択部。
【図１】
2007052703.tif 000003
【図２】
2007052703.tif 000004
【図３】
2007052703.tif 000005
【図４】
2007052703.tif 000006
【図５】
2007052703.tif 000007
【図６】
2007052703.tif 000008
【図７】
2007052703.tif 000009
【図８】
2007052703.tif 000010
【図９】
2007052703.tif 000011
【図１０】
2007052703.tif 000012
【図１１】
2007052703.tif 000013
【図１２】
2007052703.tif 000014
【図１３】
2007052703.tif 000015
【図１４】
2007052703.tif 000016
【図１５】
2007052703.tif 000017
【図１６】
2007052703.tif 000018
【図１７】
2007052703.tif 000019
【図１８】
2007052703.tif 000020