(57)【特許請求の範囲】
【請求項１】
ソフトウェアを実行することにより表示装置に表示される画面を構成する画面部品毎に、画面部品の種別を記憶する画面構成記憶部と、
前記画面部品の種別毎に、その種別に係る画面部品が操作された際に前記ソフトウェアにより実行される処理を試験するための試験項目を記憶する試験項目記憶部と、
前記画面構成記憶部に記憶された前記種別に基づいて、前記画面構成記憶部に記憶された前記画面部品に対応する前記試験項目を前記試験項目記憶部から取得する試験項目取得部と、
前記試験項目取得部により取得された前記試験項目に基づいて、前記ソフトウェアの試験仕様情報を生成する試験仕様生成部と、
所定のグループに属する複数の前記画面部品が操作された際に前記ソフトウェアにより実行される処理を試験するためのグループ試験項目を生成するグループ試験項目生成部と、
を備え、
前記ソフトウェアは、前記所定のグループに属する複数の前記画面部品のうち、所定の画面部品以外の前記画面部品が操作された際に、前記ソフトウェアが出力する出力情報をグループ出力記憶部に記憶させ、前記所定の画面部品が操作された際に、前記グループ出力記憶部に記憶された前記出力情報を前記所定のグループが操作された際の処理結果として出力するグループ処理機能を備え、
前記画面構成記憶部は、複数の前記画面部品毎に、その画面部品の種別と、その画面部品が前記所定のグループに属するか否かを表すグループ情報とを記憶し、
前記グループ試験項目生成部は、前記画面構成記憶部に記憶された複数の前記画面部品に対応する前記グループ情報が前記所定のグループに属することを表す場合、前記試験項目取得部が取得した、前記所定のグループに属する複数の前記画面部品に対応する前記試験項目に基づいて、前記グループ試験項目を生成し、
前記試験仕様生成部は、前記試験項目取得部により取得された前記試験項目及び前記グループ試験項目生成部により生成された前記グループ試験項目に基づいて、前記試験仕様情報を生成する、
ことを特徴とするソフトウェア試験支援装置。
【請求項２】
前記グループ試験項目生成部は、前記試験項目取得部が取得した、前記所定のグループに属する複数の前記画面部品を表す画面部品情報に対応する前記試験項目の組合せにより、前記グループ試験項目を生成する、
ことを特徴とする請求項１に記載のソフトウェア試験支援装置。
【請求項３】
ユーザが試験項目に従って試験した結果を確認するための確認項目を取得する確認項目取得部をさらに備え、
前記試験項目記憶部は、前記画面部品の種別毎に、前記試験項目と、前記確認項目と、を記憶し、
前記確認項目取得部は、前記試験項目取得部が取得した試験項目に対応する確認項目を、前記試験項目記憶部から取得し、
前記試験仕様生成部は、前記試験項目取得部により取得された前記試験項目と、前記確認項目取得部により取得された前記確認項目と、に基づいて、前記試験仕様情報を生成する、
ことを特徴とする請求項１又は２に記載のソフトウェア試験支援装置。
【請求項４】
ソフトウェアを実行することにより表示装置に表示される画面を構成する画面部品毎に、画面部品の種別を記憶する画面構成記憶部から前記種別を取得するステップと、
前記画面部品の種別毎に、その種別に係る画面部品が操作された際に前記ソフトウェアにより実行される処理を試験するための試験項目を記憶する試験項目記憶部から、取得した前記種別に基づいて、前記画面構成記憶部に記憶された前記画面部品に対応する前記試験項目を取得するステップと、
取得された前記試験項目に基づいて、前記ソフトウェアの試験仕様情報を生成するステップと、
所定のグループに属する複数の前記画面部品が操作された際に前記ソフトウェアにより実行される処理を試験するためのグループ試験項目を生成するステップと、
を有し、
前記ソフトウェアは、前記所定のグループに属する複数の前記画面部品のうち、所定の画面部品以外の前記画面部品が操作された際に、前記ソフトウェアが出力する出力情報をグループ出力記憶部に記憶させ、前記所定の画面部品が操作された際に、前記グループ出力記憶部に記憶された前記出力情報を前記所定のグループが操作された際の処理結果として出力するグループ処理機能を備え、
前記画面構成記憶部は、複数の前記画面部品毎に、その画面部品の種別と、その画面部品が前記所定のグループに属するか否かを表すグループ情報とを記憶し、
前記グループ試験項目を生成するステップでは、前記画面構成記憶部に記憶された複数の前記画面部品に対応する前記グループ情報が前記所定のグループに属することを表す場合、前記試験項目を取得するステップで取得された、前記所定のグループに属する複数の前記画面部品に対応する前記試験項目に基づいて、前記グループ試験項目を生成し、
前記試験仕様情報を生成するステップでは、前記試験項目を取得するステップで取得された前記試験項目及び前記グループ試験項目を生成するステップで生成された前記グループ試験項目に基づいて、前記試験仕様情報を生成する、
ことを特徴とするソフトウェア試験支援方法。
【請求項５】
コンピュータを、
ソフトウェアを実行することにより表示装置に表示される画面を構成する画面部品毎に、画面部品の種別を記憶する画面構成記憶部から前記種別を取得する画面構成取得手段、
前記画面部品の種別毎に、その種別に係る画面部品が操作された際に前記ソフトウェアにより実行される処理を試験するための試験項目を記憶する試験項目記憶部から、前記画面構成取得手段により取得された前記種別に基づいて、前記画面構成記憶部に記憶された前記画面部品に対応する前記試験項目を取得する試験項目取得手段、
前記試験項目取得手段により取得された前記試験項目に基づいて、前記ソフトウェアの試験仕様情報を生成する試験仕様生成手段、
所定のグループに属する複数の前記画面部品が操作された際に前記ソフトウェアにより実行される処理を試験するためのグループ試験項目を生成するグループ試験項目生成手段、
として機能させ、
前記ソフトウェアは、前記所定のグループに属する複数の前記画面部品のうち、所定の画面部品以外の前記画面部品が操作された際に、前記ソフトウェアが出力する出力情報をグループ出力記憶部に記憶させ、前記所定の画面部品が操作された際に、前記グループ出力記憶部に記憶された前記出力情報を前記所定のグループが操作された際の処理結果として出力するグループ処理機能を備え、
前記画面構成記憶部は、複数の前記画面部品毎に、その画面部品の種別と、その画面部品が前記所定のグループに属するか否かを表すグループ情報とを記憶し、
前記グループ試験項目生成手段は、前記画面構成記憶部に記憶された複数の前記画面部品に対応する前記グループ情報が前記所定のグループに属することを表す場合、前記試験項目取得手段が取得した、前記所定のグループに属する複数の前記画面部品に対応する前記試験項目に基づいて、前記グループ試験項目を生成し、
前記試験仕様生成手段は、前記試験項目取得手段により取得された前記試験項目及び前記グループ試験項目生成手段により生成された前記グループ試験項目に基づいて、前記試験仕様情報を生成する、
よう機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェア試験を実施する際の試験項目を抽出するためのソフトウェア試験装置、ソフトウェア試験支援方法、及びプログラムに関する。
【背景技術】
【０００２】
一般に、ソフトウェア試験のための試験項目は、そのソフトウェア仕様書から人手により抽出される。しかし、試験項目を抽出する際、ソフトウェア仕様書の記載漏れや、仕様の解釈不足により、試験項目の抽出漏れが発生するおそれがある。このような試験項目の抽出漏れを防ぐため、例えば、特許文献１では、ソースコードを読み込んで、処理の分岐点を解析することで、試験項目を抽出する方法を提案している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−２６７８８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１に記載されている方法では、ソースコードを読み込んで分岐点を解析するため、試験項目を抽出するまでに時間がかかるという問題がある。また、グラフィカルユーザインターフェース（ＧＵＩ：Graphical User Interface）を介してユーザからの操作入力を受け付けるソフトウェアにおいて、そのＧＵＩにおける処理を試験するための試験項目は、依然としてソフトウェア仕様書から人手により抽出しなければならず、人手と時間がかかるという問題がある。
【０００５】
本発明は、上述の事情の下になされたもので、ＧＵＩにおける処理に関する試験項目を効率的に抽出することが可能なソフトウェア試験支援装置、ソフトウェア試験支援方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明に係るソフトウェア試験支援装置は、
ソフトウェアを実行することにより表示装置に表示される画面を構成する画面部品毎に、画面部品の種別を記憶する画面構成記憶部と、
前記画面部品の種別毎に、その種別に係る画面部品が操作された際に前記ソフトウェアにより実行される処理を試験するための試験項目を記憶する試験項目記憶部と、
前記画面構成記憶部に記憶された前記種別に基づいて、前記画面構成記憶部に記憶された前記画面部品に対応する前記試験項目を前記試験項目記憶部から取得する試験項目取得部と、
前記試験項目取得部により取得された前記試験項目に基づいて、前記ソフトウェアの試験仕様情報を生成する試験仕様生成部と、
所定のグループに属する複数の前記画面部品が操作された際に前記ソフトウェアにより実行される処理を試験するためのグループ試験項目を生成するグループ試験項目生成部と、
を備え、
前記ソフトウェアは、前記所定のグループに属する複数の前記画面部品のうち、所定の画面部品以外の前記画面部品が操作された際に、前記ソフトウェアが出力する出力情報をグループ出力記憶部に記憶させ、前記所定の画面部品が操作された際に、前記グループ出力記憶部に記憶された前記出力情報を前記所定のグループが操作された際の処理結果として出力するグループ処理機能を備え、
前記画面構成記憶部は、複数の前記画面部品毎に、その画面部品の種別と、その画面部品が前記所定のグループに属するか否かを表すグループ情報とを記憶し、
前記グループ試験項目生成部は、前記画面構成記憶部に記憶された複数の前記画面部品に対応する前記グループ情報が前記所定のグループに属することを表す場合、前記試験項目取得部が取得した、前記所定のグループに属する複数の前記画面部品に対応する前記試験項目に基づいて、前記グループ試験項目を生成し、
前記試験仕様生成部は、前記試験項目取得部により取得された前記試験項目及び前記グループ試験項目生成部により生成された前記グループ試験項目に基づいて、前記試験仕様情報を生成する、
ことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、ＧＵＩにおける処理に関する試験項目を効率的に抽出することができる。
【図面の簡単な説明】
【０００８】
【図１】実施形態１に係るソフトウェア試験支援装置の構成を示すブロック図である。
【図２】実施形態１に係る画面構成ＤＢの一例である。
【図３】（ａ）及び（ｂ）は、実施形態１に係る表示装置に表示される画面の一例である。
【図４】実施形態１に係る試験項目ＤＢの一例である。
【図５】実施形態１に係る制御部の機能構成を示すブロック図である。
【図６】実施形態１に係る試験仕様情報の一例である。
【図７】実施形態１に係る試験仕様情報生成処理の流れを示すフローチャートである。
【図８】実施形態２に係る制御部の機能構成を示すブロック図である。
【図９】実施形態２に係る画面構成ＤＢの一例である。
【図１０】実施形態２に係る表示装置に表示される画面の一例である。
【図１１】実施形態２に係る試験仕様情報生成処理の流れを示すフローチャートである。
【図１２】実施形態２に係る試験仕様情報の一例である。
【発明を実施するための形態】
【０００９】
（実施形態１）
図１は、実施形態１に係るソフトウェア試験支援装置１の構成を示すブロック図である。図１に示すように、ソフトウェア試験支援装置１は、入力部１００と、出力部２００と、外部インターフェース（Ｉ／Ｆ）３００と、制御部４００と、ＲＯＭ（Read Only Memory）５００と、ＲＡＭ（Random Access Memory）６００と、記憶部７００と、から構成される。
【００１０】
入力部１００は、ユーザがソフトウェア試験支援装置１を操作するためのマウスやキーボード等の入力装置２と接続されており、ユーザによって入力される各種の情報を受け付ける。具体的には、入力部１００は、ユーザから、表示装置３に表示された画面上の各種ボタンを選択する操作を表す情報や、入力フォームに入力された情報を受け付ける。
【００１１】
出力部２００は、液晶ディスプレイ等の表示装置３に接続されている。出力部２００は、制御部４００により出力された各種の情報を出力する。具体的には、出力部２００は、制御部４００が試験対象ソフトウェア７１０を実行することにより出力するＧＵＩに係る画像を、表示装置３に出力し、表示させる。また、出力部２００は、制御部４００が生成した試験仕様情報を表示装置３に出力し、表示させる。試験対象ソフトウェア７１０及び試験仕様情報については、後述する。
【００１２】
外部Ｉ／Ｆ３００は、ＣＤ（Compact Disc）等のリムーバブルディスクに対して読み書きするためのドライブ装置（図示せず）等に接続されている。また、外部のネットワーク（例えば、インターネット、ＬＡＮ（Local Area Network）等）に接続するための装置や、制御部４００が生成した試験仕様情報等を印字するためのプリンタに接続されていてもよい。
【００１３】
制御部４００は、例えば、ＣＰＵ（Central Processing Unit）から構成されており、ソフトウェア試験支援装置１の全体の制御を行う。例えば、制御部４００は、画面構成ＤＢ７１２に格納された画面構成情報と、試験項目ＤＢ７２０に格納された試験項目情報に基づいて、試験対象ソフトウェア７１０の試験項目を抽出し、試験仕様情報を生成する試験仕様情報生成処理を行う。
【００１４】
ＲＯＭ５００は、制御部４００がソフトウェア試験支援装置１の全体を制御するためのプログラム等を格納する不揮発性メモリである。例えば、ＲＯＭ５００は、試験仕様情報生成処理を実行するためのプログラムを格納している。
【００１５】
ＲＡＭ６００は、制御部４００が生成した試験仕様情報や、当該試験仕様情報を生成するために必要なデータを一時的に格納するための揮発性メモリである。
【００１６】
記憶部７００は、ハードディスクドライブ等の記憶装置から構成される。例えば、記憶部７００は、試験対象ソフトウェア７１０と、試験項目ＤＢ７２０と、を記憶する。
【００１７】
試験対象ソフトウェア７１０は、ソフトウェア試験支援装置１によるソフトウェア試験の対象となるソフトウェアである。具体的には、試験対象ソフトウェア７１０は、制御部４００によって実行されることにより、表示装置３に画面部品から構成される画面を表示する。そして、試験対象ソフトウェア７０１は、ユーザにより画面部品が操作された際に、操作された画面部品に対応する各種の処理を実行し、その実行結果を出力情報として出力する。本実施形態において、試験対象ソフトウェア７１０は、一例として、空気調和機を制御するためのソフトウェアである。また、試験対象ソフトウェア７１０は、処理部７１１と、画面構成記憶手段としての画面構成ＤＢ（データベース）７１２とから構成される。
【００１８】
処理部７１１は、試験対象ソフトウェア７１０を実行するための処理が記載されたソースコードから構成される。制御部４００は、処理部７１１に記載された処理を実行することにより、画面構成ＤＢ７１２を参照し、画面部品から構成される画面を表示装置３に表示させ、ユーザからの入力を受け付ける。また、制御部４００は、ユーザから受け付けた入力に基づいて、処理部７１１に記載された処理を実行し、空気調和機を制御する。
【００１９】
画面構成ＤＢ７１２は、試験対象ソフトウェア７１０を実行することにより表示装置３に表示される画面の画面構成情報を格納する。図２に、画面構成ＤＢ７１２の一例を示す。具体的には、画面構成情報は、図２に示すように、画面毎に、その画面を構成する画面部品の部品ＩＤと、部品種別と、部品詳細とを表す情報を含む。
【００２０】
部品ＩＤは、画面を構成する画面部品を識別するための情報である。
【００２１】
部品種別は、画面を構成する画面部品の種別を表す。部品種別は、例えば、「トグルボタン」、「ラジオボタン」、「プッシュボタン」、「チェックボタン」、「入力フォーム」である。
【００２２】
トグルボタンは、対応する処理名称が表す処理のオン・オフを切り換えるためのボタンである。
【００２３】
ラジオボタンは、同じラジオグループに属する画面部品のうち、直近に操作された画面部品に対応する処理名称が表す処理を選択するためのボタンである。
【００２４】
プッシュボタンは、現在表示されている画面を対応する遷移先が表す画面に切り換えるためのボタンである。
【００２５】
チェックボタンは、対応する処理内容が表す処理のオン・オフを切り換えるためのボタンである。また、対応する処理内容がオン状態である場合、チェックボタンは、チェックがされた状態を表す画像であり、対応する処理内容がオフ状態である場合、チェックボタンは、チェックがされていない状態を表す画像である。
【００２６】
入力フォームは、テキストの入力を受け付けるためのフォームである。なお、本実施形態における試験対象ソフトウェア７１０において、入力フォームに入力可能な数値の上限値、下限値、及び桁数が予め部品詳細において設定されている。そして、入力フォームに上限値を超える数値が入力された場合、制御部４００は、入力フォームに上限値の数値が入力されたと判別する。また、入力フォームに下限値を下回る数値が入力された場合、制御部４００は、入力フォームに下限値の数値が入力されたと判別する。入力フォームに桁数を超える数値が入力された場合、制御部４００は、入力フォームに上限値の数値が入力されたと判別する。また、入力フォームに下限値以上上限値以下であって、桁数以下の数値が入力された場合、制御部４００は、入力フォームにユーザにより実際に入力された数値が入力されたと判別する。
【００２７】
部品詳細は、各画面部品に対応して設定される画面部品の詳細内容を表す。部品詳細は、具体的には図２に示すように、画面部品の種別に対応して、「処理名称」、「遷移先」、「ラジオグループ」、「上限」、「下限」、「桁数」の少なくともいずれか１つを含む。なお、図２において、各画面部品の部品詳細のうち、含まれない情報については、「−」で表している。
【００２８】
処理名称は、対応する画面部品が操作された際に、制御部４００により実行される処理の名称を表す。
【００２９】
遷移先は、対応する画面部品が操作された際に、現在表示されている画面から遷移する先の画面を表す。
【００３０】
ラジオグループは、部品種別がラジオボタンである画面部品に対応して設定され、そのラジオボタンが属するグループを表す。
【００３１】
上限、下限、及び桁数は、部品種別が入力フォームである画面部品に対応して設定され、それぞれその入力フォームに入力可能な数値の上限値、下限値、及び桁数を表す。
【００３２】
図３（ａ）及び（ｂ）に、試験対象ソフトウェア７１０を実行した際に、図２に示す画像構成ＤＢ７１２に格納された画像構成情報に基づいて、表示装置３に表示される画面の一例を示す。図３に示すように、画面３１，３２は、ユーザから空気調和機の動作を制御するための操作を受け付けるための画面部品３１ａ〜３１ｅ，３２ａ〜３２ｃから構成される。
【００３３】
画面部品３１ａは、部品ＩＤがＩＤ３１ａの画面部品であって、空気調和機の運転のオン・オフを切り換えるトグルボタンとして機能する画像である。ユーザにより画面部品３１ａが操作されると、試験対象ソフトウェア７１０は、正常動作時において、現在の運転状態から他方の運転状態に切り換える旨の出力情報を出力する。
【００３４】
画面部品３１ｂ〜３１ｄは、それぞれ部品ＩＤがＩＤ３１ｂ〜３１ｄの画面部品であって、空気調和機の運転モードを操作された画面部品３１ｂ〜３１ｄに対応する運転モードに切り換えるラジオボタンとして機能する画像である。具体的には、試験対象ソフトウェア７１０は、正常動作時において、直近に操作された画面部品３１ｂ〜３１ｄに対応する運転モードを選択する旨の出力情報を出力する。なお、本実施形態において、運転モードとして、「冷房」、「暖房」、「除湿」の３つのモードが予め設定されている。
【００３５】
画面部品３１ｅは、部品ＩＤがＩＤ３１ｅの画面部品であって、表示されている画面を画面３１から画面３２に切り換えるプッシュボタンとして機能する画像である。ユーザにより画面部品３１ｅが操作されると、試験対象ソフトウェア７１０は、正常動作時において、表示されている画面を画面３１から画面３２に切り換える旨の出力情報を出力する。
【００３６】
画面部品３２ａは、部品ＩＤがＩＤ３２ａの画面部品であって、ハイパワー運転のオン・オフを切り換えるチェックボタンとして機能する画像である。画面部品３２ａがチェックされていない状態を表す場合に、ユーザにより画面部品３２ａが操作されると、試験対象ソフトウェア７１０は、正常動作時において、画面部品３２ａをチェックされている状態を表す画像に切り換えるとともに、ハイパワー運転をオンに切り換える旨の出力情報を出力する。また、画面部品３２ａがチェックされている状態を表す場合に、ユーザにより画面部品３２ａが操作されると、試験対象ソフトウェア７１０は、正常動作時において、画面部品３２ａをチェックされていない状態を表す画像に切り換えるとともに、ハイパワー運転をオフに切り換える旨の出力情報を出力する。
【００３７】
画面部品３２ｂは、部品ＩＤがＩＤ３２ｂの画面部品であって、表示されている画面を画面３２から画面３１に切り換えるプッシュボタンとして機能する。ユーザにより画面部品３２ｂが操作されると、試験対象ソフトウェア７１０は、正常動作時において、表示されている画面を画面３２から画面３１に切り換える旨の出力情報を出力する。
【００３８】
画面部品３２ｃは、部品ＩＤがＩＤ３２ｃの画面部品であって、設定温度を表すテキストの入力を受け付ける入力フォームとして機能する画像である。ユーザにより画面部品３２ｃにテキストが入力されると、試験対象ソフトウェア７１０は、正常動作時において、入力されたテキストが表す数値が部品詳細に含まれる上限、下限及び桁数の条件を満たすか判別した後、満たす場合は、入力されたテキストが表す数値を出力情報として出力する。また、満たさない場合は、上述したように入力されたテキストが表す数値を修正し、修正後の数値を出力情報として出力する。
【００３９】
図１に戻って、試験項目ＤＢ７２０は、部品種別毎に、試験項目と、確認項目とに関する情報を対応付けて記憶する。図４に、試験項目ＤＢ７２０の一例を示す。
【００４０】
試験項目は、対応する部品種別の画面部品が操作された際に、試験対象ソフトウェア７１０により実行される処理を試験するための項目を表す。試験項目は、部品種別毎に、１又は複数の試験項目が対応付けられる。試験項目は、試験仕様情報に画面部品と対応付けて格納され、出力される。具体的には、ユーザは、この出力された試験項目に従って各画面部品を操作することにより、試験対象ソフトウェアの試験を行う。
【００４１】
確認項目は、対応する試験項目の試験結果に基づいて、処理が正常に実行されているか否かを確認するための項目を表す。具体的には、確認項目は、対応する試験項目に従って、画面部品が操作された際に、正常に実行された際に出力される情報を表す。確認項目は試験仕様情報に試験項目とともに画面部品と対応付けて格納され、出力される。従って、ユーザは、試験項目に従って各画面部品を操作した際に、その出力情報が確認項目が表す情報と一致していれば、その画面部品に対応する処理は正常であると判断する。
【００４２】
次に、ソフトウェア試験支援装置１の制御部４００の機能的構成について説明する。図５に示すように、制御部４００は、画面構成取得部４１０、試験項目取得部４２０、確認項目取得部４３０、試験仕様取得部４４０として機能する。
【００４３】
画面構成取得部４１０は、画面構成情報ＤＢ７１２から画面構成情報を取得する。
【００４４】
試験項目取得部４２０は、画面構成取得部４１０が取得した画面構成情報に含まれる画面部品毎に、その画面部品の部品種別に対応する試験項目を、試験項目ＤＢ７２０から取得する。また、取得した試験項目において、“上限”、“下限”、“桁数”等のパラメータに、画面構成情報に含まれる部品詳細を参照して、対応する情報を格納する。
【００４５】
確認項目取得部４３０は、試験項目取得部４２０が取得した試験項目に対応する確認項目を、試験項目ＤＢ７２０から取得する。また、取得した確認項目において、“遷移先”、“処理名称”、“下限”、“上限”などのパラメータに、画面構成情報に含まれる部品詳細を参照して、対応する情報を格納する。
【００４６】
試験仕様生成部４４０は、試験項目取得部４２０が取得した試験項目と、確認項目取得部４３０が取得した確認項目とに基づいて、試験仕様情報を生成する。試験仕様情報は、試験対象ソフトウェア７１０を実行することにより表示される画面を構成する画面部品毎に、試験項目と、確認項目とを対応付けて含む情報である。図６に、図２に示す画像構成ＤＢ７１２と図４に示す試験項目ＤＢ７２０に基づいて、試験仕様生成部４４０が生成した試験仕様情報の一例を示す。具体的には、図６に示すように、試験仕様情報は、試験番号、部品ＩＤ、試験項目、及び確認項目に関する情報を含む。
【００４７】
次に、ソフトウェア試験支援装置１が実行する試験仕様情報生成処理の流れについて説明する。図７は、ソフトウェア試験支援装置１が実行する試験仕様情報生成処理の流れの一例を示すフローチャートである。図７に示す試験仕様情報生成処理は、例えば、入力装置２を介して、ユーザにより試験仕様情報生成処理の実行を開始する旨を表す操作が入力されたことを契機として開始される。
【００４８】
まず、画面構成取得部４１０は、画面構成ＤＢ７１２から１組の画面構成情報を取得する（ステップＳ１１）。
【００４９】
次に、試験項目取得部４２０は、ステップＳ１１において取得した画面構成情報に含まれる部品種別に対応する試験項目を取得する（ステップＳ１２）。なお、対応する試験項目が複数有る場合は、全ての試験項目を取得する。また、試験項目に、“上限”、“下限”、“桁数”等のパラメータが含まれる場合は、取得した画面構成情報に含まれる部品詳細を参照して、対応する情報を格納する。
【００５０】
例えば、ステップＳ１１において、図２に示す画面構成ＤＢ７１２から部品ＩＤがＩＤ３２ｃである画面構成情報が取得された場合、試験項目取得部４２０は、試験項目ＤＢ７２０を参照し、取得された画面構成情報に含まれる部品種別である入力フォームに対応する５つの試験項目を取得する。そして、取得した試験項目に含まれるパラメータ“下限−１”に、画面構成情報に含まれる部品詳細の下限に対応する“１８”から１を減算した“１７”を格納する。同様にして、試験項目取得部４２０は、画面構成情報に含まれる部品詳細を参照して、取得した試験項目に含まれる“上限”、“下限”、“桁数＋１”に、“３０”、“１８”、“３”を格納する。
【００５１】
次に、確認項目取得部４３０は、ステップＳ１２において取得した試験項目に対応する確認項目を取得する（ステップＳ１３）。また、試験項目に、“遷移先”、“処理名称”、“下限”、“上限”等のパラメータが含まれる場合は、ステップＳ１１において取得した画面構成情報に含まれる部品詳細を参照して、対応する情報を格納する。
【００５２】
例えば、ステップＳ１１において、部品ＩＤがＩＤ３１ｅである画面構成情報が取得され、ステップＳ１２において、試験項目として「プッシュボタンを押す」が取得された場合、確認項目取得部４２０は、試験項目ＤＢ７２０を参照し、取得された試験項目に対応する確認項目「画面“遷移先”に遷移」を取得する。そして、取得した確認項目に含まれるパラメータ“遷移先”に、ステップＳ１１において取得された画面構成情報に含まれる部品詳細の遷移先に対応する “３２”を格納する。
【００５３】
次に、試験仕様生成部４４０は、ステップＳ１２において取得された試験項目及びステップＳ１３において取得された確認項目を、ステップＳ１１において取得した画面構成情報に含まれる部品ＩＤと対応付けて、試験仕様情報の試験項目及び確認項目に格納する（ステップＳ１４）。
【００５４】
次に、画面構成取得部４１０は、画面構成ＤＢ７１２に記憶されている全ての画面構成情報を取得したか否かを判別する（ステップＳ１５）。
【００５５】
全ての画面構成情報を取得していないと判別した場合（ステップＳ１５；Ｎｏ）、画面構成取得部４１０は、全ての画面構成情報を取得したと判別するまで、ステップＳ１１〜Ｓ１５の処理を繰り返す。
【００５６】
全ての画面構成情報を取得したと判別した場合（ステップＳ１５；Ｙｅｓ）、試験仕様生成部は、試験仕様情報を出力部２００に出力する（ステップＳ１５）。これにより、例えば図６に示すような試験仕様情報が、表示装置３に表示される。そして、本処理を終了させる。
【００５７】
以上説明したように、本実施形態に係るソフトウェア試験支援装置１において、試験対象ソフトウェア７１０を実行することにより表示されるＧＵＩに係る画面について、その操作の処理に関する試験項目を効率的に抽出し、試験仕様情報を生成することができる。
【００５８】
（実施形態２）
続いて、実施形態２に係るソフトウェア試験支援装置１について説明する。実施形態２に係るソフトウェア試験支援装置１は、所定のグループに属する画面部品が操作された際に２アクションで出力情報が出力されるグループ処理機能を備える試験対象ソフトウェア７１０についても試験項目の抽出が可能である。
【００５９】
ここで、グループ処理機能とは、具体的には、所定のグループに属する画面部品のうち、所定の画面部品以外の画面部品の出力情報は、グループ出力記憶部に記憶され、所定の画面部品が操作されたことを契機として、グループ出力記憶部に記憶された出力情報がその所定グループに属する画面部品が操作された際の処理の結果として出力される機能を表す。なお、所定の画面部品として、例えば、処理名称が「決定」や「送信」といったプッシュボタンの画面部品が予め設定されている。また、グループ出力記憶部として、例えばＲＡＭ６００が用いられる。
【００６０】
以下、実施形態２について、上記の実施形態１と異なる構成について詳細に説明し、同様の構成については、同様の符号を用い、その詳細な説明を省略する。
【００６１】
図８に、実施形態２に係るソフトウェア試験支援装置１の制御部４００の機能的構成を示す。図８に示すように、実施形態２に係るソフトウェア試験支援装置１は、実施形態１に係る画面構成ＤＢ７１２に代わって、画面構成ＤＢ７１３を備える。
【００６２】
画面構成ＤＢ７１３に格納された画面構成情報は、実施形態１に係る画面構成ＤＢ７１２に格納された画面構成情報に含まれる情報の他に、試験対象ソフトウェア７１０を実行した際に、２アクションで出力情報が出力される画面部品のグループに属するか否かを表すグループ情報を含む。図９に、画面構成ＤＢ７１３の一例を示す。図９に示す画面構成ＤＢ７１３において、画面構成情報にはグループ情報として「Ｇ１」が格納されている画面部品は、２アクションで出力情報が出力される画面部品のグループＧ１に属する。すなわち、グループＧ１に属する画面部品において、所定の画面部品以外の画面部品が操作された場合、その出力情報は、出力されずに一時的にＲＡＭ６００等に記憶される。そして、所定の画面部品が操作されると、記憶された出力情報が試験結果として出力される。なお、図９に示す画面構成ＤＢ７１３においては、所定の画面部品として、処理名称が「決定」のプッシュボタンである部品ＩＤがＩＤ３３ｅの画面部品が予め設定されている。
【００６３】
図１０に、実施形態２に係る試験対象ソフトウェア７１０を実行した際に、図９に示す画像構成ＤＢ７１３に格納された画像構成情報に基づいて、表示装置３に表示される画面の一例を示す。図１０に示すように、画面３３は、ユーザから空気調和機の動作を制御するための操作を受け付けるための画面部品３３ａ〜３３ｅから構成される。
【００６４】
画面部品３３ａ〜３３ｄは、部品ＩＤがＩＤ３３ａ〜ＩＤ３３ｄの画面部品であって、実施形態１における画面部品３１ａ〜３１ｄと同様の機能を有する。また、画面部品３３ｅは、部品ＩＤがＩＤ３３ｅの画面部品である。また、実施形態２において、画面部品３３ａ〜３３ｅの画面構成情報には、グループ情報として「Ｇ１」が格納されている。すなわち、グループＧ１に属する画面部品３３ａ〜３３ｅのうち、所定の画面部品の一例として、処理名称が「決定」のプッシュボタンである画面部品３３ｅ以外の画面部品３３ａ〜３３ｄが操作された場合、その出力情報は一時的にＲＡＭ６００等に記憶され、試験結果として出力されない。そして、画面部品３３ｅが操作されると、一時的に記憶された出力情報が試験結果として出力される。
【００６５】
次に、実施形態２に係るソフトウェア試験支援装置１の制御部４００の機能的構成について説明する。図８に示すように、制御部４００は、実施形態１に係る制御部４００の機能に加えて、さらにグループ試験項目生成部４５０、及びグループ確認項目生成部４６０として機能する。また、制御部４００は、実施形態１に係る試験仕様生成部４４０に代えて、試験仕様生成部４７０を備える。
【００６６】
グループ試験項目生成部４５０は、所定のグループに属する複数の画面部品が操作された際に試験対象ソフトウェア７１０により実行される処理を試験するためのグループ試験項目を生成する。具体的には、グループ試験項目生成部４５０は、試験項目取得部４２０が取得した所定のグループに属する画面部品に対応する試験項目に基づいて、グループ試験項目を生成する。
【００６７】
グループ確認項目生成部４６０は、対応するグループ試験項目の試験結果に基づいて、グループ処理が正常に実行されているか否かを確認するための項目を表すグループ確認項目を生成する。具体的には、グループ確認項目生成部４６０は、確認項目取得部４３０が取得した所定のグループに属する画面部品に対応する確認項目を、グループ試験項目生成部４５０が生成した、その所定のグループに係るグループ試験項目のグループ確認項目として取得する。
【００６８】
試験仕様生成部４７０は、試験項目取得部４２０により取得された試験項目、確認項目取得部４３０により取得された確認項目、グループ試験項目生成部４５０により生成されたグループ試験項目、及びグループ確認項目生成部４６０により生成されたグループ確認項目に基づいて、試験仕様情報を生成する。
【００６９】
次に、実施形態２に係るソフトウェア試験支援装置１が実行する処理の流れの一例について、図を参照しつつ説明する。図１１は、実施形態２に係るソフトウェア試験支援装置１が実行する試験仕様情報生成処理の流れを示すフローチャートである。図１１に示す試験仕様情報生成処理は、例えば、入力装置２を介して、ユーザにより試験仕様情報生成処理の実行を開始する旨を表す操作が入力されたことを契機として開始される。
【００７０】
画面構成取得部４１０は、実施形態１に係る試験仕様情報生成処理のステップＳ１１と同様に、画面構成ＤＢ７１３から１組の画面構成情報を取得する（ステップＳ２１）。
【００７１】
次に、試験項目取得部４２０は、実施形態１に係る試験仕様情報生成処理のステップＳ１２と同様に、ステップＳ２１において取得した画面構成情報に含まれる部品種別に対応する試験項目を取得する（ステップＳ２２）。
【００７２】
次に、確認項目取得部４３０は、実施形態１に係る試験仕様情報生成処理のステップＳ１３と同様に、ステップＳ２２において取得した試験項目に対応する確認項目を取得する（ステップＳ２３）。
【００７３】
次に、グループ試験項目生成部４５０は、ステップＳ２１において取得した画面構成情報に含まれるグループ情報がグループに属していることを表すか否かを判別する（ステップＳ２４）。
【００７４】
グループ情報がグループに属していることを表すと判別した場合（ステップＳ２４；Ｙｅｓ）、グループ試験項目生成部４５０は、ステップＳ２２において取得した試験項目とステップＳ２３において取得した確認項目を、グループ情報が表すグループ及び画面部品と対応付けて、ＲＡＭ６００に一時的に記憶させる。そして、グループ試験項目生成部４５０はステップＳ２６に処理を進める。
【００７５】
グループ情報がグループに属していることを表さない、すなわちグループ情報がグループに属していないことを表すと判別した場合（ステップＳ２４；Ｎｏ）、試験仕様生成部４７０は、実施形態１の試験仕様情報生成処理のステップＳ１４と同様に、ステップＳ２２において取得した試験項目とステップＳ２３において取得した確認項目を、試験仕様情報の試験項目及び確認項目に格納する（ステップＳ２５）。
【００７６】
次に、画面構成取得部４１０は、画面構成ＤＢ７１３に記憶されている全ての画面構成情報を取得したか否かを判別する（ステップＳ２６）。
【００７７】
全ての画面構成情報を取得していないと判別した場合（ステップＳ２６；Ｎｏ）、画面構成取得部４１０は、全ての画面構成情報を取得したと判別するまで、ステップＳ２１〜Ｓ２６の処理を繰り返す。
【００７８】
全ての画面構成情報を取得したと判別した場合（ステップＳ２６；Ｙｅｓ）、グループ試験項目生成部４５０は、ＲＡＭ６００に記憶された試験項目に基づいて、グループ毎に、グループ試験項目を生成する（ステップＳ２７）。
【００７９】
例えば、ステップＳ２１において、図９に示す画面構成情報が取得された場合、グループ試験項目生成部４５０は、ＲＡＭ３０に記憶６００に記憶された、試験項目取得部４２０が取得したグループＧ１に属する画面部品３３ａ〜３３ｅに対応する試験項目に基づいて、グループ試験項目を生成する。具体的には、グループ試験項目生成部４５０は、グループＧ１に属する画面部品３３ａ〜３３ｅに対応する試験項目について、組合せにより、グループ試験項目を生成する。なお、処理名称が「決定」のプッシュボタンである画面部品３３ｅに対応する試験項目は、グループＧ１に属する画面部品３３ａ〜３３ｅに対応する試験項目のうち、最後に試験されるものとして、グループ試験項目に含まれる。
【００８０】
次に、グループ確認項目生成部４６０は、ＲＡＭ６００に記憶された確認項目に基づいて、グループ毎に、グループ確認項目を生成する（ステップＳ２８）。
【００８１】
具体的には、グループ確認項目生成部４６０は、ステップＳ２７において生成されたグループ試験項目に含まれる試験項目に対応する確認項目を、そのグループ試験項目に対応するグループ確認項目として取得する。例えば、ステップＳ２１において、図９に示す画面構成情報が取得された場合、グループ確認項目生成部４６０は、ＲＡＭ３０に記憶６００に記憶された、確認項目取得部４３０が取得したグループＧ１に属する画面部品３３ａ〜３３ｅに対応する確認項目を、グループＧ１のグループ試験項目に対応するグループ確認項目として取得する。なお、最後の試験される所定の画面部品として予め設定されている画面部品３３ｅに対応する確認項目は、取得しなくてもよい。
【００８２】
次に、試験仕様生成部４７０は、ステップＳ２７において取得したグループ試験項目とステップＳ２８において取得したグループ確認項目を、試験仕様情報の試験項目及び確認項目に格納する（ステップＳ２９）。
【００８３】
例えば、ステップＳ２１〜２３において、図９に示す画面構成ＤＢ７１３、及び図４に示す試験項目ＤＢ７２０から、画面構成情報、試験項目及び確認項目が取得された場合、試験仕様生成部４７０には、図１２に一例として示すように、グループ試験項目及びグループ確認項目が格納される。すなわち、図９に示す画面構成ＤＢ７１３に含まれる画面構成情報では、部品ＩＤがＩＤ３３ａのトグルボタンである画面部品３３ａに対応する試験項目が２つであり、部品ＩＤがＩＤ３３ｂ〜ｄのラジオボタンである画面部品３３ｂ〜３３ｄに対応する試験項目が３つであることから、試験仕様情報には、部品ＩＤ３３ａ〜３３ｄに対応する試験項目の組合せにより、６つのグループ試験項目が格納される。そして、各グループ試験項目に含まれる試験項目に対応する確認項目が、グループ確認項目として格納される。
【００８４】
次に、試験仕様生成部４７０は、実施形態１に係る試験仕様情報生成処理のステップＳ１５と同様に、試験仕様情報を出力部２００に出力する（ステップＳ３０）。これにより、例えば図１２に示すような試験仕様情報が、表示装置３に表示される。そして、本処理を終了させる。
【００８５】
以上説明したように、実施形態２に係るソフトウェア試験支援装置１において、グループ処理機能を備える試験対象ソフトウェア７１０を実行することにより表示されるＧＵＩに係る画面について、そのグループ処理に関する試験項目を漏れなく効率的に抽出し、試験仕様情報を生成することができる。
【００８６】
以上、本発明の実施形態について説明したが、本発明は実施形態によって限定されるものではない。本発明は、上記の実施形態１及び２を適宜組み合わせたものも含み、また、それらと均等なものも含む。
【００８７】
例えば、実施形態２に係る画面構成ＤＢ７１３として、図９に示す例について説明したが、画面構成ＤＢ７１３は、グループに属する画面部品に関する画面構成情報だけでなく、グループに属しない画面部品に関する画面構成情報を格納していてもよい。この場合、グループに属しない画面部品に関する画面構成情報に含まれるグループ情報には、例えばＮＵＬＬ等のグループに属しない旨を表す情報が格納されている。そして、試験仕様情報には、グループに属しない画面部品に関しては、実施形態１と同様に試験項目及び確認項目が格納され、グループに属する画面部品に関しては、実施形態２と同様にグループ試験項目とグループ確認項目が格納される。
【００８８】
また、上記の実施形態１及び２に係る試験対象ソフトウェア７１０は、ソフトウェア試験支援装置１の制御部４００により実行されるものとしたが、試験対象ソフトウェア７１０を実行する主体はこれに限られない。例えば、試験対象ソフトウェア７１０は、ソフトウェア試験支援装置１とは異なる装置におけるＣＰＵ等の制御部により実行されてもよい。
【００８９】
また、本発明に係るソフトウェア試験支援装置は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。例えば、ネットワークに接続されているコンピュータに、上記動作を実行するためのプログラムを、コンピュータシステムが読み取り可能な記録媒体（ＣＤ−ＲＯＭ、ＭＯ等）に格納して配布し、当該プログラムをコンピュータシステムにインストールすることにより、上述の処理を実行するソフトウェア試験支援装置を構成してもよい。
【００９０】
また、コンピュータにプログラムを提供する方法は任意である。例えば、プログラムは、通信回線の掲示板（ＢＢＳ）にアップロードされ、通信回線を介してコンピュータに配信されてもよい。また、プログラムは、プログラムを表す信号により搬送波を変調した変調波により伝送され、この変調波を受信した装置が変調波を復調してプログラムを復元するようにしてもよい。そして、コンピュータは、このプログラムを起動して、ＯＳの制御のもと、他のアプリケーションと同様に実行する。これにより、コンピュータは、上述の処理を実行するソフトウェア試験支援装置として機能する。
【符号の説明】
【００９１】
１      ソフトウェア試験支援装置
１００  入力部
２００  出力部
３００  外部Ｉ／Ｆ
４００  制御部
４１０  画面構成取得部
４２０  試験項目取得部
４３０  確認項目取得部
４４０，４７０  試験仕様生成部
４５０  グループ試験項目生成部
４６０  グループ確認項目生成部
５００  ＲＯＭ
６００  ＲＡＭ
７００  記憶部
７１０  試験対象ソフトウェア
７１１  処理部
７１２，７１３  画面構成ＤＢ
７２０  試験項目ＤＢ
２      入力装置
３      表示装置
３１〜３３  画面
３１ａ〜３１ｅ，３２ａ〜３２ｃ，３３ａ〜３３ｅ  画面部品
【図１】
0005804896.tif 000002
【図２】
0005804896.tif 000003
【図３】
0005804896.tif 000004
【図４】
0005804896.tif 000005
【図５】
0005804896.tif 000006
【図６】
0005804896.tif 000007
【図７】
0005804896.tif 000008
【図８】
0005804896.tif 000009
【図９】
0005804896.tif 000010
【図１０】
0005804896.tif 000011
【図１１】
0005804896.tif 000012
【図１２】
0005804896.tif 000013