JP2007052703A - テストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法 - Google Patents

テストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法 Download PDF

Info

Publication number
JP2007052703A
JP2007052703A JP2005238500A JP2005238500A JP2007052703A JP 2007052703 A JP2007052703 A JP 2007052703A JP 2005238500 A JP2005238500 A JP 2005238500A JP 2005238500 A JP2005238500 A JP 2005238500A JP 2007052703 A JP2007052703 A JP 2007052703A
Authority
JP
Japan
Prior art keywords
test scenario
test
screen
design information
template information
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.)
Withdrawn
Application number
JP2005238500A
Other languages
English (en)
Inventor
Kyoko Ohashi
恭子 大橋
Tadahiro Uehara
忠弘 上原
Asako Katayama
朝子 片山
Rieko Yamamoto
里枝子 山本
Toshihiro Odaka
敏裕 小高
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005238500A priority Critical patent/JP2007052703A/ja
Priority to US11/289,412 priority patent/US20070043980A1/en
Publication of JP2007052703A publication Critical patent/JP2007052703A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases

Abstract

【課題】 画面遷移図のパスを網羅するだけでなく、様々な観点を持つテストシナリオを作成するテストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法を提供する。
【解決手段】 画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法をコンピュータに実行させるテストシナリオ作成プログラムであって、アプリケーションの設計情報を取得する設計情報取得ステップS11と、設計情報と予め設定された生成ルールとに基づいて、テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップS12と、設計情報に基づいてテストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップS31とをコンピュータに実行させる。
【選択図】 図2

Description

本発明は、画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法に関するものである。
従来、Webアプリケーションのような画面の変化を伴うアプリケーションの機能テストを行う場合、設計情報に含まれる画面遷移の情報に基づいて、アプリケーションの作成者(テストシナリオの作成者)がテストシナリオを作成することが多かった。画面遷移の情報は、ノードを画面に対応させたフローグラフで表され、一般に画面遷移図と呼ばれている。
なお、本発明の関連ある従来技術として、例えば、下記に示す特許文献1が知られている。このソフトウェアのシステムテスト支援装置およびこれに用いるテストシナリオ生成装置は、GUIベースのソフトウェアのシステムテストを簡単に行えるようにするためのものであり、ソフトウェアのGUI部が持つ全ての状態と全ての状態遷移を網羅するために必要なテストシナリオを生成するものである。
特開平9−223040号公報
特許文献1の技術は、全ての画面遷移を網羅するようにテストシナリオを作成している。しかしながら、テストシナリオを作成する際に、単に画面遷移を網羅するだけでは、作成者が必要とするテストシナリオを得られるとは限らない。つまり、同じパス(開始から終了までの遷移の順序列)であっても、画面に入力するデータや画面に表示される表示項目の構造の違いによって、異なるテストシナリオが必要となる。また、どのような観点でテストシナリオを作成するかは、作成者のスキルに依存するため、テストの品質にばらつきが出るという問題がある。例えば、テストシナリオやテストシナリオの実行に必要な入力データや期待値であるテストデータの数が膨大になり、テストシナリオやテストデータの作成や実施が不可能となる、あるいは、業務において意味のないテストシナリオができてしまう、等の問題が生じる。
また、テストシナリオの編集において、作成者は、正しい画面遷移であるか、画面を遷移するために押下するボタンは正しいか等、テストシナリオの妥当性を確認する必要があり、この作業は作成者への負担が大きいという問題があると共に、入力ミスが生じるという問題があった。
また、テストシナリオの編集において、作成者は、テストシナリオで用いられるテストデータを作成することも必要である。これらテストデータは、設計情報に含まれる画面項目定義に適合し、テストシナリオに適切なデータを作成する必要がある。ここで、画面項目定義とは、画面内の構成要素を定義したものである。そのため、作成者は画面項目定義やテストシナリオ等の複数のドキュメントを参照しながら作業を行う必要がある、あるいは、作成者は遷移の度に遷移元画面と遷移先画面に対してデータを作成する必要がある、あるいは、データの作成量が多く、作成者への負担が大きい、等の問題がある。
また、設計情報である画面遷移図や画面項目定義は、テストシナリオ作成開始後も変更される可能性がある。変更後の設計情報に基づいて自動的にテストシナリオを生成すると、再びテストシナリオやテストデータの編集の作業が必要となる、あるいは、設計情報の部分的な変更であっても全てのテストシナリオを調べる必要がある、等の問題がある。
本発明は上述した問題点を解決するためになされたものであり、画面遷移図のパスを網羅するだけでなく、様々な観点を持つテストシナリオを作成するテストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法を提供することを目的とする。
上述した課題を解決するため、本発明は、画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法をコンピュータに実行させるテストシナリオ作成プログラムであって、前記アプリケーションの設計情報を取得する設計情報取得ステップと、前記設計情報取得ステップにより取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップと、前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップとをコンピュータに実行させるものである。
また、本発明に係るテストシナリオ作成プログラムにおいて、更に、前記テストシナリオ設定ステップの後に、前記設計情報取得ステップにより取得された設計情報と前記テストシナリオ設定ステップにより設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定ステップをコンピュータに実行させることを特徴とするものである。
また、本発明に係るテストシナリオ作成プログラムにおいて、更に、前記テストデータ設定ステップの後に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得する設計情報再取得ステップと、前記設計情報再取得ステップの後に、前記設計情報再取得ステップにより再取得された設計情報と前記生成ルールに基づいて、テストシナリオ雛形情報の再生成を行い、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報再生成ステップとをコンピュータに実行させることを特徴とするものである。
また、本発明に係るテストシナリオ作成プログラムにおいて、前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするものである。
また、本発明に係るテストシナリオ作成プログラムにおいて、前記設計情報は、前記アプリケーションの画面の遷移を表す画面遷移図と前記画面内の構成要素の定義を表す画面項目定義を含むことを特徴とするものである。
また、本発明に係るテストシナリオ作成プログラムにおいて、前記テストシナリオ雛形情報生成ステップは、全ての画面遷移を少なくとも1回使用するようにテストシナリオ雛形情報を生成し、更に、所定の画面遷移のループを行うテストシナリオ雛形情報を生成することを特徴とするものである。
また、本発明に係るテストシナリオ作成プログラムにおいて、前記テストシナリオ設定ステップは、作成者が前記テストシナリオ雛形情報に対する設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするものである。
また、本発明に係るテストシナリオ作成プログラムにおいて、前記テストデータ設定ステップは、作成者が前記テストデータの設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするものである。
また、本発明は、画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成装置であって、前記アプリケーションの設計情報を取得する設計情報取得部と、前記設計情報取得部により取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成部と、前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定部とを備えたものである。
また、本発明に係るテストシナリオ作成装置において、更に、前記設計情報取得部により取得された設計情報と前記テストシナリオ設定部により設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定部を備えることを特徴とするものである。
また、本発明に係るテストシナリオ作成装置において、前記設計情報取得部は更に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得し、前記テストシナリオ雛形情報生成部は更に、前記設計情報取得部により再取得された設計情報に基づいて、テストシナリオ雛形情報の再生成を行い、更に、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報選択部を備えることを特徴とするものである。
また、本発明に係るテストシナリオ作成装置において、前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするものである。
また、本発明に係るテストシナリオ作成装置において、前記設計情報は、前記アプリケーションの画面の遷移を表す画面遷移図と前記画面内の構成要素の定義を表す画面項目定義を含むことを特徴とするものである。
また、本発明に係るテストシナリオ作成装置において、前記テストシナリオ雛形情報生成部は、全ての画面遷移を少なくとも1回使用するようにテストシナリオ雛形情報を生成し、更に、所定の画面遷移のループを行うテストシナリオ雛形情報を生成することを特徴とするものである。
また、本発明に係るテストシナリオ作成装置において、前記テストシナリオ設定部は、作成者が前記テストシナリオ雛形情報に対する設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするものである。
また、本発明に係るテストシナリオ作成装置において、前記テストデータ設定部は、作成者が前記テストデータの設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするものである。
また、本発明は、画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法であって、前記アプリケーションの設計情報を取得する設計情報取得ステップと、前記設計情報取得ステップにより取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップと、前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップとを実行するものである。
本発明によれば、設計情報とテスト観点に基づいてテストシナリオの雛形を生成することにより、作成者の負担が大幅に軽減されると共に、正確にテストシナリオを作成することができる。
以下、本発明の実施の形態について図面を参照しつつ説明する。
本発明に係るテストシナリオ作成装置は、画面の変化を伴うアプリケーションの検証を行うためのテストシナリオとテストデータを作成するものである。本実施の形態においては、テストシナリオ作成装置の対象となるアプリケーションの具体例として、レンタカーの検索を行うWebアプリケーションを用いる。
まず、本発明に係るテストシナリオ作成装置の構成について説明する。
図1は、本発明に係るテストシナリオ作成装置の構成の一例を示すブロック図である。このテストシナリオ作成装置は、設計情報取得部1、テストシナリオ雛形情報生成部2、テストシナリオ設定部3、テストデータ設定部4、テストシナリオ雛形情報選択部5で構成される。
次に、本発明に係るテストシナリオ作成装置の動作の概要について説明する。
図2は、本発明に係るテストシナリオ作成装置の動作の一例を示すフローチャートである。まず、設計情報取得部1は、テストシナリオを作成するアプリケーションの設計情報を取得する(S11)。設計情報は、画面遷移図や画面項目定義を含む。
図3は、本実施の形態に係る画面遷移図の一例を示すフローグラフである。画面遷移図には、画面と画面に対して入出力されるデータが表される。このWebアプリケーションは、予め画面項目定義として記憶された検索条件の選択肢を表示すると共に、ユーザから入力された検索条件を取得する検索画面、検索結果を表示する結果画面、エラーを表示するエラー画面を持つ。このWebアプリケーションを開始すると、まず、検索画面が表示され、検索ボタンにより検索が行われる。検索の結果が正常であれば、結果画面が表示され、戻るボタンにより検索画面に戻る。一方、検索の結果が異常であれば、エラー画面が表示され、戻るボタンにより検索画面に戻る。図4は、本実施の形態に係る画面項目定義の一例を示すクラス図である。親クラスとしてユーザにより入力される基本の条件を表す検索条件を持ち、集約関連の子クラスとして検索条件に加わる詳細な条件である、定員、サイズ、積載量を持つ。また、親クラスとして結果画面に検索の結果を1件毎に表示する欄である検索結果を持ち、集約関連の子クラスとして、検索結果の内容を表す詳細な項目である、結果項目を持つ。
図5は、本実施の形態に係るWebアプリケーションの検索画面の一例を示す図である。この検索画面は、検索条件、定員、サイズ、積載量等の選択肢、検索ボタン、戻るボタン、終了ボタンを備え、ユーザからの入力を受け付ける。図6は、本実施の形態に係るWebアプリケーションの結果画面の一例を示す図である。この結果画面は、戻るボタンを備え、所定の表示件数分の結果項目が表示される。
次に、テストシナリオ雛形情報生成部2は、設計情報取得部1により取得された設計情報と予め設定されたテスト観点に基づいてテストシナリオ雛形情報の生成を行う(S12)。テストシナリオ雛形情報とは、テストシナリオの雛形として、テストシナリオの情報の一部が設定された情報であり、残りの情報を設定することによりテストシナリオとなるものである。また、テスト観点とは、ある画面遷移を持つテストシナリオ雛形情報を元にして、同じ画面遷移を持つ異なるテストシナリオ雛形情報を生成する場合の生成ルールを表すものであり、最初に生成されたテストシナリオ雛形情報から適用対象を検出するための条件と、適用対象に対する処理の内容が示される。
次に、テストシナリオ雛形情報選択部5は、既存のテストシナリオやテストデータがあるか否かの判断を行う(S21)。既存のテストシナリオやテストデータがない場合(S21,N)、処理S31へ移行する。一方、既存のテストシナリオやテストデータがある場合(S21,Y)、テストシナリオ雛形情報選択部5は、使用するテストシナリオ雛形情報の選択を行う(S22)。
ここで、まず、テストシナリオ雛形情報選択部5は、既存のテストシナリオ雛形情報と新しく生成されたテストシナリオ雛形情報の比較を行い、同一のテストシナリオ雛形情報であるか否かの判断を行う。ここで、テストシナリオ雛形情報選択部5は、既存のテストシナリオ雛形情報と新しく生成されたテストシナリオ雛形情報において、全ての遷移元画面、遷移先画面、操作、適用されたテスト観点が同一である場合、既存のテストシナリオ雛形情報と新しく生成されたテストシナリオ雛形情報が同一であると判断する。更に、同一である場合、テストシナリオ雛形情報選択部5は、新しく生成されたテストシナリオ雛形情報を破棄し、既存のテストシナリオ雛形情報とそれを元に設定されたテストシナリオとテストデータを保持する。一方、同一でない場合、新しく生成されたテストシナリオ雛形情報を既存のテストシナリオ雛形情報に追加する。
次に、テストシナリオ設定部3は、テストシナリオ雛形情報における未設定の情報を設定することにより、テストシナリオの設定を行う(S31)。ここで、テストシナリオ設定部3は、テストシナリオ設定画面を表示し、作成者による未設定の情報の入力を受け付けると共に、作成者によるテストシナリオの入力の支援を行う。
次に、テストデータ設定部4は、テストシナリオで用いるテストデータの設定を行う(S32)。ここで、テストデータ設定部4は、テストシナリオ設定部3と同様、テストデータ設定画面を表示し、作成者によるテストデータの入力を受け付けると共に、作成者によるテストデータの入力の支援を行う。
次に、テストシナリオ作成装置は、設定されたテストシナリオとテストデータをドキュメントとして出力し(S34)、このフローを終了する。その後、設計情報が変更された場合、このフローを再度実行する。
以上が、本発明に係るテストシナリオ作成装置の動作の概要である。以下、各動作の詳細について説明する。
まず、テストシナリオ雛形情報の生成(S12)の動作の詳細について説明する。
図7は、本発明に係るテストシナリオ雛形情報の生成の動作の一例を示すフローチャートである。まず、テストシナリオ雛形情報生成部2は、画面遷移図における全ての遷移を最低1回辿るように画面遷移の系列群を探索することにより、テストシナリオ雛形情報を生成し、これを第1テストシナリオ雛形情報としてテストシナリオ雛形情報一覧に記録する(S51)。上述したように、全ての遷移を最低1回辿るように画面遷移の系列群を探索することは、従来の技術(例えば、ボーリス・バイザー著,小野間彰,山浦恒央訳.ソフトウェアテスト技法.日経BP出版センター,1994,p.63−64.)を用いて実現することができる。
図8は、本実施の形態に係るテストシナリオ雛形情報の一例を示すドキュメントである。ここでは、第1テストシナリオ雛形情報としてTC−1−1,TC−3−1,TC−7−1が生成される。他のテストシナリオ雛形情報は、後述の処理で生成される。
テストシナリオ雛形情報とテストシナリオには、項目として、テストケースID、テスト項目番号、遷移元画面、遷移先画面、操作(ボタン名)、テスト観点が存在する。更に、第1テストシナリオ雛形情報は、上述したテストシナリオの項目のうち、テストケースID、テスト項目番号、遷移元画面、遷移先画面、操作(ボタン名)の値が設定されたものである。
ここで、テストケースIDとは、1回のテストシナリオを表すテストケースの識別子である。テスト項目とは、テストシナリオのうち1つの画面遷移に対応する部分である。テスト項目番号とは、テストシナリオ中の各画面遷移に対して順番に付けられた番号である。操作(ボタン名)とは、遷移元画面において遷移の契機となったボタンの名称である。また、initialは開始画面を表し、finalは終了画面を表す。
上述したように、TC−1−1,TC−3−1,TC−7−1は、全ての画面遷移を少なくとも1回辿るように生成されている。また、第1テストシナリオ雛形情報において、テスト観点の適用はなく、テスト観点の欄は空欄になっているが、入力データの場合は全て正常値とし、結果項目の件数の場合は一般的な値、例えば1件に設定される。
また、画面遷移図中に条件分岐がある場合、分岐する各遷移に優先順位を設定し、テストシナリオ雛形情報生成部2は、優先順位に従って画面遷移を限定した第1テストシナリオ雛形情報を作成してもよい。例えば、ページを前後に移動させることを表す画面遷移図、検索条件を設定するためのサブ画面に移るためのボタンが押下され、検索条件を設定してから検索実行ボタンが押されることを表す画面遷移図、等に有効である。図9は、遷移の優先順位の設定が有効な画面遷移図の一例を示すフローグラフである。この例は、ページを前後に移動させる場合であり、「次ページ」の優先順位を「前ページ」よりも高く設定することにより、「次ページ」ボタンが1度も押下されていない状態で「前ページ」ボタンを押下するような、業務上意味のないテストシナリオ雛形情報の生成を防ぐことができる。
次に、テストシナリオ雛形情報生成部2は、生成済みの第1テストシナリオ雛形情報を画面遷移のループに対応させたテストシナリオ雛形情報を生成し、第2テストシナリオ雛形情報としてテストシナリオ雛形情報一覧に追加する(S52)。ここで、テストシナリオ雛形情報生成部2は、予め画面遷移のループを何回行うか等の設定を用意し、この設定に基づいて生成済みの第1テストシナリオ雛形情報にループを行う遷移を追加することにより、第2テストシナリオ雛形情報を生成する。このループを行う遷移の追加は、従来の技術を用いて実現することができる。
図8のテストシナリオ雛形情報のうち、ここでは、第2テストシナリオ雛形情報としてTC−9−1,TC−10−1が生成される。TC−9−1は、第1テストシナリオ雛形情報TC−3−1にループを追加して生成される。同様に、TC−10−1は、第1テストシナリオ雛形情報TC−7−1にループを追加して生成される。TC−9−1,TC−10−1は、結果画面とエラー画面をそれぞれ1回ずつ、順序を変えて辿るように生成されている。また、第1テストシナリオ雛形情報と同様、第2テストシナリオ雛形情報において、テスト観点の適用はなく、空欄になっているが、入力データは全て正常値であり、結果項目は一般的な値、例えば1件に設定される。
次に、テストシナリオ雛形情報生成部2は、テスト観点の適用の可否を検出しやすい単位(Fragment)に画面遷移図を分割し、テストシナリオ雛形情報毎に存在するFragmentをテストシナリオ雛形情報表として記録する(S53)。検出しやすい単位とは、例えば、ユーザが操作する単位である。上述した図3の画面遷移図は、以下の6個のFragmentに分割される。
Fragment1.開始→検索画面
Fragment2.検索画面→終了
Fragment3.検索画面→結果画面
Fragment4.検索画面→エラー画面
Fragment5.結果画面→検索画面
Fragment6.エラー画面→検索画面
図10は、本実施の形態に係るテストシナリオ雛形情報表の一例を示す表である。この図は、上述した第1テストシナリオ雛形情報と第2テストシナリオ雛形情報のそれぞれに対して、存在するFragmentを「○」で表している。
次に、テストシナリオ雛形情報生成部2は、Fragment毎に、適用可能なテスト観点を列挙し、Fragment表として記録する(S54)。Fragment表については後述する。次に、テストシナリオ雛形情報生成部2は、生成済みのテストシナリオ雛形情報にテスト観点を適用したテストシナリオ雛形情報を生成し、第3テストシナリオ雛形情報としてテストシナリオ雛形情報一覧に追加し(S55)、このフローを終了する。
ここで、テスト観点の詳細について説明する。
図11は、本実施の形態に係るテスト観点の一例を示す表である。これらのテスト観点は、クラスとして実装され、適用対象と内容は、クラスの中のメソッドとして実装される。
ここで、テスト観点1,2は、ユーザによる入力データが異常値である場合をテストするためのテスト観点である。また、テスト観点3,4,5は、テスト技術で一般的に用いられている境界値テストを行うためのテスト観点であり、条件が変化する境界値付近を重点的にテストするものである。例えば、所定の件数の結果項目が表示されるべき画面において、ある件数の結果項目が与えられると、表示されるべき結果項目は表示され、表示されるべきでない結果項目は表示されないことを確認するためのテスト観点である。
また、テスト観点1やテスト観点2を適用する場合のテストシナリオ雛形情報は、ユーザによる入力データとして異常値が設定されるが、適用しない場合のテストシナリオ雛形情報は、ユーザによる入力データとして全て正常値が設定される。また、テスト観点3やテスト観点4やテスト観点5を適用する場合のテストシナリオ雛形情報は、境界値付近の数の項目が与えられるが、適用しない場合のテストシナリオ雛形情報は、一般的な数の項目が与えられる。
例えば、TC−1−1,TC−2−1,TC−3−1,TC−4−1,TC−7−1,TC−8−1,TC−9−1,TC−10−1のようにテスト観点3を適用しない場合、結果項目の件数を1とするケースが生成される。ここで、まず、テストシナリオ雛形情報生成部2においては、結果項目の件数を1件として生成されるが、テストデータ設定部4においては、作成者により結果項目の件数の追加や削除を行うことができる。一方、テスト観点3を適用する場合、TC−5−1のように結果項目の件数を0とするケースとTC−6−1のように結果項目の件数をN(Nは十分大きい整数)とするケースが生成される。
また、例えば、テスト観点4を適用する場合、テストシナリオ雛形情報が多くなる。ここで、テストシナリオ雛形情報を少なくしたい場合、テスト観点4の内容を、以下のように変更しても良い。
多重度をN..M(N,Mは整数、N<M)とすると、以下の4種類を追加。
・子クラスのインスタンスが、N個の場合
・子クラスのインスタンスが、N−1個の場合
・子クラスのインスタンスが、M個の場合
・子クラスのインスタンスが、M−1個の場合
次に、Fragment表の生成(S54)の詳細について説明する。
ここで、あるFragmentに対して、あるテスト観点が適用可能であるか否かを判断する基準について説明する。Fragmentが適用対象の条件に合致した場合、そのFragmentにテスト観点が適用可能と判断する。テスト観点1,2の適用対象である「ユーザからの入力がある画面」の場合、テストシナリオ雛形情報生成部2は、画面遷移図において遷移元画面への入力を表すオブジェクトフローが存在する場合に適用可能と判断する。例えば、Fragment2において、検索画面が検索条件の入力を持つことから、テスト観点1,2が適用可能と判断する。
また、テスト観点3の適用対象である「画面を表すクラスが集約関連の子クラスを持っている場合で、子クラスへの関連の多重度の上限が定まっていない場合」において、本実施の形態におけるテストシナリオ雛形情報生成部2は、画面項目定義において検索結果クラスから結果項目クラスへの多重度が「0..*」である場合に適用可能と判断する。例えば、Fragment3において、検索結果クラスから結果項目クラスへの多重度が「0..*」であることから、テスト観点3が適用可能と判断する。
同様に、テスト観点4の適用対象である「画面を表すクラスが集約関連の子クラスを持っている場合で、子クラスへの関連の多重度の上限と下限が定まっている場合」において、本実施の形態におけるテストシナリオ雛形情報生成部2は、画面項目定義において検索結果クラスから結果項目クラスへの多重度が「N..M(N,Mは整数,N<M)」である場合に適用可能と判断する。同様に、テスト観点5の適用対象である「画面を表すクラスが集約関連の子クラスを持っている場合で、子クラスへの関連の多重度がある数に定まっている場合」において、本実施の形態におけるテストシナリオ雛形情報生成部2は、画面項目定義において検索結果クラスから結果項目クラスへの多重度が「N(Nは整数)」である場合に適用可能と判断する。
図12は、本実施の形態に係るFragment表の一例を示す表である。この図は、あるFragmentに対してあるテスト観点が適用可能である場合を「○」で表している。
次に、第3テストシナリオ雛形情報生成処理(S55)の詳細について説明する。
図13は、本発明に係る第3テストシナリオ雛形情報生成処理の動作の一例を示すフローチャートである。まず、テストシナリオ雛形情報生成部2は、テスト観点を適用していない最初のテストシナリオ雛形情報を取得し(S61)、取得したテストシナリオ雛形情報における最初のFragmentを取得する(S62)。次に、テストシナリオ雛形情報生成部2は、テストシナリオ雛形情報表とFragment表を検索し、処理中のFragmentに適用可能なテスト観点があるか否かの判断を行う(S63)。
ここで、まず、テストシナリオ雛形情報生成部2は、テストシナリオ雛形情報表を参照することにより、各テストシナリオ雛形情報にどのFragmentが使われているかを検出する。次に、あるFragmentが複数のテストシナリオ雛形情報で使われている場合、複数のテストシナリオ雛形情報において同じFragmentに同じテスト観点が適用される可能性があり、同じテストの重複を避けるために、テストシナリオ雛形情報生成部2は、テストシナリオ雛形情報表とFragment表を参照することにより、あるFragmentに対するテスト観点について、どのテストシナリオで適用するかを決定する。また、テストシナリオ雛形情報生成部2は、上述した重複を許してテスト観点を適用しても良い。
適用可能なテスト観点がない場合(S63,N)、処理S73へ移行する。一方、適用可能なテスト観点がある場合(S63,Y)、テストシナリオ雛形情報生成部2は、適用可能なテスト観点を取得し(S71)、取得したテスト観点を処理中のFragmentに適用したテストシナリオ雛形情報を作成し(S72)、処理S73へ移行する。
処理S73において、テストシナリオ雛形情報生成部2は、処理中のテストシナリオ雛形情報における次のFragmentを取得可能であるか否かの判断を行う(S73)。取得可能である場合(S73,Y)、テストシナリオ雛形情報生成部2は、処理中のテストシナリオ雛形情報における次のFragmentを取得し(S74)、処理S63へ移行する。一方、取得不可能である場合(S73,N)、テストシナリオ雛形情報生成部2は、次のテストシナリオ雛形情報を取得可能であるか否かの判断を行う(S75)。取得可能である場合(S75,Y)、テストシナリオ雛形情報生成部2は、次のテストシナリオ雛形情報を取得し(S76)、処理S62へ移行する。一方、取得不可能である場合(S75,N)、このフローを終了する。
図8のテストシナリオ雛形情報のうち、ここでは、第3テストシナリオ雛形情報としてTC−2−1,TC−4−1,TC−5−1,TC−6−1,TC−8−1が生成される。TC−2−1は、第1テストシナリオ雛形情報TC−1−1にテスト観点1を適用して生成されたものであり、検索条件のみに異常な入力データを設定するものである。同様に、TC−4−1は、第1テストシナリオ雛形情報TC−3−1にテスト観点1を適用して生成されたものであり、検索条件のみに異常な入力データを設定するものである。また、TC−5−1は、第1テストシナリオ雛形情報TC−3−1にテスト観点3を適用して生成されたものであり、表示する結果項目を0件とするものである。同様に、TC−6−1は、第1テストシナリオ雛形情報TC−3−1にテスト観点3を適用して生成されたものであり、表示する結果項目をN件(Nが十分大きい整数)とするものである。同様に、TC−8−1は、第1テストシナリオ雛形情報TC−7−1にテスト観点1を適用して生成されたものであり、検索条件のみに異常な入力データを設定するものである。
なお、本実施の形態においては、1つのFragmentに対してテスト観点を適用しない場合と1つのテスト観点を適用した場合のテストシナリオ雛形情報を生成したが、1つのFragmentに対して組み合わせが可能なテスト観点を複数適用しても良い。ここで、同種のテスト観点1,2の組み合わせや、同種のテスト観点3,4,5の組み合わせを適用することはできないが、異種のテスト観点、例えばテスト観点1とテスト観点3を組み合わせて適用することは可能である。また、本実施の形態においては、テストシナリオ雛形情報における1つのFragmentだけにテスト観点を適用しているが、テストシナリオ雛形情報における複数のFragmentにテスト観点を適用しても良い。
次に、テストシナリオの設定(S31)の動作の詳細について説明する。
図14は、本実施の形態に係るテストシナリオ設定画面の第1の例を示す図である。この画面は、作成者が「操作(ボタン名)」の情報を入力する場合を示している。テストシナリオ設定部3は、カーソルが「操作(ボタン名)」の欄に合わせられると、画面遷移図、遷移元画面、遷移先画面の情報から「操作(ボタン名)」の候補を検出し、表示することにより、入力の支援を行う。作成者は、表示された候補の中から1つを選択し、「操作(ボタン名)」の設定を行う。
図15は、本実施の形態に係るテストシナリオ設定画面の第2の例を示す図である。この画面は、作成者が「遷移先画面」の情報を入力する場合を示している。テストシナリオ設定部3は、カーソルが「遷移先画面」の欄に合わせられると、画面遷移図、遷移元画面、操作(ボタン名)の情報から「遷移先画面」の候補を検出し、表示することにより、入力の支援を行う。作成者は、表示された候補の中から1つを選択し、「遷移先画面」の設定を行う。
図16は、本実施の形態に係るテストシナリオ設定画面の第3の例を示す図である。この画面は、作成者がテスト項目を追加した場合を示している。テスト項目4を追加したことにより、テスト項目4の遷移先画面とテスト項目5の遷移元画面が一致しなくなっている。この場合、テストシナリオ設定部3は、画面遷移が不正であることを警告するメッセージを表示し、作成者による修正を促す。
また、検索結果に対する検索項目の多重度が「0..*」であり、テスト観点3を適用し、検索項目をN個とする場合、「十分大きな値を入力してください」と表示し、作成者によるNの値の入力を促す。
このように、テストシナリオ設定部3が作成者によるテストシナリオの設定を支援することにより、作成者の入力ミスを防ぐことができ、正確なテストシナリオを作成することができると共に、テストシナリオの作成の効率を大幅に向上させる。
次に、テストデータの設定(S32)の動作の詳細について説明する。
図17は、本実施の形態に係るテストデータ設定画面の第1の例を示す図である。「テスト観点/入力データ」は、テスト観点において入力データが正常の場合と異常の場合のどちらが指定されているかを示す。また、この画面は、作成者が画面項目「カーナビ」の値を入力する場合を示している。テストデータ設定部4は、カーソルが「カーナビ」の「値」の欄に合わせられると、画面項目定義、テスト観点から「値」の候補を検出し、入力の支援を行う。ここでは、画面項目定義により型が「boolean」であることから、値の候補として「True」,「False」を表示し、入力の支援を行う。作成者は、表示された候補の中から1つを選択し、「値」の設定を行う。
また、この画面において、「定員」の「値」を入力する場合、型が「定員一覧」、入力データが正常の場合であることから、値の候補として、「2人以上」、「4人以上」等が表示される。また、「サイズ」の「値」を入力する場合、型が「サイズ一覧」、入力データが異常の場合であることから、値の候補として、「気にしない」、「軽自動車」等以外の入力を行うように表示される。
図18は、本実施の形態に係るテストデータ設定画面の第2の例を示す図である。この画面は、作成者が検索項目の数を変更する場合を示している。ここで、例えば、検索結果に対する検索項目の多重度が「0..*」である場合、検索項目の追加や削除は自由に行うことができ、テストデータ設定部4は、検索項目の追加と検索項目の削除に関する指示の選択肢を表示し、ユーザに選択させる。また、例えば、検索結果に対する検索項目の多重度が固定である場合、テストデータ設定部4は指定された数の検索項目を表示し、ユーザによる検索項目の追加や削除を行うことはできない。また、検索結果に対する検索項目の多重度が上限や下限を持つ場合、テストデータ設定部4は上限や下限に従ってユーザによる検索項目の追加や削除を制限する。
なお、本実施の形態においては、テストシナリオの設定において、テストシナリオ設定部3やテストデータ設定部4が表示した適切な候補の中から作成者が選択して入力する、または作成者が不正な入力を行った場合にテストシナリオ設定部3やテストデータ設定部4が警告を表示するとしたが、テストシナリオやテストデータの保存時において、テストシナリオ設定部3やテストデータ設定部4が入力の妥当性を検証し、不正な入力があれば警告を表示するようにしても良い。
また、本実施の形態においては、テストシナリオ設定部3が作成者の入力に基づいてテストシナリオを設定するとしたが、予め用意された推奨値や所定の範囲のランダムな値等、テストシナリオ設定部3が決定した値をテストシナリオに設定しても良い。同様に、本実施の形態においては、テストデータ設定部4が作成者の入力に基づいてテストデータを設定するとしたが、予め用意された推奨値や所定の範囲のランダムな値等、テストデータ設定部4が決定した値をテストデータに設定しても良い。
また、本実施の形態においては、既存のテストシナリオやテストデータがある場合、テストシナリオ雛形情報選択部5がテストシナリオ雛形情報の選択を行うとしたが、テストシナリオ雛形情報の生成を1回だけしか行わない場合等は、テストシナリオ雛形情報選択部5を省いても良い。
更に、テストシナリオ作成装置を構成するコンピュータにおいて上述した各ステップを実行させるプログラムを、テストシナリオ作成プログラムとして提供することができる。上述したプログラムは、コンピュータにより読取り可能な記録媒体に記憶させることによって、テストシナリオ作成装置を構成するコンピュータに実行させることが可能となる。ここで、上記コンピュータにより読取り可能な記録媒体としては、ROMやRAM等のコンピュータに内部実装される内部記憶装置、CD−ROMやフレキシブルディスク、DVDディスク、光磁気ディスク、ICカード等の可搬型記憶媒体や、コンピュータプログラムを保持するデータベース、或いは、他のコンピュータ並びにそのデータベースや、更に回線上の伝送媒体をも含むものである。
なお、設計情報取得ステップと設計情報再取得ステップは、実施の形態における処理S11に対応する。また、テストシナリオ雛形情報生成ステップは、実施の形態における処理S12に対応する。また、テストシナリオ設定ステップは、実施の形態における処理S31に対応する。また、テストデータ設定ステップは、実施の形態における処理S32に対応する。また、テストシナリオ雛形情報再生成ステップは、実施の形態における処理S12,S21,S22に対応する。
(付記1) 画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法をコンピュータに実行させるテストシナリオ作成プログラムであって、
前記アプリケーションの設計情報を取得する設計情報取得ステップと、
前記設計情報取得ステップにより取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップと、
前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップと、
をコンピュータに実行させるテストシナリオ作成プログラム。
(付記2) 付記1に記載のテストシナリオ作成プログラムにおいて、
更に、前記テストシナリオ設定ステップの後に、前記設計情報取得ステップにより取得された設計情報と前記テストシナリオ設定ステップにより設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定ステップをコンピュータに実行させることを特徴とするテストシナリオ作成プログラム。
(付記3) 付記2に記載のテストシナリオ作成プログラムにおいて、
更に、前記テストデータ設定ステップの後に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得する設計情報再取得ステップと、
前記設計情報再取得ステップの後に、前記設計情報再取得ステップにより再取得された設計情報と前記生成ルールに基づいて、テストシナリオ雛形情報の再生成を行い、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報再生成ステップとをコンピュータに実行させることを特徴とするテストシナリオ作成プログラム。
(付記4) 付記1乃至付記3のいずれかに記載のテストシナリオ作成プログラムにおいて、
前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするテストシナリオ作成プログラム。
(付記5) 付記1乃至付記4のいずれかに記載のテストシナリオ作成プログラムにおいて、
前記設計情報は、前記アプリケーションの画面の遷移を表す画面遷移図と前記画面内の構成要素の定義を表す画面項目定義を含むことを特徴とするテストシナリオ作成プログラム。
(付記6) 付記5に記載のテストシナリオ作成プログラムにおいて、
前記テストシナリオ雛形情報生成ステップは、全ての画面遷移を少なくとも1回使用するようにテストシナリオ雛形情報を生成し、更に、所定の画面遷移のループを行うテストシナリオ雛形情報を生成することを特徴とするテストシナリオ作成プログラム。
(付記7) 付記1乃至付記6のいずれかに記載のテストシナリオ作成プログラムにおいて、
前記テストシナリオ設定ステップは、作成者が前記テストシナリオ雛形情報に対する設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするテストシナリオ作成プログラム。
(付記8) 付記2乃至付記7のいずれかに記載のテストシナリオ作成プログラムにおいて、
前記テストデータ設定ステップは、作成者が前記テストデータの設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするテストシナリオ作成プログラム。
(付記9) 画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成装置であって、
前記アプリケーションの設計情報を取得する設計情報取得部と、
前記設計情報取得部により取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成部と、
前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定部と、
を備えてなるテストシナリオ作成装置。
(付記10) 付記8に記載のテストシナリオ作成装置において、
更に、前記設計情報取得部により取得された設計情報と前記テストシナリオ設定部により設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定部を備えることを特徴とするテストシナリオ作成装置。
(付記11) 付記9に記載のテストシナリオ作成装置において、
前記設計情報取得部は更に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得し、
前記テストシナリオ雛形情報生成部は更に、前記設計情報取得部により再取得された設計情報に基づいて、テストシナリオ雛形情報の再生成を行い、
更に、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報選択部を備えることを特徴とするテストシナリオ作成装置。
(付記12) 付記9乃至付記11のいずれかに記載のテストシナリオ作成装置において、
前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするテストシナリオ作成装置。
(付記13) 付記9乃至付記12のいずれかに記載のテストシナリオ作成装置において、
前記設計情報は、前記アプリケーションの画面の遷移を表す画面遷移図と前記画面内の構成要素の定義を表す画面項目定義を含むことを特徴とするテストシナリオ作成装置。
(付記14) 付記13に記載のテストシナリオ作成装置において、
前記テストシナリオ雛形情報生成部は、全ての画面遷移を少なくとも1回使用するようにテストシナリオ雛形情報を生成し、更に、所定の画面遷移のループを行うテストシナリオ雛形情報を生成することを特徴とするテストシナリオ作成装置。
(付記15) 付記9乃至付記14のいずれかに記載のテストシナリオ作成装置において、
前記テストシナリオ設定部は、作成者が前記テストシナリオ雛形情報に対する設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするテストシナリオ作成装置。
(付記16) 付記10乃至付記15のいずれかに記載のテストシナリオ作成装置において、
前記テストデータ設定部は、作成者が前記テストデータの設定を行う場合、前記設計情報に基づいて、設定値の候補を作成者に提示すること、入力可能な設定値を制限すること、作成者が異常値を設定した場合に警告すること、のいずれかを行うことにより作成者による設定を支援することを特徴とするテストシナリオ作成装置。
(付記17) 画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法であって、
前記アプリケーションの設計情報を取得する設計情報取得ステップと、
前記設計情報取得ステップにより取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップと、
前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップと、
を実行するテストシナリオ作成方法。
(付記18) 付記17に記載のテストシナリオ作成方法において、
更に、前記テストシナリオ設定ステップの後に、前記設計情報取得ステップにより取得された設計情報と前記テストシナリオ設定ステップにより設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定ステップを実行することを特徴とするテストシナリオ作成方法。
(付記19) 付記18に記載のテストシナリオ作成方法において、
更に、前記テストデータ設定ステップの後に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得する設計情報再取得ステップと、
前記設計情報再取得ステップの後に、前記設計情報再取得ステップにより再取得された設計情報と前記生成ルールに基づいて、テストシナリオ雛形情報の再生成を行い、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報再生成ステップとを実行することを特徴とするテストシナリオ作成方法。
(付記20) 付記17乃至付記19のいずれかに記載のテストシナリオ作成方法において、
前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするテストシナリオ作成方法。
本発明に係るテストシナリオ作成装置の構成の一例を示すブロック図である。 本発明に係るテストシナリオ作成装置の動作の一例を示すフローチャートである。 本実施の形態に係る画面遷移図の一例を示すフローグラフである。 本実施の形態に係る画面項目定義の一例を示すクラス図である。 本実施の形態に係るWebアプリケーションの検索画面の一例を示す図である。 本実施の形態に係るWebアプリケーションの結果画面の一例を示す図である。 本発明に係るテストシナリオ雛形情報の生成の動作の一例を示すフローチャートである。 本実施の形態に係るテストシナリオ雛形情報の一例を示すドキュメントである。 遷移の優先順位の設定が有効な画面遷移図の一例を示すフローグラフである。 本実施の形態に係るテストシナリオ雛形情報表の一例を示す表である。 本実施の形態に係るテスト観点の一例を示す表である。 本実施の形態に係るFragment表の一例を示す表である。 本発明に係る第3テストシナリオ雛形情報生成処理の動作の一例を示すフローチャートである。 本実施の形態に係るテストシナリオ設定画面の第1の例を示す図である。 本実施の形態に係るテストシナリオ設定画面の第2の例を示す図である。 本実施の形態に係るテストシナリオ設定画面の第3の例を示す図である。 本実施の形態に係るテストデータ設定画面の第1の例を示す図である。 本実施の形態に係るテストデータ設定画面の第2の例を示す図である。
符号の説明
1 設計情報取得部、2 テストシナリオ雛形情報生成部、3 テストシナリオ設定部、4 テストデータ設定部、5 テストシナリオ雛形情報選択部。

Claims (10)

  1. 画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法をコンピュータに実行させるテストシナリオ作成プログラムであって、
    前記アプリケーションの設計情報を取得する設計情報取得ステップと、
    前記設計情報取得ステップにより取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップと、
    前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップと、
    をコンピュータに実行させるテストシナリオ作成プログラム。
  2. 請求項1に記載のテストシナリオ作成プログラムにおいて、
    更に、前記テストシナリオ設定ステップの後に、前記設計情報取得ステップにより取得された設計情報と前記テストシナリオ設定ステップにより設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定ステップをコンピュータに実行させることを特徴とするテストシナリオ作成プログラム。
  3. 請求項2に記載のテストシナリオ作成プログラムにおいて、
    更に、前記テストデータ設定ステップの後に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得する設計情報再取得ステップと、
    前記設計情報再取得ステップの後に、前記設計情報再取得ステップにより再取得された設計情報と前記生成ルールに基づいて、テストシナリオ雛形情報の再生成を行い、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報再生成ステップと、
    をコンピュータに実行させることを特徴とするテストシナリオ作成プログラム。
  4. 請求項1乃至請求項3のいずれかに記載のテストシナリオ作成プログラムにおいて、
    前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするテストシナリオ作成プログラム。
  5. 画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成装置であって、
    前記アプリケーションの設計情報を取得する設計情報取得部と、
    前記設計情報取得部により取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成部と、
    前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定部と、
    を備えてなるテストシナリオ作成装置。
  6. 請求項5に記載のテストシナリオ作成装置において、
    更に、前記設計情報取得部により取得された設計情報と前記テストシナリオ設定部により設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定部を備えることを特徴とするテストシナリオ作成装置。
  7. 請求項6に記載のテストシナリオ作成装置において、
    前記設計情報取得部は更に、前記アプリケーションの設計情報に変更がある場合、前記アプリケーションの設計情報を再取得し、
    前記テストシナリオ雛形情報生成部は更に、前記設計情報取得部により再取得された設計情報に基づいて、テストシナリオ雛形情報の再生成を行い、
    更に、再生成後のテストシナリオ雛形情報が再生成前のテストシナリオ雛形情報と同一であるか否かの判断を行い、同一であるものは、再生成前のテストシナリオ雛形情報に基づいて設定されたテストシナリオやテストデータを利用するテストシナリオ雛形情報選択部を備えることを特徴とするテストシナリオ作成装置。
  8. 請求項5乃至請求項7のいずれかに記載のテストシナリオ作成装置において、
    前記生成ルールは、ユーザからの入力がある画面において入力データを正常値とするルール、ユーザからの入力がある画面において入力データを異常値とするルール、表示件数が可変である画面において正常範囲内の表示件数を表示させるルール、表示件数が可変である画面において正常範囲外の表示件数を表示させるルール、表示件数が可変である画面において表示件数上限付近の表示件数を表示させるルール、表示件数が可変である画面において表示件数下限付近の表示件数を表示させるルール、のいずれかを含むことを特徴とするテストシナリオ作成装置。
  9. 画面の変化を伴うアプリケーションの検証に用いるテストシナリオを作成するテストシナリオ作成方法であって、
    前記アプリケーションの設計情報を取得する設計情報取得ステップと、
    前記設計情報取得ステップにより取得された設計情報と予め設定された生成ルールとに基づいて、前記テストシナリオの一部の情報を持つテストシナリオ雛形情報を生成するテストシナリオ雛形情報生成ステップと、
    前記設計情報に基づいて前記テストシナリオ雛形情報に対して設定を行った結果を前記テストシナリオとするテストシナリオ設定ステップと、
    を実行するテストシナリオ作成方法。
  10. 請求項9に記載のテストシナリオ作成方法において、
    更に、前記テストシナリオ設定ステップの後に、前記設計情報取得ステップにより取得された設計情報と前記テストシナリオ設定ステップにより設定されたテストシナリオに基づいて、前記テストシナリオに対応するテストデータの設定を行うテストデータ設定ステップを実行することを特徴とするテストシナリオ作成方法。
JP2005238500A 2005-08-19 2005-08-19 テストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法 Withdrawn JP2007052703A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005238500A JP2007052703A (ja) 2005-08-19 2005-08-19 テストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法
US11/289,412 US20070043980A1 (en) 2005-08-19 2005-11-30 Test scenario generation program, test scenario generation apparatus, and test scenario generation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005238500A JP2007052703A (ja) 2005-08-19 2005-08-19 テストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法

Publications (1)

Publication Number Publication Date
JP2007052703A true JP2007052703A (ja) 2007-03-01

Family

ID=37768529

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005238500A Withdrawn JP2007052703A (ja) 2005-08-19 2005-08-19 テストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法

Country Status (2)

Country Link
US (1) US20070043980A1 (ja)
JP (1) JP2007052703A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009037519A (ja) * 2007-08-03 2009-02-19 Toshiba Corp テストシナリオ生成装置、株取引テストシステム及びコンピュータプログラム
US8584095B2 (en) 2009-12-21 2013-11-12 International Business Machines Corporation Test support system, method and computer program product, which optimize test scenarios to minimize total test time
JP5942009B1 (ja) * 2015-03-31 2016-06-29 エヌ・ティ・ティ・コムウェア株式会社 ソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラム
US9569344B2 (en) 2012-05-18 2017-02-14 Hitachi, Ltd. Testing system for a mobile object in a navigation map
JP2019197258A (ja) * 2018-05-07 2019-11-14 キヤノンマーケティングジャパン株式会社 情報処理装置、その制御方法及びプログラム
JP2020046897A (ja) * 2018-09-19 2020-03-26 みずほ情報総研株式会社 テスト支援システム、テスト支援方法及びテスト支援プログラム
JP2020087079A (ja) * 2018-11-28 2020-06-04 株式会社日立製作所 システム開発支援装置およびシステム開発支援方法
JPWO2020230241A1 (ja) * 2019-05-13 2020-11-19
WO2021205589A1 (ja) * 2020-04-09 2021-10-14 日本電信電話株式会社 テストスクリプト生成装置、テストスクリプト生成方法及びプログラム

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8230390B2 (en) * 2007-02-09 2012-07-24 Nokia Corporation Template-based rule generation
JP4893811B2 (ja) * 2009-12-04 2012-03-07 富士通株式会社 検証支援プログラム、および検証支援装置
US9069901B2 (en) * 2010-08-19 2015-06-30 Salesforce.Com, Inc. Software and framework for reusable automated testing of computer software systems
US8954934B1 (en) 2010-08-22 2015-02-10 Panaya Ltd. Method and system for removing unessential test steps
US9075911B2 (en) 2011-02-09 2015-07-07 General Electric Company System and method for usage pattern analysis and simulation
US9348735B1 (en) * 2011-05-08 2016-05-24 Panaya Ltd. Selecting transactions based on similarity of profiles of users belonging to different organizations
US9317404B1 (en) * 2011-05-08 2016-04-19 Panaya Ltd. Generating test scenario templates from test runs collected from different organizations
US9069904B1 (en) * 2011-05-08 2015-06-30 Panaya Ltd. Ranking runs of test scenarios based on number of different organizations executing a transaction
US9201772B1 (en) * 2011-05-08 2015-12-01 Panaya Ltd. Sharing test scenarios among organizations while protecting proprietary data
US9201774B1 (en) * 2011-05-08 2015-12-01 Panaya Ltd. Generating test scenario templates from testing data of different organizations utilizing similar ERP modules
US9170925B1 (en) * 2011-05-08 2015-10-27 Panaya Ltd. Generating test scenario templates from subsets of test steps utilized by different organizations
US9201773B1 (en) * 2011-05-08 2015-12-01 Panaya Ltd. Generating test scenario templates based on similarity of setup files
US9092579B1 (en) * 2011-05-08 2015-07-28 Panaya Ltd. Rating popularity of clusters of runs of test scenarios based on number of different organizations
US9134961B1 (en) * 2011-05-08 2015-09-15 Panaya Ltd. Selecting a test based on connections between clusters of configuration changes and clusters of test scenario runs
US9170809B1 (en) * 2011-05-08 2015-10-27 Panaya Ltd. Identifying transactions likely to be impacted by a configuration change
US9703689B2 (en) 2015-11-04 2017-07-11 International Business Machines Corporation Defect detection using test cases generated from test models
US11256608B2 (en) * 2019-08-06 2022-02-22 Red Hat, Inc. Generating test plans for testing computer products based on product usage data

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6243835B1 (en) * 1998-01-30 2001-06-05 Fujitsu Limited Test specification generation system and storage medium storing a test specification generation program
JP2000112786A (ja) * 1998-10-05 2000-04-21 Fujitsu Ltd 試験ルート選定方法及び装置
JP3212959B2 (ja) * 1998-12-28 2001-09-25 日本電気通信システム株式会社 メッセージ/シーケンス編集機能を有する自動通信プロトコル試験システムおよび試験方法
US20040205406A1 (en) * 2000-05-12 2004-10-14 Marappa Kaliappan Automatic test system for testing remote target applications on a communication network
JP3828379B2 (ja) * 2001-05-17 2006-10-04 富士通株式会社 テスト仕様生成支援装置、方法、プログラム及び記録媒体
US7401259B2 (en) * 2003-06-19 2008-07-15 Sun Microsystems, Inc. System and method for scenario generation in a distributed system
JP2005196291A (ja) * 2003-12-26 2005-07-21 Fujitsu Ltd ユーザインタフェースアプリケーション開発プログラム、および開発装置
US7478365B2 (en) * 2004-01-13 2009-01-13 Symphony Services Corp. Method and system for rule-based generation of automation test scripts from abstract test case representation
US20070016829A1 (en) * 2005-07-14 2007-01-18 Microsoft Corporation Test case generator

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009037519A (ja) * 2007-08-03 2009-02-19 Toshiba Corp テストシナリオ生成装置、株取引テストシステム及びコンピュータプログラム
US8584095B2 (en) 2009-12-21 2013-11-12 International Business Machines Corporation Test support system, method and computer program product, which optimize test scenarios to minimize total test time
US9569344B2 (en) 2012-05-18 2017-02-14 Hitachi, Ltd. Testing system for a mobile object in a navigation map
JP5942009B1 (ja) * 2015-03-31 2016-06-29 エヌ・ティ・ティ・コムウェア株式会社 ソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラム
JP7212238B2 (ja) 2018-05-07 2023-01-25 キヤノンマーケティングジャパン株式会社 情報処理装置、その制御方法及びプログラム
JP2019197258A (ja) * 2018-05-07 2019-11-14 キヤノンマーケティングジャパン株式会社 情報処理装置、その制御方法及びプログラム
JP2020046897A (ja) * 2018-09-19 2020-03-26 みずほ情報総研株式会社 テスト支援システム、テスト支援方法及びテスト支援プログラム
JP2020087079A (ja) * 2018-11-28 2020-06-04 株式会社日立製作所 システム開発支援装置およびシステム開発支援方法
WO2020230241A1 (ja) * 2019-05-13 2020-11-19 日本電信電話株式会社 テスト装置、テスト方法及びプログラム
JPWO2020230241A1 (ja) * 2019-05-13 2020-11-19
JP7318704B2 (ja) 2019-05-13 2023-08-01 日本電信電話株式会社 テスト装置、テスト方法及びプログラム
WO2021205589A1 (ja) * 2020-04-09 2021-10-14 日本電信電話株式会社 テストスクリプト生成装置、テストスクリプト生成方法及びプログラム
JP7380851B2 (ja) 2020-04-09 2023-11-15 日本電信電話株式会社 テストスクリプト生成装置、テストスクリプト生成方法及びプログラム

Also Published As

Publication number Publication date
US20070043980A1 (en) 2007-02-22

Similar Documents

Publication Publication Date Title
JP2007052703A (ja) テストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法
JP5159713B2 (ja) システムの構成要素の設計アーキテクチャを自動設計する自動設計装置、自動設計方法及び自動設計プログラム
KR101661772B1 (ko) 소스 객체로부터 적어도 하나의 타겟 객체로의 애니메이션 효과들의 복사
JP5613118B2 (ja) 変換規則生成支援装置、方法、およびプログラム
JP6242773B2 (ja) 会議情報蓄積装置、方法およびプログラム
US20140372452A1 (en) Managing changes to one or more files via linked mapping records
EP2932403A2 (en) Appending content with annotation
JPH04178833A (ja) ソフトウェア再利用支援方法
CN109614095A (zh) 用户自定义组件的方法、平台代码的生成方法及装置
JP2015194808A (ja) 情報処理装置及び情報処理プログラム
WO2011029375A1 (zh) 一种任务栏按钮的管理方法及装置
JP5675676B2 (ja) 業務分析設計支援装置、業務分析設計支援方法、および業務分析設計支援プログラム
JP5747698B2 (ja) 要件管理支援装置
Gómez et al. An approach to the co-creation of models and metamodels in Enterprise Architecture Projects.
KR102144351B1 (ko) 전자 문서에 대한 손쉬운 언두 처리를 지원하는 전자 단말 장치 및 그 동작 방법
CN107818000B (zh) 一种页面表格的操作方法及装置
US8654123B2 (en) CAD-system projection method, CAD-system, and recording medium
JP2003330710A (ja) プログラム生成装置、及びプログラム生成方法、並びにプログラム生成用プログラム
JP2018022433A (ja) 制御プログラム、装置、及び方法
JP5808264B2 (ja) コード生成装置及びコード生成方法及びプログラム
JP2008299423A (ja) 情報処理装置および情報処理プログラム
JP2009053767A (ja) プログラム解析装置、および、プログラム解析方法
CN104299253A (zh) 一种面向全高清数字电影动画的智能渲染方法和装置
CN112612915B (zh) 一种图片标注方法及设备
JP2965000B2 (ja) ハードウェア記述言語編集装置及びハードウェア記述言語編集方法並びにハードウェア記述言語編集プログラムを記憶した記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100401

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20100625