(57)【要約】【課題】テスト対象のバッチＡＰのテスト工数を低減をする。【解決手段】処理実行部１４は、プログラムデータ記憶部２１から、テスト対象のバッチＡＰのデータを取り出して、プログラムテストを実行する。処理実行部１４は、最下位ステップから上位ステップに向けてロジック解析を行い、テスト対象のバッチＡＰに含まれる条件分岐の真／偽と、境界値とを取得して値候補情報を取得する。また、処理実行部１４は、各処理ステップの処理内容に基づいて、パス管理情報を取得する。そして、処理実行部１４は、取得した値候補情報とパス管理情報とに基づいて、テストデータを作成する。従って、プログラムロジックを網羅するテストデータが自動的に作成されるので、テストデータ作成工数が削減される。【選択図】図１
2005321892.tif 000002
【特許請求の範囲】
【請求項１】
データ処理を行うプログラムのロジックを検証するプログラムテスト支援装置において、
前記プログラムのロジックをステップ毎に解析するロジック解析部と、
前記ロジック解析部が解析したロジックの真偽を判定するための境界値を取得する境界値取得部と、
前記ロジック解析部が解析したロジックに従って行われるデータ処理の内容を示すデータ処理情報を取得するデータ処理情報取得部と、
前記データ処理情報取得部が取得したデータ処理情報が示すデータ処理が、前記ロジック解析部が解析したロジックに従って行われることを検証するためのテストデータを、前記境界値取得部が取得した境界値に基づいて作成するテストデータ作成部と、を備えた、
ことを特徴とするプログラムテスト支援装置。
【請求項２】
前記テストデータ作成部は、前記境界値取得部が取得した境界値に基づいて、前記ロジックを真とするための値と偽とするための値とを値候補としてテストデータを作成する、
ことを特徴とする請求項１に記載のプログラムテスト支援装置。
【請求項３】
前記テストデータ作成部が作成したテストデータと、前記テストデータを前記プログラムに適用したときに変化した出力データの変化前後のデータと、の対応関係を示す入出力対応情報を生成する入出力対応情報生成部を備えた、
ことを特徴とする請求項１又は２に記載のプログラムテスト支援装置。
【請求項４】
前記ロジック解析部は、前記プログラムのロジックを各ステップ毎に、最下位ステップから上位ステップに向けて解析する、
ことを特徴とする請求項１乃至３のいずれか１項に記載のプログラムテスト支援装置。
【請求項５】
前記ロジック解析部の解析結果を表示する表示部を備えた、
ことを特徴とする請求項１乃至４のいずれか１項に記載のプログラムテスト支援装置。
【請求項６】
データ処理を行うプログラムのロジックをステップ毎に解析するステップと、
解析したロジックの真偽を判定するための境界値を取得するステップと、
解析したロジックに従って行われるすべてのデータ処理の内容を示すデータ処理情報を取得するステップと、
前記取得したデータ処理情報に従ってデータ処理が前記解析したロジックに従って行われることを検証するためのテストデータを、前記取得した境界値に基づいて作成するステップと、を備えた、
ことを特徴とするプログラムテスト支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムテスト支援装置及びプログラムテスト支援方法に関するものである。
【背景技術】
【０００２】
従来より、バッチアプリケーションプログラム（以下、「バッチＡＰ」と記す。）の単体テスト工程においては、プログラム品質の向上を図るため、プログラムのテストが行われる。
【０００３】
プログラムテストを行うには、対象となるプログラムに対する入力、出力の関係に主眼をおいたテストデータを作成し、このテストデータをプログラムに適用することが一般的に行われている。
【０００４】
しかし、このようなテストデータを人手で作成するには、時間を要するため、自動的にテストデータを作成するプログラムテスト支援装置がある（例えば、特許文献１参照）。
【０００５】
また、プログラムテスト支援装置として、プログラム中のすべての分岐命令とその分岐条件を示すデータを抽出し、この分岐命令、分岐条件データに基づいて逆トレース処理を行うものもある（例えば、特許文献２参照）。
【特許文献１】特開平８−２３５０２５号公報（第３，４頁、図１，２）
【特許文献２】特開平４−２６０９４１号公報（第２頁、図２）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、バッチＡＰにおけるテスト工程において投入される入力データの数は非常に多い。このような大量のデータを扱うプログラムロジックをすべて網羅するテストデータを作成するのは、プログラムテスト支援装置であっても容易でない。また、大量の出力データについて、それぞれ、変化があったもの、なかったものを、ひとつづつ検証していくとすると、結果として、検証に多くの工数を要することになる。
【０００７】
また、特許文献２のもののように、全分岐情報に基づいてプログラムの全経路が予め確定したとしても、テストデータをうまく設定しなければ、データベースを用いたアプリケーションプログラムへの適用は難しい。
【０００８】
本発明は、このような従来の問題点に鑑みてなされたもので、プログラムロジックを網羅するテストデータを作成することが可能なプログラムテスト支援装置及びプログラムテスト支援方法を提供することを目的とする。
また、本発明は、作成したテストデータを用いてプログラムテストを行うことにより、プログラムテストの工数を低減することが可能なプログラムテスト支援装置及びプログラムテスト支援方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
この目的を達成するため、本発明の第１の観点に係るプログラムテスト支援装置は、
データ処理を行うプログラムのロジックを検証するプログラムテスト支援装置において、
前記プログラムのロジックをステップ毎に解析するロジック解析部と、
前記ロジック解析部が解析したロジックの真偽を判定するための境界値を取得する境界値取得部と、
前記ロジック解析部が解析したロジックに従って行われるデータ処理の内容を示すデータ処理情報を取得するデータ処理情報取得部と、
前記データ処理情報取得部が取得したデータ処理情報が示すデータ処理が、前記ロジック解析部が解析したロジックに従って行われることを検証するためのテストデータを、前記境界値取得部が取得した境界値に基づいて作成するテストデータ作成部と、を備えたことを特徴とする。
【００１０】
前記テストデータ作成部は、前記境界値取得部が取得した境界値に基づいて、前記ロジックを真とするための値と偽とするための値とを値候補としてテストデータを作成するようにしてもよい。
【００１１】
前記テストデータ作成部が作成したテストデータと、前記テストデータを前記プログラムに適用したときに変化した出力データの変化前後のデータと、の対応関係を示す入出力対応情報を生成する入出力対応情報生成部を備えるようにしてもよい。
【００１２】
前記ロジック解析部は、前記プログラムのロジックを各ステップ毎に、最下位ステップから上位ステップに向けて解析するようにしてもよい。
【００１３】
前記ロジック解析部の解析結果を表示する表示部を備えてもよい。
【００１４】
本発明の第２の観点に係るプログラムテスト支援方法は、
データ処理を行うプログラムのロジックをステップ毎に解析するステップと、
解析したロジックの真偽を判定するための境界値を取得するステップと、
解析したロジックに従って行われるすべてのデータ処理の内容を示すデータ処理情報を取得するステップと、
前記取得したデータ処理情報に従ってデータ処理が前記解析したロジックに従って行われることを検証するためのテストデータを、前記取得した境界値に基づいて作成するステップと、を備えたことを特徴とする。
【発明の効果】
【００１５】
本発明によれば、プログラムテストの工数を低減することができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施の形態に係るプログラムテスト支援装置を図面を参照して説明する。尚、以下の実施形態では、プログラムテスト支援装置をＲＤＢＭＳ（Relational DataBase Management System）を利用したバッチＡＰの単体テスト工程について適用した場合について説明する。
【００１７】
（実施形態１）
実施形態１に係るプログラムテスト支援装置の構成を図１に示す。
実施形態１に係るプログラムテスト支援装置１は、１台又は複数のコンピュータによって構成されたものであり、入力部１１と、記憶部１２と、表示部１３と、処理実行部１４と、を備える。
【００１８】
入力部１１は、キーボード、マウス等、データを入力するためのものである。
記憶部１２は、データを記憶するものであり、例えば、ＨＤＤ（Hard Disk Drive）によって構成される。記憶部１２は、プログラムデータ記憶部２１と、入出力データ記憶部２２と、データ処理情報記憶部２３と、値候補情報記憶部２４と、テストデータ記憶部２５と、を備える。
【００１９】
プログラム記憶部２１は、プログラムデータを記憶するものであり、テスト対象のプログラムとして、ＲＤＢＭＳを利用した図２に示すような入出力処理に関するバッチＡＰのデータを記憶する。
【００２０】
図２に示す入出力処理のバッチＡＰは、例えば、図３に示すような入力表Ａから出力表Ｂへのデータの入出力処理を行うためのものである。即ち、この入出力処理は、ステップＳ１２の条件に従って入力表ＡのデータACOL2(n)を出力表ＢのCOL1列に追加したり、出力表ＢのCOL1列のデータBCOL1(n)を入力表ＡのデータACOL2(n)に更新したりするものである。
【００２１】
この図３に示す入力表Ａは、入力データを表形式で表したものであり、COL1，COL2列に、それぞれ、データが記述されている。入力表Ａにおいて、COL1列のデータｎは、入力データの番号を示し、COL2列のデータACOL2(n)は、COL2列のｎ番目の入力データを示す。図３に示す例では、入力表Ａの１番目の入力データACOL2(1)は、９であることを示す。尚、COL1列のデータは、ロジック解析には無関係であるので、任意のデータでよい。
【００２２】
出力表Ｂは、物理アドレスを用いてCOL1列に出力データを記述した表である。出力表Ｂにおいて、COL1列のデータBCOL1(n)は、物理アドレスをｎとした場合の出力データを示すものであり、図３に示す例では、物理アドレス１０００１の出力データBCOL1(1)は、１であることを示す。
尚、プログラム記憶部２１は、後述するテスト工程支援処理のプログラムデータも記憶する。
【００２３】
入出力データ記憶部２２は、入力データ、出力データを、図３に示す入力表Ａ，出力表Ｂの形態で記憶するものである。
【００２４】
データ処理情報記憶部２３は、データ処理情報を記憶するものである。データ処理情報は、データ処理の内容を示す情報であり、処理実行部１４によって取得される情報である。例えば、テスト対象のプログラムが図２に示すような入出力処理に関するバッチＡＰの場合、データ処理情報記憶部２３は、データ処理情報として、入出力データのパス（経路）を示すパス管理情報を記憶する。図４に、このパス管理情報の一例を示す。このパス管理情報「表Ａ_COL2(n)→表Ｂ_COL1(n)」は、表ＡのCOL2列の第ｎ番目のデータCOL2(n)を表ＢのCOL1列の第ｎ番目に出力するという内容を示す。
【００２５】
値候補情報記憶部２４は、値候補情報を記憶するものである。値候補情報は、判断処理ステップにおいて、ロジックの真偽を判定するために用いられる境界値を基準としてテストデータの候補となる値候補を示す情報である。
【００２６】
テストデータは、データ処理が、解析したロジックに従って行われることを検証するためのデータであり、処理実行部１４によって作成されるデータである。図２に示すバッチＡＰは、ステップＳ１２において、境界値を１０として、条件分岐を行う。この場合、テストデータの値候補は、境界値１０を基準として１０、１１になる。値候補情報記憶部２４は、図５に示すような値候補情報を記憶する。図５に示す値候補情報は、表ＡのCOL2列のデータACOL2(n)の値候補は、１０、１１であることを示す。
【００２７】
デストデータ記憶部２５は、処理実行部１４が作成したテストデータを記憶するものである。テスト対象のプログラムが図２に示すバッチＡＰであるとすると、処理実行部１４は、表Ａに対するテストデータとして、図６に示すようなデータを作成する。図６に示すテストデータは、１０，１１であることを示す。
【００２８】
表示部１３は、テスト対象のバッチＡＰのロジックの解析結果を表示するものである。解析に成功した場合、表示部１３は、その旨の表示を行う。解析に失敗した場合、表示部１３は、解析に失敗した原因をテスト実施者に知らしめるため、解析対象の条件式を表示する。
【００２９】
処理実行部１４は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）等を備えたものであり、プログラムテスト支援装置１の各部を制御する。
【００３０】
また、処理実行部１４は、図２に示すテスト対象のバッチＡＰを、ステップ毎にロジック解析を行う。
【００３１】
具体的には、まず、処理実行部１４は、テスト対象のバッチＡＰに含まれる各ステップの処理内容を解読する。処理実行部１４は、解読対象のステップがデータ処理の内容を示すものであれば、そのデータ処理の内容を示す情報を取得する。処理実行部１４は、テスト対象のプログラムがＲＤＢＭＳを利用したバッチＡＰの場合、取得したデータ処理情報として、図４に示すようなパス管理情報を取得してデータ処理情報記憶部２３に記憶する。
【００３２】
また、ステップが条件分岐を行う判断ステップであれば、処理実行部１４は、その判断ステップの内容を解読し、条件分岐の真／偽と、その真／偽を判定するための境界値と、を取得する。そして、処理実行部１４は、取得した境界値を基準としてテストデータの値候補を作成し、この値候補情報を記憶部１２の値候補情報記憶部２４に記憶する。
【００３３】
処理実行部１４は、テスト対象のプログラムが図２に示すようなバッチＡＰであって、入力表Ａに対するテストデータを作成する場合、このバッチＡＰの最下位ステップから上位ステップに向けて、ロジック解析を行う。
【００３４】
処理実行部１４は、すべてのステップについて、このような処理を行うことにより、ロジック解析の結果に基づいて、すべてのプログラムロジックを網羅するテストデータを作成する。そして、処理実行部１４は、作成したテストデータを記憶部１２のテストデータ記憶部２５に記憶する。
【００３５】
次に実施形態１に係るプログラムテスト支援装置１の動作を説明する。
処理実行部１４は、プログラムデータ記憶部２１から、予め記憶された入出力処理に関するバッチＡＰのデータを、テスト対象のプログラムデータとして取り出し、図７に示すフローチャートに従って、テスト工程支援処理を実行する。
【００３６】
処理実行部１４は、バッチＡＰの最下位ステップを対象ステップとする（ステップＳ２１）。
処理実行部１４は、対象ステップが判断処理ステップか否かを判定する（ステップＳ２２）。
【００３７】
対象ステップが判断処理ステップではないと判定した場合（ステップＳ２２においてＮｏ）、処理実行部１４は、処理内容を解読し、解読結果に基づいてパス管理情報を取得する（ステップＳ２３）。
【００３８】
処理実行部１４は、取得したパス管理情報をデータ処理情報記憶部２３に記憶する（ステップＳ２４）。
【００３９】
一方、対象ステップが判断処理ステップであると判定した場合（ステップＳ２２においてＹｅｓ）、処理実行部１４は、条件分岐の真／偽を解読し、その真偽を判定するための境界値を取得する（ステップＳ２５）。
【００４０】
処理実行部１４は、取得した境界値を基準として、条件を真とする値と偽とする値を値候補として、その値候補情報を記憶部１２の値候補情報記憶部２４に記憶する（ステップＳ２６）。
【００４１】
処理実行部１４は、直上に対象とすべきステップがあるか否かを判定する（ステップＳ２７）。
【００４２】
直上に対象とすべきステップがあると判定した場合（ステップＳ２７においてＹｅｓ）、処理実行部１４は、その直上のステップを対象ステップとする（ステップＳ２８）。
そして、処理実行部１４は、再度、ステップＳ２２〜Ｓ２６の処理を実行する。
【００４３】
直上に対象とすべきステップがないと判定した場合（ステップＳ２７においてＮｏ）、処理実行部１４は、未対象のステップがあるか否かを判定する（ステップＳ２９）。
【００４４】
未対象のステップがあると判定した場合（ステップＳ２９においてＹｅｓ）、処理実行部１４は、その未対象のステップを対象ステップとする（ステップＳ２８）。
そして、処理実行部１４は、ステップＳ２２〜Ｓ２８の処理を再度実行する。  
【００４５】
一方、未対象のステップがないと判定した場合（ステップＳ２９においてＮｏ）、処理実行部１４は、データ処理情報記憶部２３と値候補情報記憶部２４とがそれぞれ記憶する情報に基づいて入力表Ａに対するテストデータを作成する（ステップＳ３０）。
【００４６】
処理実行部１４は、解析が成功したか否かを判定する（ステップＳ３１）。
解析が成功したと判定した場合（ステップＳ３１においてＹｅｓ）、処理実行部１４は、解析が成功した旨の表示を表示部１３に行わせる（ステップＳ３２）。
【００４７】
解析が失敗したと判定した場合（ステップＳ３１においてＮｏ）、処理実行部１４は、解析対象の条件式を表示部１３に表示させる（ステップＳ３３）。
そして、処理実行部１４は、このテスト工程支援処理を終了させる。
【００４８】
次に、このテスト工程支援処理の具体的な内容を説明する。
処理実行部１４は、図２に示す入出力処理に関するバッチＡＰのデータをプログラムデータ記憶部２１から読み出して、その最下位ステップとしてステップＳ１３を対象ステップとする（ステップＳ２１の処理）。
【００４９】
このステップＳ１３は、データ処理に関するステップであり、処理実行部１４は、この内容を解読する。このステップＳ１３の処理は、表ＢのCOL1列に対して、表ＡのCOL2のデータACOL2(n)を出力するという処理である。
【００５０】
このため、処理実行部１４は、このパス管理情報「表Ａ_COL2(n)→出力表Ｂ_COL1(n)」をデータ処理情報記憶部２３に記憶する（ステップＳ２３，Ｓ２４の処理）。尚。この最下位ステップＳ１３において、処理実行部１４は、表Ａが入力表であるか否かを判断できない。このため、処理実行部１４は、「入力表Ａ」ではなく「表Ａ」としてパス管理情報をデータ処理情報記憶部２３に記憶する。
【００５１】
次に、処理実行部１４は、直上にあるステップＳ１２を対象とする（ステップＳ２８の処理）。このステップＳ１２は、判断処理ステップである。ステップＳ１２の分岐条件は、表ＡのデータACOL2(n)が１０より大きいか否かであり、境界値は１０である。
【００５２】
処理実行部１４は、この境界値１０を取得する（ステップＳ２５の処理）。処理実行部１４は、この境界値１０を基準としてテストデータの値候補情報として、１０，１１を境界値情報記憶部２４に記憶する（ステップＳ２６の処理）。
【００５３】
次に、処理実行部１４は、直上にあるステップＳ１１を対象とする（ステップＳ２８の処理）。このステップ１１の処理は、入力表Ａ_COL2列のデータACOL2(n)を読み込む処理である。
【００５４】
処理実行部１４は、ここで、表Ａが入力表であることを判別し、データ処理情報記憶部２３に記憶した図４に示すようなパス管理情報「表Ａ_COL2(n)→出力表Ｂ_COL1(n)」を図８に示すようなパス管理情報「入力表Ａ_COL2(n)→出力表Ｂ_COL1(n)」に書き換える。
【００５５】
次に、処理実行部１４は、ステップＳ１４がまだ未対象であるので、このステップＳ１４を対象ステップとする（ステップＳ２９、Ｓ２８の処理）。
【００５６】
このステップＳ１４は、データ処理に関するステップであり、処理実行部１４は、この内容を解読する。このステップＳ１４の処理は、出力表ＢのCOL1列のデータBCOL1(n)に対して、入力表ＡのCOL2列のデータACOL2(n)を出力するという処理である。処理実行部１４は、「入力表Ａ_COL2(n)→出力表Ｂ_COL1(n)」というパス管理情報を取得する。
【００５７】
しかし、このパス管理情報は、図８に示すパス管理情報と同一になる。このため、処理実行部１４は、ステップＳ１４を解読することによって得られたパス管理情報を採用しないこととする。
【００５８】
このようにして、処理実行部１４は、図８に示すようなパス管理情報と、図５に示すような値候補情報と、を作成する。
【００５９】
そして、処理実行部１４は、データ処理情報記憶部２３と値候補情報記憶部２４とがそれぞれ記憶する情報に基づいて、図６に示すような入力表Ａに対するテストデータを作成する。
【００６０】
以上説明したように、本実施形態１によれば、処理実行部１４は、テスト対象のバッチＡＰを、最下位ステップから上位ステップに向けて、ステップ毎にロジック解析を行うようにした。そして、処理実行部１４は、パス管理情報と値候補情報とを取得し、取得したパス管理情報と値候補情報とに基づいて、テストデータを生成するようにした。
【００６１】
従って、すべての経路を取得する必要もなく、１回のロジック解析により、プログラムロジックのすべてを網羅するテストデータを作成することができ、テストデータ作成工数を低減することができる。
【００６２】
また、プログラムロジック解析の結果、バッチＡＰのステップの処理に不具合があった場合、その対象ステップの条件式が表示されるので、どこで解析に失敗したのかを、テスト実施者が知ることができ、また、プログラムテストの項目漏れ、網羅度を確認することができる。
【００６３】
また、検証される出力データが変化しても、網羅度は低下せず、また、工数も増えず、出力データの変化に柔軟に対応することができる。そして、プログラムテストの品質を維持することができる。
【００６４】
このため、データベースを用いたアプリケーションで使用されているＳＱＬ文にも解析対象として拡張することができる。そして、そのテストデータを作成することができるため、特にデータベースを用いたアプリケーションには、好ましく適用することができる。
【００６５】
（実施形態２）
実施形態２に係るプログラムテスト支援装置は、入力データをテスト対象のプログラムに投入し、プログラムの実行前後で変化した出力データの差分と、投入した入力データと、の関係を示す入出力対応表を作成するようにしたものである。尚、実施形態２においても、例として図２に示すバッチＡＰを用いるものとする。
【００６６】
実施形態２に係るプログラムテスト支援装置１の処理実行部１４は、図９に示すような入出力対応表を作成する。この入出力対応表は、入力データと変化した出力データの変化前後のデータとの対応関係を示すものである。
【００６７】
処理実行部１４は、この変更点を取得して、図９に示すような入出力対応表にこの変更点を記述する。この入出力対応表の（１）欄は、出力データが変化したときの順番を示す番号が書き込まれる欄である。（２）、（３）欄は、それぞれ、入力表ＡのCOL1列のデータ、COL2列のデータが書き込まれる欄である。（４）欄は、更新前、更新後、追加といった変化のＴｙｐｅが書き込まれる欄である。（５）欄は、出力表ＢのCOL1列の変化したデータが書き込まれる欄である。テストデータ記憶部２５は、この入出力対応表を記憶する。
【００６８】
次に実施形態２に係るプログラムテスト支援装置１の動作を説明する。
処理実行部１４は、図１０に示すフローチャートに従って、差分取得処理を実行する。
【００６９】
処理実行部１４は、出力表Ｂのバックアップファイルを作成する（ステップＳ４１）。
処理実行部１４は、入力表Ａに１件だけテストデータを投入する（ステップＳ４２）。
【００７０】
処理実行部１４は、テスト対象のバッチＡＰを実行する（ステップＳ４３）。
処理実行部１４は、出力表Ｂのバックアップファイルの物理アドレスのコピーと出力表Ｂの物理アドレスとをキーとして、出力表Ｂのバックアップファイルと出力表Ｂとを比較する。処理実行部１４は、比較した結果、その差分を取得し、その差分を変更点として取得する（ステップＳ４４）。
【００７１】
処理実行部１４は、投入した入力データと入力データに対する変更点との対応関係を示す入出力対応表を作成する（ステップＳ４５）。
処理実行部１４は、入力すべきテストデータがまだあるか否かを判定する（ステップＳ４６）。
【００７２】
入力すべきテストデータがあると判定した場合（ステップＳ４６においてＹｅｓ）、処理実行部１４は、ステップＳ４２〜Ｓ４５の処理を、再度、実行する。
入力すべきテストデータがないと判定した場合（ステップＳ４６においてＮｏ）、処理実行部１４は、表示部１３に、入出力対応表を表示させる（ステップＳ４７）。
そして、処理実行部１４は、この差分取得処理を終了させる。
【００７３】
次に、この差分取得処理の具体的な内容を説明する。
処理実行部１４は、図３に示すような出力表Ｂのバックアップファイルを作成する（ステップＳ４１の処理）。処理実行部１４は、図６に示すテストデータの表のCOL1列「１」に対応するCOL2列のテストデータ「１０」を投入する（ステップＳ４２の処理）。
【００７４】
処理実行部１４がバッチＡＰを実行すると、図１１に示すように、物理アドレス「１０００１」に対応する格納場所に格納されているCOL1列のデータは、「１」から「１０」に変化する。
【００７５】
処理実行部１４は、この変更点を取得して、図９に示すような入出力対応表の（１）〜（５）欄に、それぞれ、データを書き込み、図１２に示すような入出力対応表を作成する。
【００７６】
次に、処理実行部１４は、図６に示すテストデータの表のCOL1列「２」に対応するCOL2列のデータ「１１」を投入する（ステップＳ４２の処理）。
【００７７】
処理実行部１４がバッチＡＰを実行すると、図１３に示すように、物理アドレス「１０００５」に対応するCOL1列に、入力表ＡのCOL2列のデータ「１１」が追加される。
【００７８】
処理実行部１４は、この変更点を取得して、図１２に示す入出力対応表の（１）〜（５）欄に、この変更点を追加し、図１４に示すような入出力対応表を作成する。
【００７９】
入力すべき入力データがなくなると、処理実行部１４は、図１４に示す入出力対応表を表示部１３に表示させる。
【００８０】
以上説明したように、本実施形態２によれば、処理実行部１４は、実施形態１で作成したパス管理情報と値候補情報とに基づいて、プログラムの実行前後で変化した出力データの差分と、投入した入力データと、の関係を示す１つの入出力対応表を作成するようにした。
【００８１】
従って、入力データに対する出力データの変化を分かりやすく表示することができる。そして、この入出力対応表に従ってすぐにテスト結果を検証することができ、テスト結果検証工数を削減することができる。
【００８２】
尚、本発明を実施するにあたっては、種々の形態が考えられ、上記実施の形態に限られるものではない。
例えば、上記実施形態２では、入力表Ａのデータを１件ずつ、バッチＡＰに投入するようにした。しかし、入力表Ａのすべてのデータを、まとめてバッチＡＰに投入してもよい。
【００８３】
このようにすることにより、入力データの組み合わせにより出力データが異なる場合があっても、１回の処理で入出力関係を決定することができる。
【００８４】
記憶部１２は、１つのＨＤＤ等のハードウェアによって構成されたものであってもよいし、複数のハードウェアによって構成されたものであってもよく、各記憶部毎にハードウェアを備えるようにしてもよい。
【００８５】
上記実施形態では、プログラムテスト支援装置をＲＤＢＭＳを利用したバッチＡＰの単体テスト工程に適用した場合について説明した。しかし、プログラムテスト支援装置をＲＤＢＭＳを利用したバッチＡＰ以外の単体テスト工程についても適用することができる。
【図面の簡単な説明】
【００８６】
【図１】本発明の実施形態１に係るプログラムテスト支援装置の構成を示すブロック図である。
【図２】テスト対象のプログラムの一例として、ＲＤＢＭＳを利用した入出力処理に関するバッチＡＰの内容を示すフローチャートである。
【図３】図２に示す入出力処理に関するバッチＡＰに関する動作を示す説明図である。
【図４】図１のデータ処理情報記憶部が記憶するパス管理情報を示す説明図である。
【図５】図１の値候補情報記憶部が記憶する値候補情報を示す説明図である。
【図６】図１のテストデータ記憶部が記憶するテストデータを示す説明図である。
【図７】図１の処理実行部が実行するテスト工程支援処理の内容を示すフローチャートである。
【図８】図１の処理実行部が書き換えたパス管理情報を示す説明図である。
【図９】本発明の実施形態２に係る処理実行部が記述する入出力対応表を示す説明図である。
【図１０】図１の処理実行部が実行する差分取得処理の内容を示すフローチャートである。
【図１１】図１の処理実行部が実行する差分取得処理の具体的な内容（１）を示す説明図である。
【図１２】図１の処理実行部が作成した入出力対応表（１）を示す説明図である。
【図１３】図１の処理実行部が実行する差分取得処理の具体的な内容（２）を示す説明図である。
【図１４】図１の処理実行部が作成した入出力対応表（２）を示す説明図である。
【符号の説明】
【００８７】
１    プログラムテスト支援装置
１１  入力部
１２  記憶部
１３  表示部
１４  処理実行部
２１  プログラムデータ記憶部
２２  入出力データ記憶部
２３  データ処理情報記憶部
２４  値候補情報記憶部
２５  テストデータ記憶部
【図１】
2005321892.tif 000003
【図２】
2005321892.tif 000004
【図３】
2005321892.tif 000005
【図４】
2005321892.tif 000006
【図５】
2005321892.tif 000007
【図６】
2005321892.tif 000008
【図７】
2005321892.tif 000009
【図８】
2005321892.tif 000010
【図９】
2005321892.tif 000011
【図１０】
2005321892.tif 000012
【図１１】
2005321892.tif 000013
【図１２】
2005321892.tif 000014
【図１３】
2005321892.tif 000015
【図１４】
2005321892.tif 000016