(57)【要約】【課題】プログラムのテストの質の劣化を抑制しつつ、プログラムのテストの短縮化及びコストの低減を図ること。【解決手段】テスト対象となるプログラムが、複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベースに対する処理を実行する処理機能を有しており、情報処理装置が、上記処理機能の上記データベースに対する処理内容を表す処理種別データの入力を受け付ける処理種別データ受付手段と、上記各データ入力項目に対してそれぞれ入力する各入力値の組み合わせを作成する入力値組合せ手段と、を備えている。そして、上記入力値組合せ手段は、上記処理種別データ受付手段にて受け付けた上記処理種別データに応じて、上記各入力値をそれぞれ少なくとも１回使用する組み合わせを作成する、という構成を有する。【選択図】図１
2010108030.tif 000002
【特許請求の範囲】
【請求項１】
テスト対象となるプログラムが、複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベースに対する処理を実行する処理機能を有しており、前記処理機能の前記データベースに対する処理内容を表す処理種別データの入力を受け付ける処理種別データ受付手段と、
前記各データ入力項目に対してそれぞれ入力する各入力値の組み合わせを作成する入力値組合せ手段と、を備え、
前記入力値組合せ手段は、前記処理種別データ受付手段にて受け付けた前記処理種別データに応じて、前記各入力値をそれぞれ少なくとも１回使用する組み合わせを作成する、
情報処理装置。
【請求項２】
前記処理種別データ受付手段にて受け付けた前記処理種別データが、前記データベースの作成、前記データベースの更新、前記データベースの削除、のいずれかである場合に、前記入力値組合せ手段が作動する、
請求項１記載の情報処理装置。
【請求項３】
前記処理種別データ受付手段にて受け付けた前記処理種別データが、前記データベースの検索、である場合に、前記入力値組合せ手段は、前記複数のデータ入力項目に対してそれぞれ入力する各入力値の全ての組み合わせを作成する、
請求項１又は２記載の情報処理装置。
【請求項４】
前記処理種別データ受付手段にて受け付けた前記処理種別データが、前記データベースの検索、である場合に、前記入力値組合せ手段は、前記データ入力項目がＭ個ある場合に、そのうち任意のＮ（Ｍ≧Ｎ＞１）個の前記データ入力項目への前記入力値の全ての組み合わせを作成する、
請求項１又は２記載の情報処理装置。
【請求項５】
前記各データ入力項目にそれぞれ入力可能な値を表す入力可能値情報の入力を受け付ける入力可能値情報受付手段と、
前記入力可能値情報受付手段にて受け付けた前記入力可能値情報に基づいて、前記各データ入力項目にそれぞれ入力可能な値を包含する各入力値を作成する入力値作成手段と、を備え、
前記入力組合せ手段は、前記入力値作成手段にて作成した前記各入力値の組み合わせを作成する、
請求項１，２，３又は４記載の情報処理装置。
【請求項６】
前記入力値作成手段は、前記入力可能値情報にて、前記各データ入力項目に入力可能な値として、予め有効数値範囲が定められた任意数値が設定されている場合に、前記有効数値範囲の境界値を前記各入力値として作成する、
請求項５記載の情報処理装置。
【請求項７】
前記入力値作成手段は、前記有効数値範囲の上限値、下限値、前記上限値より大きい最小の値、前記下限値より小さい最大の値、をそれぞれ前記境界値とし、当該各境界値を前記各入力値として作成する、
請求項６記載の情報処理装置。
【請求項８】
前記入力値作成手段は、前記入力可能値情報にて、前記各データ入力項目に入力可能なよう予め用意された値であり、選択されることにより入力された値となる選択情報が設定されている場合に、当該選択情報の全てをそれぞれ前記各入力値として作成する、
請求項５，６又は７記載の情報処理装置。
【請求項９】
前記プログラムが有する前記処理機能が、前記複数のデータ入力項目にそれぞれ特定の入力値が入力されたときに特定の処理を実行するよう構成されている場合に、前記入力値組合せ手段は、前記複数のデータ入力項目に対してそれぞれ入力する各入力値の全ての組み合わせを作成する、
請求項１，２，３，４，５，６，７又は８記載の情報処理装置。
【請求項１０】
前記入力値組合せ手段にて作成した組み合わせられた前記入力値を前記複数のデータ入力項目に入力し、前記処理機能による処理を実行するテスト実行手段と、
前記組み合わせられた入力値が入力された場合における前記処理機能による処理結果の正解を表す正解情報に基づいて、前記テスト実行手段による実行結果の正誤を判定するテスト判定手段と、を備えた、
請求項１，２，３，４，５，６，７，８又は９記載の情報処理装置。
【請求項１１】
テスト対象となるプログラムが、複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベースに対する処理を実行する処理機能を有しており、
コンピュータに、
前記プログラムが有する前記処理機能の前記データベースに対する処理内容を表す処理種別データの入力を受け付ける処理種別データ受付手段と、
前記処理種別データ受付手段にて受け付けた前記処理種別データに応じて、前記各データ入力項目に対してそれぞれ入力する各入力値をそれぞれ少なくとも１回使用する組み合わせを作成する入力値組合せ手段と、
を実現させるためのプログラム。
【請求項１２】
前記入力値組合せ手段は、前記処理種別データ受付手段にて受け付けた前記処理種別データが、前記データベースの作成、前記データベースの更新、前記データベースの削除、のいずれかである場合に、作動する、
請求項１１記載のプログラム。
【請求項１３】
前記コンピュータに、
前記各データ入力項目にそれぞれ入力可能な値を表す入力可能値情報の入力を受け付ける入力可能値情報受付手段と、
前記入力可能値情報受付手段にて受け付けた前記入力可能値情報に基づいて、前記各データ入力項目にそれぞれ入力可能な値を包含する各入力値を作成する入力値作成手段と、を実現させると共に、
前記入力組合せ手段は、前記入力値作成手段にて作成した前記各入力値の組み合わせを作成する、
請求項１１又は１２記載のプログラム。
【請求項１４】
テスト対象となるプログラムが、複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベースに対する処理を実行する処理機能を有している場合に、
前記プログラムが有する前記処理機能の前記データベースに対する処理内容を表す処理種別データの入力を受け付ける処理種別データ受付工程と、
前記各データ入力項目に対してそれぞれ入力する各入力値の組み合わせを作成する入力値組合せ工程と、を有し、
前記入力値組合せ工程は、前記処理種別データ受付工程にて受け付けた前記処理種別データに応じて、前記各入力値をそれぞれ少なくとも１回使用する組み合わせを作成する、
情報処理方法。
【請求項１５】
前記入力値組合せ工程は、前記処理種別データ受付手段にて受け付けた前記処理種別データが、前記データベースの作成、前記データベースの更新、前記データベースの削除、のいずれかである場合に、作動する、
請求項１４記載の情報処理方法。
【請求項１６】
少なくとも前記入力値組合せ工程の前に、
前記各データ入力項目にそれぞれ入力可能な値を表す入力可能値情報の入力を受け付ける入力可能値情報受付工程と、
前記入力可能値情報受付工程にて受け付けた前記入力可能値情報に基づいて、前記各データ入力項目にそれぞれ入力可能な値を包含する各入力値を作成する入力値作成工程と、を有し、
前記入力組合せ工程は、前記入力値作成工程にて作成した前記各入力値の組み合わせを作成する、
請求項１４又は１５記載の情報処理方法。
【請求項１７】
前記入力値組合せ工程にて作成した組み合わせられた前記入力値を前記複数のデータ入力項目に入力し、前記処理機能による処理を実行するテスト実行工程と、
前記組み合わせられた入力値が入力された場合における前記処理機能による処理結果の正解を表す正解情報に基づいて、前記テスト実行工程による実行結果の正誤を判定するテスト判定工程と、を有する、
請求項１４，１５又は１６記載の情報処理方法。
【請求項１８】
複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベースに対する処理を実行する処理機能を有するテスト対象となるプログラムを実行可能なよう装備したプログラム実行装置と、
前記プログラムが有する前記処理機能に設定された前記複数のデータ入力項目に入力する前記各入力値を作成するテストデータ作成装置と、を備え、
前記テストデータ作成装置は、
前記プログラムが有する前記処理機能の前記データベースに対する処理内容を表す処理種別データの入力を受け付ける処理種別データ受付手段と、
前記各データ入力項目に対してそれぞれ入力する各入力値の組み合わせを作成する入力値組合せ手段と、を備えると共に、
前記入力値組合せ手段は、前記処理種別データ受付手段にて受け付けた前記処理種別データに応じて、前記各入力値をそれぞれ少なくとも１回使用する組み合わせを作成し、
前記プログラム実行装置は、
前記テストデータ作成装置の前記入力値組合せ手段にて作成した組み合わせられた前記入力値を前記複数のデータ入力項目に入力し、前記処理機能による処理を実行するテスト実行手段と、
前記組み合わせられた入力値が入力された場合における前記処理機能による処理結果の正解を表す正解情報に基づいて、前記テスト実行手段による実行結果の正誤を判定するテスト判定手段と、を備えた、
情報処理システム。
【請求項１９】
前記テストデータ作成装置は、前記処理種別データ受付手段にて受け付けた前記処理種別データが、前記データベースの作成、前記データベースの更新、前記データベースの削除、のいずれかである場合に、前記入力値組合せ手段を作動させる、
請求項１８記載の情報処理システム。
【請求項２０】
前記テストデータ作成装置は、
前記各データ入力項目にそれぞれ入力可能な値を表す入力可能値情報の入力を受け付ける入力可能値情報受付手段と、
前記入力可能値情報受付手段にて受け付けた前記入力可能値情報に基づいて、前記各データ入力項目にそれぞれ入力可能な値を包含する各入力値を作成する入力値作成手段と、を備え、
前記テストデータ作成装置が有する前記入力値組合せ手段は、前記入力値作成手段にて作成した前記各入力値の組み合わせを作成する、
請求項１８又は１９記載の情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置にかかり、特に、プログラムをテストするテストデータを生成する情報処理装置に関する。
【背景技術】
【０００２】
ウェブアプリケーションのようなプログラム製品は、出荷前には種々のテストを行い、動作検証を行う。そして、必要であればプログラムを修正し、正常に動作することを確認した上で、出荷を行う。例えば、画面入力を必要とし、画面入力値あるいはその加工値をデータベースアクセスのパラメータとするプログラム製品の場合には、入力される可能性のある全ての画面入力値の組み合わせを作成して、当該全ての画面入力値にてテストを繰り返している。
【０００３】
ところが、画面入力テストでは、画面入力値の全ての組合せを作成してテストすると、組合せの数が非常に多くなる場合がある。すると、テスト実行に要する時間の増大や、実行結果と比較する正解値を用意する手間の増大、といった問題が生じる。
【０００４】
一方で、上記問題を解決すべく、テストデータの組み合わせを削減する手法として、特許文献１に開示されている「オールペア法」がある。このオールペア法とは、プログラムに入力する合計Ｍ個のパラメータのうち、任意のＮ（Ｍ≧Ｎ＞１）個のパラメータの組み合わせについて、全てのパターンをそれぞれ網羅する、という手法である。例えば、３個のパラメータがそれぞれ２値を取る場合に、総パターンは８通りになるが、このうちいずれか任意の２個のパタメータの組み合わせを考えると、半分の４通りとなる。
【０００５】
【特許文献１】特開２００６−２２７９５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した方法を用いた場合であっても、さらにテストデータ数を削減することができず、依然として、テスト実行に要する時間の増大や、実行結果と比較する正解値を用意する手間の増大、といった問題が生じる。一方で、テストデータを少なく設定した場合には、テストの質の劣化、という問題が生じる。
【０００７】
このため、本発明の目的は、上述した課題である、プログラムのテストの質の劣化を抑制しつつ、プログラムのテストの短縮化及びコストの低減を図る、ことにある。
【課題を解決するための手段】
【０００８】
かかる目的を達成するため本発明の一形態である情報処理装置は、
テスト対象となるプログラムが、複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベースに対する処理を実行する処理機能を有しており、上記処理機能の上記データベースに対する処理内容を表す処理種別データの入力を受け付ける処理種別データ受付手段と、
上記各データ入力項目に対してそれぞれ入力する各入力値の組み合わせを作成する入力値組合せ手段と、を備え、
上記入力値組合せ手段は、上記処理種別データ受付手段にて受け付けた上記処理種別データに応じて、上記各入力値をそれぞれ少なくとも１回使用する組み合わせを作成する、
という構成を有する。
【０００９】
また、本発明の他の形態であるプログラムは、
テスト対象となるプログラムが、複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベースに対する処理を実行する処理機能を有しており、
コンピュータに、
上記プログラムが有する上記処理機能の上記データベースに対する処理内容を表す処理種別データの入力を受け付ける処理種別データ受付手段と、
上記処理種別データ受付手段にて受け付けた上記処理種別データに応じて、上記各データ入力項目に対してそれぞれ入力する各入力値をそれぞれ少なくとも１回使用する組み合わせを作成する入力値組合せ手段と、
を実現させるためのプログラムである。
【００１０】
また、本発明の他の形態である情報処理方法は、
テスト対象となるプログラムが、複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベースに対する処理を実行する処理機能を有している場合に、
上記プログラムが有する上記処理機能の上記データベースに対する処理内容を表す処理種別データの入力を受け付ける処理種別データ受付工程と、
上記各データ入力項目に対してそれぞれ入力する各入力値の組み合わせを作成する入力値組合せ工程と、を有し、
上記入力値組合せ工程は、上記処理種別データ受付工程にて受け付けた上記処理種別データに応じて、上記各入力値をそれぞれ少なくとも１回使用する組み合わせを作成する、
という構成を有する。
【００１１】
また、本発明の他の形態である情報処理システムは、
複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベースに対する処理を実行する処理機能を有するテスト対象となるプログラムを実行可能なよう装備したプログラム実行装置と、
上記プログラムが有する上記処理機能に設定された上記複数のデータ入力項目に入力する上記各入力値を作成するテストデータ作成装置と、を備え、
上記テストデータ作成装置は、
上記プログラムが有する上記処理機能の上記データベースに対する処理内容を表す処理種別データの入力を受け付ける処理種別データ受付手段と、
上記各データ入力項目に対してそれぞれ入力する各入力値の組み合わせを作成する入力値組合せ手段と、を備えると共に、
上記入力値組合せ手段は、上記処理種別データ受付手段にて受け付けた上記処理種別データに応じて、上記各入力値をそれぞれ少なくとも１回使用する組み合わせを作成し、
上記プログラム実行装置は、
上記テストデータ作成装置の上記入力値組合せ手段にて作成した組み合わせられた上記入力値を上記複数のデータ入力項目に入力し、上記処理機能による処理を実行するテスト実行手段と、
上記組み合わせられた入力値が入力された場合における上記処理機能による処理結果の正解を表す正解情報に基づいて、上記テスト実行手段による実行結果の正誤を判定するテスト判定手段と、を備えた、
という構成を有する。
【発明の効果】
【００１２】
本発明は、以上のように構成されることにより、プログラムのテストの質の劣化を抑制しつつ、プログラムのテストの短縮化及びコストの低減を図ることができる。
【発明を実施するための最良の形態】
【００１３】
［構成の概略］
まず、本発明の構成の概略を説明する。
【００１４】
本発明の一形態である情報処理装置１は、図１に示すように、
テスト対象となるプログラムが、複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベースに対する処理を実行する処理機能を有しており、上記処理機能の上記データベースに対する処理内容を表す処理種別データ４の入力を受け付ける処理種別データ受付手段２と、
上記各データ入力項目に対してそれぞれ入力する各入力値の組み合わせを作成する入力値組合せ手段３と、を備え、
上記入力値組合せ手段３は、上記処理種別データ受付手段２にて受け付けた上記処理種別データ４に応じて、上記各入力値をそれぞれ少なくとも１回使用する組み合わせを作成する、
という構成を有する。
【００１５】
また、上記情報処理装置では、
上記処理種別データ受付手段にて受け付けた上記処理種別データが、上記データベースの作成、上記データベースの更新、上記データベースの削除、のいずれかである場合に、上記入力値組合せ手段が作動する、
という構成を有する。
【００１６】
また、上記情報処理装置では、
上記処理種別データ受付手段にて受け付けた上記処理種別データが、上記データベースの検索、である場合に、上記入力値組合せ手段は、上記複数のデータ入力項目に対してそれぞれ入力する各入力値の全ての組み合わせを作成する、
という構成を有する。
【００１７】
また、上記情報処理装置では、
上記処理種別データ受付手段にて受け付けた上記処理種別データが、上記データベースの検索、である場合に、上記入力値組合せ手段は、上記データ入力項目がＭ個ある場合に、そのうち任意のＮ（Ｍ≧Ｎ＞１）個の上記データ入力項目への上記入力値の全ての組み合わせを作成する、
という構成を有する。
【００１８】
上記発明によると、まず、情報処理装置は、テスト対象となるプログラムに装備された処理機能のデータベースに対する処理内容を表す処理種別データの入力を受け付ける。すると、情報処理装置は、プログラムのテストを行うために使用する、処理機能に設定された複数のデータ入力項目にそれぞれ入力する各入力値の組み合わせを作成する。このとき、各入力値の組み合わせは、受け付けた処理種別データに応じて、各入力値をそれぞれ少なくとも１回使用する組み合わせ、あるいは、各入力値をそれぞれ１回使用する組み合わせ、とする。例えば、データベースに対する処理内容が、データベースの作成、更新、削除、のいずれかである場合には、上述したように、各入力値をそれぞれ少なくとも１回、あるいは、それぞれ１回、使用する組み合わせを作成する。一方で、データベースに対する処理内容が、データベースの検索、である場合には、各入力値の全ての組み合わせを作成する、あるいは、各入力値がＭ個あるときに任意のＮ（Ｍ≧Ｎ＞１）個の入力値の全ての組み合わせを作成する。
【００１９】
これにより、処理機能に入力されうる入力値を網羅した組み合わせを作成しているため、常に各入力値の全ての組み合わせを作成する必要がなく、プログラムのテストデータ数を削減することができる。従って、プログラムのテストの質の劣化を抑制しつつ、プログラムのテストの短縮化及びコストの低減を図ることができる。
【００２０】
また、上記情報処理装置では、
上記各データ入力項目にそれぞれ入力可能な値を表す入力可能値情報の入力を受け付ける入力可能値情報受付手段と、
上記入力可能値情報受付手段にて受け付けた上記入力可能値情報に基づいて、上記各データ入力項目にそれぞれ入力可能な値を包含する各入力値を作成する入力値作成手段と、を備え、
上記入力組合せ手段は、上記入力値作成手段にて作成した上記各入力値の組み合わせを作成する、
という構成を有する。
【００２１】
また、上記情報処理装置では、
上記入力値作成手段は、上記入力可能値情報にて、上記各データ入力項目に入力可能な値として、予め有効数値範囲が定められた任意数値が設定されている場合に、上記有効数値範囲の境界値を上記各入力値として作成する、
という構成を有する。
【００２２】
また、上記情報処理装置では、
上記入力値作成手段は、上記有効数値範囲の上限値、下限値、上記上限値より大きい最小の値、上記下限値より小さい最大の値、をそれぞれ上記境界値とし、当該各境界値を上記各入力値として作成する、
という構成を有する。
【００２３】
また、上記情報処理装置では、
上記入力値作成手段は、上記入力可能値情報にて、上記各データ入力項目に入力可能なよう予め用意された値であり、選択されることにより入力された値となる選択情報が設定されている場合に、当該選択情報の全てをそれぞれ上記各入力値として作成する、
という構成を有する。
【００２４】
これにより、情報処理装置が、上述したデータ入力項目に入力可能な値を表す入力可能値情報に基づいて、入力可能な値を包含する入力値を作成する。例えば、入力可能な値が任意数値である場合には、その有効数値範囲の上限値や下限値といった境界値を入力値として作成する。また、入力可能な値が予め用意されておりこの中から選択する選択情報である場合には、当該選択情報の全てを入力値とする。従って、上述したようにテストデータ数を削減しつつ、漏れのないテストデータを作成することができ、テストの質の低下を抑制することができる。
【００２５】
また、上記情報処理装置では、
上記プログラムが有する上記処理機能が、上記複数のデータ入力項目にそれぞれ特定の入力値が入力されたときに特定の処理を実行するよう構成されている場合に、上記入力値組合せ手段は、上記複数のデータ入力項目に対してそれぞれ入力する各入力値の全ての組み合わせを作成する、
という構成を有する。
【００２６】
これにより、処理機能がデータ入力項目に入力された入力値によって特別な処理を実行する構成である場合には、入力される値を包含する全ての組み合わせを作成する。従って、上述したように、データベースへのアクセス種別によっては自動的に最少の組み合わせが生成されるが、上記のように特別な場合には、テストが必要とされる組合せが自動的に補足され、漏れのないテストデータを作成することができる。その結果、テスト者が詳細な設定を行ってテストデータを補足する必要が無く、当該テスト者の負担を軽減することができる。
【００２７】
また、上記情報処理装置では、
上記入力値組合せ手段にて作成した組み合わせられた上記入力値を上記複数のデータ入力項目に入力し、上記処理機能による処理を実行するテスト実行手段と、
上記組み合わせられた入力値が入力された場合における上記処理機能による処理結果の正解を表す正解情報に基づいて、上記テスト実行手段による実行結果の正誤を判定するテスト判定手段と、を備えた、
という構成を有する。
【００２８】
これにより、情報処理装置にて、テストデータの作成から当該作成したテストデータを用いたプログラムのテストまで実行することができる。
【００２９】
また、本発明の他の形態であるプログラムは、
テスト対象となるプログラムが、複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベースに対する処理を実行する処理機能を有しており、
コンピュータに、
上記プログラムが有する上記処理機能の上記データベースに対する処理内容を表す処理種別データの入力を受け付ける処理種別データ受付手段と、
上記処理種別データ受付手段にて受け付けた上記処理種別データに応じて、上記各データ入力項目に対してそれぞれ入力する各入力値をそれぞれ少なくとも１回使用する組み合わせを作成する入力値組合せ手段と、
を実現させるためのプログラムである。
【００３０】
そして、上記プログラムでは、
上記入力値組合せ手段は、上記処理種別データ受付手段にて受け付けた上記処理種別データが、上記データベースの作成、上記データベースの更新、上記データベースの削除、のいずれかである場合に、作動する、
という構成を有する。
【００３１】
また、上記プログラムでは、
上記コンピュータに、
上記各データ入力項目にそれぞれ入力可能な値を表す入力可能値情報の入力を受け付ける入力可能値情報受付手段と、
上記入力可能値情報受付手段にて受け付けた上記入力可能値情報に基づいて、上記各データ入力項目にそれぞれ入力可能な値を包含する各入力値を作成する入力値作成手段と、を実現させると共に、
上記入力組合せ手段は、上記入力値作成手段にて作成した上記各入力値の組み合わせを作成する、
という構成を有する。
【００３２】
また、本発明の他の形態である情報処理方法は、
テスト対象となるプログラムが、複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベースに対する処理を実行する処理機能を有している場合に、
上記プログラムが有する上記処理機能の上記データベースに対する処理内容を表す処理種別データの入力を受け付ける処理種別データ受付工程と、
上記各データ入力項目に対してそれぞれ入力する各入力値の組み合わせを作成する入力値組合せ工程と、を有し、
上記入力値組合せ工程は、上記処理種別データ受付工程にて受け付けた上記処理種別データに応じて、上記各入力値をそれぞれ少なくとも１回使用する組み合わせを作成する、
という構成を有する。
【００３３】
そして、上記情報処理方法では、
上記入力値組合せ工程は、上記処理種別データ受付手段にて受け付けた上記処理種別データが、上記データベースの作成、上記データベースの更新、上記データベースの削除、のいずれかである場合に、作動する、
という構成を有する。
【００３４】
また、上記情報処理方法では、
少なくとも上記入力値組合せ工程の前に、
上記各データ入力項目にそれぞれ入力可能な値を表す入力可能値情報の入力を受け付ける入力可能値情報受付工程と、
上記入力可能値情報受付工程にて受け付けた上記入力可能値情報に基づいて、上記各データ入力項目にそれぞれ入力可能な値を包含する各入力値を作成する入力値作成工程と、を有し、
上記入力組合せ工程は、上記入力値作成工程にて作成した上記各入力値の組み合わせを作成する、
という構成を有する。
【００３５】
また、上記情報処理方法では、
上記入力値組合せ工程にて作成した組み合わせられた上記入力値を上記複数のデータ入力項目に入力し、上記処理機能による処理を実行するテスト実行工程と、
上記組み合わせられた入力値が入力された場合における上記処理機能による処理結果の正解を表す正解情報に基づいて、上記テスト実行工程による実行結果の正誤を判定するテスト判定工程と、を有する、
という構成を有する。
【００３６】
また、本発明の他の形態である情報処理システムは、図２に示すように、
複数のデータ入力項目が設定されており当該各データ入力項目に入力された各入力値に基づいて所定のデータベース８に対する処理を実行する処理機能を有するテスト対象となるプログラムを実行可能なよう装備したプログラム実行装置５と、
上記プログラムが有する上記処理機能に設定された上記複数のデータ入力項目に入力する上記各入力値を作成するテストデータ作成装置１と、を備え、
上記テストデータ作成装置１は、
上記プログラムが有する上記処理機能の上記データベースに対する処理内容を表す処理種別データ４の入力を受け付ける処理種別データ受付手段２と、
上記各データ入力項目に対してそれぞれ入力する各入力値の組み合わせを作成する入力値組合せ手段３と、を備えると共に、
上記入力値組合せ手段３は、上記処理種別データ受付手段２にて受け付けた上記処理種別データ４に応じて、上記各入力値をそれぞれ少なくとも１回使用する組み合わせを作成し、
上記プログラム実行装置５は、
上記テストデータ作成装置１の上記入力値組合せ手段３にて作成した組み合わせられた上記入力値を上記複数のデータ入力項目に入力し、上記処理機能による処理を実行するテスト実行手段６と、
上記組み合わせられた入力値が入力された場合における上記処理機能による処理結果の正解を表す正解情報９に基づいて、上記テスト実行手段６による実行結果の正誤を判定するテスト判定手段７と、を備えた、
という構成を有する。
【００３７】
そして、上記情報処理システムでは、
上記テストデータ作成装置は、上記処理種別データ受付手段にて受け付けた上記処理種別データが、上記データベースの作成、上記データベースの更新、上記データベースの削除、のいずれかである場合に、上記入力値組合せ手段を作動させる、
という構成を有する。
【００３８】
また、上記情報処理システムでは、
上記テストデータ作成装置は、
上記各データ入力項目にそれぞれ入力可能な値を表す入力可能値情報の入力を受け付ける入力可能値情報受付手段と、
上記入力可能値情報受付手段にて受け付けた上記入力可能値情報に基づいて、上記各データ入力項目にそれぞれ入力可能な値を包含する各入力値を作成する入力値作成手段と、を備え、
上記テストデータ作成装置が有する上記入力値組合せ手段は、上記入力値作成手段にて作成した上記各入力値の組み合わせを作成する、
という構成を有する。
【００３９】
上述した構成を有する、プログラム、情報処理方法、又は、情報処理システム、の発明であっても、上記情報処理装置と同様の作用を有するために、上述した本発明の目的を達成することができる。
【００４０】
以下、本発明に係る、情報処理装置、プログラム、情報処理方法、及び、情報処理システム、の各実施形態について図３〜図１１を参照しながら説明する。
【００４１】
＜実施形態１＞
本発明の第１の実施形態を、図３乃至図９を参照して説明する。図３は、情報処理装置の構成を示す機能ブロック図である。図４は、テスト対象となるプログラムに入力値を入力する画面の一例を示す図である。図５は、情報処理装置に入力されるＣＲＵＤ図の一例を示す図である。図６は、情報処理装置にて作成される入力値の一例を示す図である。図７は、情報処理装置にて作成される入力値の全ての組み合わせを示す図である。図８は、情報処理装置にて作成される入力値の最少の組み合わせを示す図である。図９は、情報処理装置の動作を示すフローチャートである。
【００４２】
［構成］
本実施形態における情報処理装置１０は、複数の画面入力を必要とし、入力された入力値に基づいて所定の処理を実行する処理機能を実装したプログラムが、正常に動作することをテストするための情報処理装置である。このため、情報処理装置１０には、プログラムの各入力項目に入力するテストデータを作成するテストデータ作成機能と、作成したテストデータを用いてプログラムの実行テストを行うテスト機能と、を有している。
【００４３】
ここで、上記テスト対象となるプログラムについて説明する。テスト対象となるプログラムは、上述したように画面入力を必要とする処理機能を有している。具体的に、プログラムは、１つの処理機能として、図４（ａ）に示すように、「入力項目１」３１ａ（データ入力項目）と「入力項目２」３１ｂ（データ入力項目）を有する「検索画面（画面１）」３１を表示する処理機能を備えている。そして、この検索画面（画面１）３１を表示する処理機能は、さらに、上記２つの入力項目１，２に入力された入力値を用いて、あるいは、当該入力値を加工して、予め定められたデータベースに対する処理を実行する。例えば、この「検索画面（画面１）」３１の処理機能では、データベースであるＤＢテーブル１とＤＢテーブル２から、上記入力項目１，２のデータを検索する処理を実行する。
【００４４】
また、プログラムは、処理機能の他の例として、図４（ｂ）に示すように、「入力項目１」３２ａと「入力項目２」３２ｂを有する「新規作成（追加）画面（画面２）」３２を表示する処理機能を備えている。そして、この新規作成（追加）画面（画面２）３２を表示する処理機能は、さらに、上記２つの入力項目１，２に入力された入力値を用いて、あるいは、当該入力値を加工して、予め定められたデータベースに対する処理を実行する。例えば、この「新規作成（追加）画面（画面２）」３２の処理機能では、上記入力項目１，２のデータを追加してデータベースであるＤＢテーブル１とＤＢテーブル２を新規に作成したり、上記入力項目１，２のデータを追加する処理を実行する。
【００４５】
さらに、図示していないが、プログラムは、他の処理機能として、入力項目１，２に入力された入力値の情報に基づいて、データベースであるＤＢテーブル１とＤＢテーブル２を更新する処理機能や、ＤＢテーブル１とＤＢテーブル２を削除する処理機能を有している。なお、プログラムの処理機能は上述したものに限定されず、他の処理機能も有していてもよい。
【００４６】
そして、上述したプログラムが有する各処理機能が、どのようなデータベースに対して、どのような処理を行うか、ということを表す情報として、図３に示すＣＲＵＤ図２１がある。図５に、ＣＲＵＤ図２１のデータ内容の一例を示す。このＣＲＵＤ図２１は、上述した図４に示す画面入力を必要とする各処理機能によるデータベースに対する処理内容、つまり、各処理機能によるデータベースへのアクセス種別を表している。具体的に、図４（ａ）の画面１で示す処理機能は、ＤＢテーブル１，２に対してデータ「Ｒ」が設定されており、これは、画面１が、ＤＢテーブル１，２に対して検索（Ｒ）処理を行うようアクセスする、ということを表している。また、図４（ｂ）の画面２で示す処理機能は、ＤＢテーブル１，２に対してデータ「Ｃ」が設定されており、これは、画面２が、ＤＢテーブル１，２に対して作成（Ｃ）処理を行うようアクセスする、ということを表している。この他、「Ｕ」、「Ｃ」というデータが設定されている場合には、その処理機能が各データベースに対して更新（Ｕ）や削除（Ｄ）を行うようアクセスする、ことを表すこととなる。
【００４７】
そして、上記ＣＲＵＤ図２１のデータは、例えば、情報処理装置１０内や外部記憶装置に記憶されている。そして、情報処理装置１０は、後述するように、必要な時にＣＲＵＤ図２１を内部あるいは外部の記憶装置から読み出して取得する。あるいは、情報処理装置１０に直接入力されたＣＲＵＤ図２１を取得してもよい。
【００４８】
また、上記プログラム、特に、各処理機能（画面１，２）の仕様を表すデータである「画面項目仕様書」２２が予め用意されている。この画面項目仕様書２２は、上述した例では、上記画面１と画面２に表示される画面入力項目と画面入力値の仕様、つまり、各入力項目１，２に入力可能な値を表す入力可能値情報を記憶している。例えば、入力項目に任意数値を入力可能な場合には、入力可能値情報は、「任意数値が入力可能」である旨と、その「有効数値範囲（入力を受け入れ可能な数値の上限値と下限値）」を表す情報と、を含んでいる。また、入力項目に表示される選択情報のうち選択された選択情報を入力可能な場合には、入力可能値情報は、「選択情報が入力可能」である旨と、選択可能な「各選択情報」を表す情報と、を含んでいる。
【００４９】
そして、上記画面項目仕様書２２は、例えば、情報処理装置１０内や外部記憶装置に記憶されている。そして、情報処理装置１０は、後述するように、必要な時に画面項目仕様書２２を内部あるいは外部の記憶装置から読み出して取得する。あるいは、情報処理装置１０に直接入力された画面項目仕様書２２を取得してもよい。
【００５０】
続いて、上記情報処理装置１０について説明する。情報処理装置１０は、ＣＰＵといった演算装置と、ハードディスクやフラッシュメモリといった記憶装置と、を備えた一般的なコンピュータである。そして、情報処理装置１０は、演算装置に本発明である所定のプログラムが組み込まれることにより構築された、上記テストデータ作成機能を実現するための、ＤＢアクセス情報取得部１１と、画面入力項目取得部１２と、画面入力値作成部１３と、画面入力値組合せ部１４と、を備えている。また、情報処理装置１０は、演算装置に本発明である所定のプログラムが組み込まれることにより構築された、上記テスト機能を実現するための、テスト実行部１５と、テスト結果判定部１６と、を備えている。以下、各構成について詳述する。
【００５１】
上記ＤＢアクセス情報取得部１１（処理種別データ受付手段）は、テスト対象となるプログラムのＣＲＵＤ図２１の入力を受け付けて、処理機能である画面１，２によるデータベースに対するアクセス種別を取得する。例えば、ＤＢアクセス情報取得部１１は、上述した図５に示すＣＲＵＤ図２１の入力を受け付けてその内容を読み出し、各処理機能である画面１，２が各データベースであるＤＢテーブル１，２に対して実行する処理内容であるアクセス種別を取得する。つまり、画面１，２が、ＤＢテーブル１，２に対して、検索（Ｒ）、作成（Ｃ）、更新（Ｕ）、削除（Ｄ）のいかなる処理（アクセス）を実行するか、認識する。
【００５２】
なお、ＤＢアクセス情報取得部１１は、必ずしもＣＲＵＤ図２１を取得することに限定されない。ＣＲＵＤ図２１ではなく、上記各処理機能である各画面１，２のデータベースに対する処理内容を含む他のデータを取得して、ＤＢテーブル１，２に対するアクセス種別を認識してもよい。
【００５３】
次に、上記画面入力項目取得部１２について説明する。画面入力項目取得部１２（入力可能値情報受付手段）は、情報処理装置１０内や外部記憶装置から取得したり、あるいは、直接入力を受け付けることにより、上述した画面項目仕様書２２（入力可能値情報）の入力を受け付ける。これにより、画面入力項目取得部１２は、各画面１，２の入力項目１，２に入力可能な値を表す情報を取得し、画面入力値作成部１３に渡す。
【００５４】
そして、上記画面入力値作成部１３（入力値作成手段）は、上記各画面１，２の各入力項目１，２に設定された入力可能な値を表す入力可能値情報に基づいて、各入力項目１，２への入力条件を認識し、テストに必要な入力値を作成する。例えば、上述したように、各入力項目１，２に対して入力する値が選択情報である場合には、上記入力可能値情報に含まれる選択可能な全ての選択情報を、それぞれ入力値として作成する。具体例を挙げると、性別を選択する入力項目である場合には、選択情報として、「男」、「女」の２つの情報が選択情報として設定されている。
【００５５】
また、各入力項目１，２に対して入力する値が、任意数値である場合には、上記入力可能値情報に含まれる有効数値範囲の境界値を入力値として作成する。具体的には、有効数値範囲内の「上限値」、「下限値」、有効数値範囲外である「上限値より大きい最小の値」、「下限値より小さい最大の値」、をそれぞれ上記境界値とし、当該各境界値をそれぞれ入力値として作成する。一例を挙げると、有効数値範囲を表す情報が「１以上９９以下の整数値」である場合には、有効数値範囲内の上限値「９９」と下限値「１」、さらには、有効数値範囲外である「１００」と「０」を境界値とし、「０」、「１」、「９９」、「１００」を入力値として作成する。
【００５６】
そして、画面入力値作成部１３は、上述したように作成した各入力項目１，２に入力する入力値を、画面入力値組合せ部１３に渡す。ここで、図６に、生成した各画面１，２の入力項目１，２に入力する入力値の一例を示す。なお、ここでは、画面１，２の各入力項目１，２は、それぞれ同一の値が入力されることとする。そして、図６の例では、画面１，２の入力項目１に入力される入力値として、「入力値１１」、「入力値１２」、「入力値１３」が生成され、画面１，２の入力項目２に入力される入力値として、「入力値２１」、「入力値２２」が生成されたとする。
【００５７】
そして、上記画面入力値組合せ部１３（入力組合せ手段）は、上記画面入力値作成部１３にて作成された各入力値を受け付けて、これらの入力時の組み合わせ、つまり各入力項目１，２に同時に入力するときの組み合わせを作成する。このとき、画面入力値組合せ部１３は、上述したＤＢアクセス情報取得部１１にて取得したＣＲＵＤ図２１から、画面１，２のＤＢテーブル１，２に対するアクセス種別を認識し、そのアクセス種別に応じて、上記入力値の組み合わせを作成する。
【００５８】
具体的に、画面入力値組合せ部１３は、ＣＲＵＤ図２１から、画面１によるＤＢテーブル１，２に対するアクセス種別が「検索（Ｒ）」であるため、当該画面１の各入力項目１，２に入力する入力値の組み合わせとして、上述したように作成された入力値の全ての組み合わせを作成する。つまり、図７に示すように、入力項目１に入力する「入力値１１」、「入力値１２」、「入力値１３」と、入力項目２に入力する「入力値２１」、「入力値２２」との、全ての組み合わせを生成する。すると、全ての組み合わせである６通りのテスト項目が生成される。
【００５９】
また、画面入力値組合せ部１３は、ＣＲＵＤ図２１から、画面２によるＤＢテーブル１，２に対するアクセス種別は「作成（Ｃ）」であるため、当該画面２の各入力項目１，２に入力する入力値の組み合わせとして、上述したように作成された入力値の最少の組み合わせを作成する。つまり、図８に示すように、入力項目１に入力する「入力値１１」、「入力値１２」、「入力値１３」と、入力項目２に入力する「入力値２１」、「入力値２２」とが、それぞれ少なくとも１回使用する組み合わせを作成する。すると、３通りの組み合わせであるテスト項目が生成される。なお、ＣＲＵＤ図２１から、画面２によるＤＢテーブル１，２に対するアクセス種別が「更新（Ｕ）」、「削除（Ｄ）」の場合も、上記「作成（Ｃ）」の時と同様に、各入力値をそれぞれ少なくとも１回使用する組み合わせを作成する。
【００６０】
そして、画面入力値組合せ部１３は、上述したように作成した入力値の組み合わせを、テスト実行部１５に渡す。
【００６１】
ここで、画面入力値組合せ部１３は、必ずしも上述した組み合わせ手法にて、入力値の組み合わせを生成することに限定されない。例えば、画面２によるＤＢテーブル１，２に対するアクセス種別は「作成（Ｃ）」であるが、かかる場合には、各入力値の最少の組み合わせを作成することが望ましいが、必ずしも最少ではなく、それ以上の数の組み合わせを作成してもよい。例えば、各入力値をそれぞれ１回使用する組み合わせに加えて、特定の入力値が可能な限り含まれる組合せを作成してもよい。
【００６２】
また、画面入力値組合せ部１３は、例えば、画面１によるＤＢテーブル１，２に対するアクセス種別は「検索（Ｒ）」であるが、このときに必ずしも各入力値の全ての組み合わせを作成する必要はない。例えば、画面に入力項目がＭ個ある場合に、そのうち任意のＮ（Ｍ≧Ｎ＞１）個の入力項目への入力値の全ての組み合わせを作成してもよい。一例として、処理機能である所定の画面に、入力項目が３つあり、それぞれに入力項目には、それぞれ２通りの入力値が入力可能である場合を考える。この場合に、いずれか２つの入力項目への入力値の全ての組み合わせを作成する。なお、具体的な入力値の組み合わせ方法は、上記特許文献１に開示されているため、その詳細な説明は省略する。
【００６３】
次に、テスト実行部１５について詳述する。テスト実行部１５（テスト実行手段）は、上述した各画面１，２による処理機能を実装したテスト対象であるプログラムを実行し、各画面１，２によるＤＢテーブル１，２（２３）に対する処理を実行する。このとき、各画面１，２の入力項目１，２には、それぞれ上述したように作成した入力値の組み合わせを入力する。そして、その実行結果を、テスト結果判定部１６に通知する。
【００６４】
そして、テスト結果判定部１６（テスト判定手段）は、上記テス実行部１５によるテスト結果と、予め用意された「正解値」２４（正解情報）とを比較して、テスト結果が正しいか否かを判定する。なお、正解値は、例えば、実際にプログラムに入力した入力値の組み合わせによって出力されることが期待される正解とされている情報である。
【００６５】
［動作］
次に、上述した情報処理装置１０の動作を、図９のフローチャートを参照して説明する。まず、情報処理装置１０は、ＤＢアクセス情報取得部１１にて、ＣＲＵＤ図２１を読み込み、テスト対象のプログラムが有する各処理機能である各画面１，２が、ＤＢテーブル１，２に対して実行する処理内容であるアクセス種別を取得する（ステップＳ１、処理種別データ受付工程）。そして、取得した各画面１，２のアクセス種別を、画面入力値組合せ部１４に通知する。例えば、図５に示すＣＲＵＤ図２１を読み込んだ場合には、画面１によるＤＢテーブル１，２に対するアクセス種別は「検索（Ｒ）」であり、画面２によるＤＢテーブル１，２に対するアクセス種別は「作成（Ｃ）」である、という情報を取得して、画面入力値組合せ部１４に通知する。
【００６６】
続いて、情報処理装置１０は、画面入力項目取得部１２にて、画面項目仕様書２２を読み込み、各画面１，２に設定されている入力項目１，２と、各入力項目１，２への入力値の仕様を表す情報を取得する（ステップＳ２、入力可能値情報受付工程）。そして、取得した入力値の仕様を、画面入力値作成部１３に渡す。例えば、図４に示す２つの画面１，２の処理機能に関する仕様を読み込んだ場合には、画面１に、入力項目１，２という２つの入力項目があり、また、画面２に、入力項目１，２という２つの入力項目がある、という情報を取得する。そして、各入力項目１，２が選択式であるか、任意数値を入力可能な任意入力式であるか、という情報も取得する。さらに、選択式である場合には、選択可能な全ての選択情報を取得し、また、任意入力式である場合には、入力が有効な数値範囲や数値の種別（「整数」、「正の整数」など）を表す情報を取得する。
【００６７】
続いて、情報処理装置１０は、画面入力作成部１３にて、上記入力値の仕様に基づいて、各画面１，２の各入力項目１，２にそれぞれ入力する入力値を作成する（ステップＳ３、入力値作成工程）。例えば、入力項目が選択式である場合には、選択可能な全ての値を入力値として作成する。一方、入力項目が任意入力式である場合には、入力が有効であると設定された範囲の上限や下限などの境界値を入力値として作成する。なお、ここでは、図６に示すように、入力項目１に対する入力値して、入力値１１、入力値１２、入力値１３、を作成し、入力項目２に対する入力値として、入力値２１、画面入力値２２を作成したとする。
【００６８】
なお、上記ステップＳ２及びステップＳ３は、上述したステップＳ１よりも先に実行されていてもよい。つまり、ステップＳ１と、ステップＳ２及びＳ３との実行順序は、どちらが先でもよく、後述するステップＳ４よりも先に実行されていればよい。
【００６９】
続いて、情報処理装置１０は、画面入力値組合せ部１４にて、上述したように作成した入力値の組み合わせを作成する（ステップＳ４、入力値組合せ工程）。このとき、ＤＢアクセス情報取得部１１にて取得した各画面１，２のＤＢテーブル１，２に対するアクセス種別に応じて、その組合せ手法が異なる。例えば、画面１はアクセス種別が「検索（Ｒ）」であるため、図７に示すように、各入力項目１，２に対する入力値の全ての組合せを作成する。また、画面２はアクセス種別が「作成（Ｃ）」であるため、図８に示すように、各入力項目１，２に対する入力値を網羅する最少の組合せとして、少なくとも各入力値を１回使用した組み合わせを作成する。なお、処理機能のアクセス種別が、「更新（Ｕ）」、「削除（Ｄ）」の場合も、上記「作成（Ｃ）」のときの同様に、少なくとも各入力値を１回使用した組み合わせを作成する。
【００７０】
続いて、情報処理装置１０は、テスト実行部１５にてテスト対象であるプログラムを実行し、上述したように作成した入力値の組み合わせを各入力項目１，２に入力して、テストを実行する（ステップＳ５、テスト実行工程）。そして、情報処理装置１０は、実行したテストの結果と、予め用意されている正解値とを比較して、テストの成功／失敗を判定する（ステップＳ６、テスト判定工程）。その後は、テストの成否の結果を、情報処理装置１０のディスプレイに表示するなどして、テスト結果をテスト者に通知する。
【００７１】
以上のように、本実施形態によると、テスト対象となるプログラムの入力項目に、常に各入力値の全ての組み合わせを作成する必要がなく、データベースへのアクセス種別に応じて、入力値を網羅する入力値の組み合わせを作成している。従って、プログラムのテストの質の劣化を抑制しつつ、プログラムのテストデータ数を削減することができる。その結果、プログラムのテストの短縮化及びコストの低減を図ることができる。
【００７２】
＜実施形態２＞
次に、本発明の第２の実施形態を、図１０を参照して説明する。図１０は、本実施形態における情報処理装置の構成を示す機能ブロック図である。そして、本実施形態における情報処理装置１０は、上述した実施形態１のものとほぼ同様の構成を採っているため、以下では異なる構成について詳述する。
【００７３】
本実施形態における情報処理装置１０は、図１０に示すように、情報処理装置１０の演算装置に本発明である所定のプログラムが組み込まれることによって新たに構築された、入力項目関連指定部１７を備えている。
【００７４】
そして、上記入力関連指定部１７は、テスト対象となるプログラムが有する各画面１，２（処理機能）に設けられた入力項目１，２間に、関連があるか否かの指定を受け付ける。ここで、入力項目間１，２に関連があるとは、例えば、画面１，２（処理機能）が、複数の入力項目１，２にそれぞれ特定の入力値が入力されたときに、特定の処理を実行するよう構成されている場合をいう。一例を挙げると、上記プログラムの処理機能が、入力項目１に対して入力値１２、入力項目２に対して入力値２１が入力されると、上記入力値２１に所定の加工処理を施してから、データベースを更新する、という処理を実行する場合がある。なお、この入力項目間の関連の有無の指定は、例えば、テストオペレータによって入力される。そして、入力関連指定部１７は、「入力項目間に関連あり」との指定を受けると、かかる旨を画面入力組合せ部１４に通知する。
【００７５】
そして、本実施形態における画面入力値組合せ部１４は、上記入力関連指定部１７から通知を受けると、上記ＣＲＵＤ図２１による画面１，２（処理機能）のデータベースに対するアクセス種別がいずれであっても、画面入力値作成部１３にて作成された入力値の全ての組み合わせを作成する。なお、画面入力値組合せ部１４は、上述した入力関連指定部１７が上記通知を受けていない場合であっても、入力項目１，２間に関連があることを検出した場合には、自動的に入力値の全ての組み合わせを生成する。
【００７６】
これにより、上述したように、仮に処理機能のデータベースに対するアクセス種別が「作成（Ｃ）」であって、入力値の最少の組み合わせではなく、全ての組合せを作成するため、入力値１２と入力値２１との組合せも自動的に作成される。従って、上述した実施形態１では、データベースへのアクセス種別によっては入力値の最少の組み合わせが生成されたが、上記のようにテストが必要とされる組合せがある場合には、かかる組合せが自動的に補足され、漏れのないテストデータを作成することができる。その結果、テストオペレータが詳細な設定を行ってテストデータを補足する必要が無く、当該オペレータの負担を軽減することができる。
【００７７】
＜実施形態３＞
次に、本発明の第３の実施形態を、図１１を参照して説明する。図１１は、本実施形態における情報処理システムの構成を示す図である。
【００７８】
本実施形態における情報処理システムは、相互でデータ送受信を可能なよう接続されたテストデータ作成装置１１０と、プログラム実行装置１４０と、を備えている。
【００７９】
そして、テストデータ作成装置１１０は、上述した実施形態１，２における情報処理装置１０が有するテストデータ作成機能を実現するためのコンピュータである。具体的には、上述した情報処理装置１０が備えているものと同様のＤＢアクセス情報取得部１１１と、画面入力項目取得部１１２と、画面入力値作成部１１３と、画面入力値組合せ部１１４と、を備えている。なお、これら各部１１１，１１２，１１３，１１４は、テストデータ作成装置１１０に装備された演算装置に本発明である所定のプログラムが組み込まれることによって実現されている。
【００８０】
また、プログラム実行装置１４０は、上述した実施形態１，２における情報処理装置１０が有するテスト機能を実現するためのコンピュータである。具体的には、上述した情報処理装置１０が備えているものと同様のテスト実行部１４１と、テスト結果判定部１４２と、を備えている。なお、これら各部１４１，１４２は、プログラム装置１４０に装備された演算装置に本発明である所定のプログラムが組み込まれることによって実現されている。
【００８１】
そして、テストデータ作成装置１１０は、ＤＢアクセス情報取得部１１１にて上述同様のＣＲＵＤ図１２１を読み込み、また、画面入力項目取得部１１２にて上述同様の画面項目仕様書１２２を読み込む。そして、画面入力値作成部１１３にて各処理機能の入力項目に入力する入力値を作成して、画面入力値組合せ部１１４にて入力値の組み合わせを作成する。また、画面入力値組合せ部１１４にて、この作成した入力値の組み合わせを、プログラム実行装置１４０に送信する。
【００８２】
そして、プログラム実行装置１４０は、テスト実行部１４１にてテストデータ作成装置１１０から受け取った入力値の組み合わせを用いて、プログラムを実行し、データベース１２３に対するテスト処理を実行する。そして、テスト結果判定部１４２にて、テスト結果と予め用意した正解値１２４とを比較して、テストの成否を判定する。
【００８３】
なお、上述したテストデータ作成装置１１０は、テスト対象となるプログラムに入力するテストデータを作成するために、単独で用いられてもよい。
【産業上の利用可能性】
【００８４】
本発明は、プログラムのテストを実行する際に必要な入力値であるテストデータを作成する装置として利用することができ、産業上の利用可能性を有する。
【図面の簡単な説明】
【００８５】
【図１】本発明である情報処理装置の構成の概略を示す機能ブロック図である。
【図２】本発明である情報処理システムの構成の概略を示す機能ブロック図である。
【図３】本発明の実施形態１における情報処理装置の構成を示す機能ブロック図である。
【図４】テスト対象となるプログラムに入力値を入力する画面の一例を示す図である。
【図５】情報処理装置に入力されるＣＲＵＤ図の一例を示す図である。
【図６】情報処理装置にて作成される入力値の一例を示す図である。
【図７】情報処理装置にて作成される入力値の全ての組み合わせを示す図である。
【図８】情報処理装置にて作成される入力値の最少の組み合わせを示す図である。
【図９】情報処理装置の動作を示すフローチャートである。
【図１０】本発明の実施形態２における情報処理装置の構成を示す機能ブロック図である。
【図１１】本発明の実施形態３における情報処理システムの構成を示す機能ブロック図である。
【符号の説明】
【００８６】
１，１０  情報処理装置
２  処理種別データ受付手段
３  入力値組合せ手段
４  処理種別データ
５  プログラム実行装置
６  テスト実行手段
７  テスト反転手段
８  データベース
９  正解情報
１１，１１１  ＤＢアクセス情報取得部
１２，１１２  画面入力項目取得部
１３，１１３  画面入力値作成部
１４，１１４  画面入力値組合せ部
１５，１４１  テスト実行部
１６，１４２  テスト結果判定部
１７  入力項目関連指定部
２１，１２１  ＣＲＵＤ図
２２，１２２  画面項目仕様書
２３，１２３  ＤＢテーブル
２４，１２４  正解値
３１  検索画面（画面１）
３１ａ，３２ａ  入力項目１
３２  新規作成（追加）画面（画面２）
３１ｂ，３２ｂ  入力項目２
１１０  テストデータ作成装置
１４０  プログラム実行装置
【図１】
2010108030.tif 000003
【図２】
2010108030.tif 000004
【図３】
2010108030.tif 000005
【図４】
2010108030.tif 000006
【図５】
2010108030.tif 000007
【図６】
2010108030.tif 000008
【図７】
2010108030.tif 000009
【図８】
2010108030.tif 000010
【図９】
2010108030.tif 000011
【図１０】
2010108030.tif 000012
【図１１】
2010108030.tif 000013