(57)【要約】【課題】プログラムのテストデータ自動生成【解決手段】テストデータを構成する複数の項目情報／該項目情報が漢字又は数字等かを示す属性情報／項目情報のレコード長とを含むテストデータ仕様情報を複数格納する仕様書ファイル部１０８と、テストデータの属性情報及びレコード長に対応した変数を含む複数の項目属性パラメータ情報を格納する項目属性パラメータファイル部１０９とを備え、仕様書ファイル部１０８から抽出したテストデータ仕様情報の複数の項目情報を該項目情報のレコード長に従って内部テーブル部に設定し、この内部テーブル部の複数の項目情報に、項目属性パラメータファイル部１０９から抽出した項目属性パラメータ情報の変数に従ったデータを割り当てることにより、テストデータを生成するテストデータ作成システム。【選択図】図１
2009289083.tif 000002
【特許請求の範囲】
【請求項１】
テストデータを構成する複数の項目情報と、該項目情報が漢字又は数字又は文字か否かの属性を示す属性情報と、前記項目情報のレコード長とを含むテストデータ仕様情報を複数格納する仕様書ファイル部と、
テストデータの属性情報及びレコード長に対応した変数を含む複数の項目属性パラメータ情報を格納する項目属性パラメータファイル部と、
前記仕様書ファイル部に格納したテストデータ仕様情報及び前記項目属性パラメータファイル部に格納した項目属性パラメータ情報を参照してコンピュータシステムのテストデータを内部テーブル部に生成する制御部とを備えるテストデータ作成システムであって、
前記制御部が、
前記仕様書ファイル部からテストデータ仕様情報を抽出する第１工程と、
該第１工程により抽出したテストデータ仕様情報の属性情報及びレコード長に対応した複数の項目属性パラメータ情報を項目属性パラメータファイル部から抽出する第２工程と、
前記第１工程により抽出したテストデータ仕様情報の複数の項目情報を該項目情報のレコード長に従って前記内部テーブル部に設定する第３工程と、
該第３工程により設定した内部テーブル部の複数の項目情報に、前記該第２工程により抽出した項目属性パラメータ情報の変数に従ったデータを割り当てることによりテストデータを生成する第４工程とを実行するテストデータ作成システム。
【請求項２】
前記制御部が、
前記第４工程において、第２工程により抽出した項目属性パラメータ情報の項目情報が漢字又は数字又は文字かの属性判定を行う請求項１記載のテストデータ作成システム。
【請求項３】
テストデータを構成する複数の項目情報と、該項目情報が漢字又は数字又は文字か否かの属性を示す属性情報と、前記項目情報のレコード長とを含むテストデータ仕様情報を複数格納する仕様書ファイル部と、
テストデータの属性情報及びレコード長に対応した変数を含む複数の項目属性パラメータ情報を格納する項目属性パラメータファイル部と、
前記仕様書ファイル部に格納したテストデータ仕様情報及び前記項目属性パラメータファイル部に格納した項目属性パラメータ情報を参照してコンピュータシステムのテストデータを内部テーブル部に生成する制御部とを備えるコンピュータシステムのテストデータ作成方法であって、
前記制御部に、
前記仕様書ファイル部からテストデータ仕様情報を抽出する第１工程と、
前記第１工程により抽出したテストデータ仕様情報の複数の項目情報を該項目情報のレコード長に従って前記内部テーブル部に設定する第３工程と、
該第３工程により設定した内部テーブル部の複数の項目情報に、前記該第２工程により抽出した項目属性パラメータ情報の変数に従ったデータを割り当てることによりテストデータを生成する第４工程とを実行させるテストデータ作成方法。
【請求項４】
前記制御部に、
前記第４工程において、第２工程により抽出した項目属性パラメータ情報の項目情報が漢字又は数字又は文字かの属性判定を実行させる工程を含む請求項３記載のテストデータ作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、開発プログラムをテストする場合に必要となるテストデータを容易に作成することができるテストデータ作成システム及びテストデータ作成方法に関する。
【背景技術】
【０００２】
一般にプログラムを開発する開発工程においては、開発中のプログラムが所定の機能を果たすことができるか並びにバグ等を検査するため、開発中プログラムに使用するテストデータを作成する必要がある。このテストデータを作成する技術が記載された文献としては、下記特許文献１が挙げられ、この特許文献１には、テストデータを作成する為の条件を指示するパラメータファイルを読み込み、この内容を解析し、次に、解析結果に基づいてレコードを構成するエリアごとにテストデータを発生させ、更に、合成して必要とするレコードフォーマット形式でテストレコードを作成し、これを指定されたファイルに書き込むことによって、汎用性を有し、効率的なテストデータを自動的に作成することが記載されている。
【特許文献１】特開平５−３５５３２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
前述の従来技術によるテストデータ作成方法は、データ属性情報（文字タイプ、項目長、開始位置等）をオペレータがパラメータの入力項目として入力しているため、入力誤りにより不正なテストデータを作成する可能性があると言う不具合があった。
【０００４】
本発明の目的は、汎用のコンピュータシステムを用いてテストデータを誤りなく容易に作成することができるテストデータ作成システム及びテストデータ作成方法を提供することである。
【課題を解決するための手段】
【０００５】
前記目的を達成するために本発明は、テストデータを構成する複数の項目情報と、該項目情報が漢字又は数字又は文字か否かの属性を示す属性情報と、前記項目情報のレコード長とを含むテストデータ仕様情報を複数格納する仕様書ファイル部と、
テストデータの属性情報及びレコード長に対応した変数を含む複数の項目属性パラメータ情報を格納する項目属性パラメータファイル部と、
前記仕様書ファイル部に格納したテストデータ仕様情報及び前記項目属性パラメータファイル部に格納した項目属性パラメータ情報を参照してコンピュータシステムのテストデータを内部テーブル部に生成する制御部とを備えるテストデータ作成システムであって、
前記制御部が、
前記仕様書ファイル部からテストデータ仕様情報を抽出する第１工程と、
該第１工程により抽出したテストデータ仕様情報の属性情報及びレコード長に対応した複数の項目属性パラメータ情報を項目属性パラメータファイル部から抽出する第２工程と、
前記第１工程により抽出したテストデータ仕様情報の複数の項目情報を該項目情報のレコード長に従って前記内部テーブル部に設定する第３工程と、
該第３工程により設定した内部テーブル部の複数の項目情報に、前記該第２工程により抽出した項目属性パラメータ情報の変数に従ったデータを割り当てることによりテストデータを生成する第４工程とを実行することを第１の特徴とする。
【０００６】
また本発明は、前記テストデータ作成システムにおいて、前記制御部が、前記第４工程において、第２工程により抽出した項目属性パラメータ情報の項目情報が漢字又は数字又は文字かの属性判定を行うことを第２の特徴とする。
【０００７】
更に本発明は、テストデータを構成する複数の項目情報と、該項目情報が漢字又は数字又は文字か否かの属性を示す属性情報と、前記項目情報のレコード長とを含むテストデータ仕様情報を複数格納する仕様書ファイル部と、
テストデータの属性情報及びレコード長に対応した変数を含む複数の項目属性パラメータ情報を格納する項目属性パラメータファイル部と、
前記仕様書ファイル部に格納したテストデータ仕様情報及び前記項目属性パラメータファイル部に格納した項目属性パラメータ情報を参照してコンピュータシステムのテストデータを内部テーブル部に生成する制御部とを備えるコンピュータシステムのテストデータ作成方法であって、
前記制御部に、
前記仕様書ファイル部からテストデータ仕様情報を抽出する第１工程と、
前記第１工程により抽出したテストデータ仕様情報の複数の項目情報を該項目情報のレコード長に従って前記内部テーブル部に設定する第３工程と、
該第３工程により設定した内部テーブル部の複数の項目情報に、前記該第２工程により抽出した項目属性パラメータ情報の変数に従ったデータを割り当てることによりテストデータを生成する第４工程とを実行させることを第３の特徴とする。
【０００８】
また本発明は、前記テストデータ作成方法において、前記制御部に、前記第４工程において、第２工程により抽出した項目属性パラメータ情報の項目情報が漢字又は数字又は文字かの属性判定を実行させる工程を含むことを第４の特徴とする。
【発明の効果】
【０００９】
本発明によるテストデータ作成システム及びテストデータ作成方法は、制御部が、抽出したテストデータ仕様情報の複数の項目情報を該項目情報のレコード長に従って前記内部テーブル部に設定し、この内部テーブル部の複数の項目情報に、前記抽出した項目属性パラメータ情報の変数に従ったデータを割り当てることにより、テストデータを生成することができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明によるテストデータ作成方法を適用したテストデータ作成システムの一実施形態を図面を参照して詳細に説明する。
図１は本実施形態によるテストデータ作成システムの全体構成図、図２Ａ〜図２Ｄは本実施形態による項目属性パラメータ情報作成及びＣＳＶ形式ガイドファイル作成に関する流れ図、図３Ａ〜図３Ｄは本実施形態によるＣＳＶ形式ガイドファイルから作成したデータをテストデータ形式に変換に関する流れ図、図４は本実施形態による仕様書ファイルのデータ例を示す図、図５は本実施形態による項目属性ファイルのデータ例を示す図、図６は本実施形態によるＣＳＶ形式ガイドファイルのデータ例を示す図、図７は本実施形態による編集済ＣＳＶ形式ガイドファイルのデータを示す図、図８は本実施形態によるテストファイルのデータを示す図である。
【００１１】
［構成］
本実施形態によるテストデータ作成方法を実現するコンピュータシステムは、テストデータ作成を指示するための操作端末１００と、該操作端末１００からの指示によってテストデータを作成するテストデータ作成システム１０５を含む汎用コンピュータである汎用機１０２と、前記操作端末１００と汎用機１０２とを接続する通信回線網１０１とから構成されている。尚、前記テストデータ作成システム１０５は、後述する機能を実現するハードウェア又はソフトウェアによって構成される。
【００１２】
前記テストデータ作成システム１０５は、テストデータを構成する項目と属性のパラメータを含む項目属性パラメータ情報（ファイル）及びテストデータの作成を案内する案内情報であるＣＳＶ形式ガイド情報（ファイル）を作成するガイダンスデータ作成処理部１０６と、編集済ＣＳＶ形式テストファイルからテストデータに変換するテストデータ変換処理部１０７と、テストデータの仕様情報（テストデータ仕様情報）を格納する仕様書ファイル部１０８と、テストデータに含まれる多種の項目の属性情報を格納する項目属性パラメータファイル部１０９と、ＣＳＶデータ形式のガイダンス情報を格納するＣＳＶ形式ガイドファイル部１１０と、編集済みのＣＳＶ形式のテストデータを格納する編集済ＣＳＶ形式テストファイル部１１１と、前記ＣＳＶ形式のテストデータを開発用プログラム用に変換したテストデータを格納するテストファイル部１１２とから構成される。
【００１３】
尚、操作端末１００と汎用機１０２間のデータ受渡しについては、汎用機１０２により提供されているツールを使用し、汎用機１０２から操作端末１００へのデータ送信時は共通Ｐ．Ｐ（ＩＦＩＴ：通信アプリケーション）１０３、操作端末１００から汎用機１０２へのデータ送信時は、共通Ｐ．Ｐ（ＩＦＩＴ：通信アプリケーション）１０４を用いてデータ転送が行われる。
【００１４】
前記仕様書ファイル部１０８に格納されるテストデータ仕様情報のデータフォーマットは、図４（ａ）に示す如く、データ項目の属性関係を格納するレベル番号と、レコードデータ名称を格納するデータ名と、データの属性を格納するタイプと、レコードデータのデータの長さを格納するレコード長と、データの繰り返し回数を格納する繰り返し数と、データを繰り返す次元を格納する次元と、レコード中の先頭位置からのデータ開始位置を格納する位置の各欄とから構成され、これら情報の具体例は図４（ｂ）に示す如く、例えば、レベル番号が「０２」、データ名が「ＥＦＩ１−ＪＩＮＪＩ」、タイプが「Ｘ」、レコード長が「１１００」、位置が「１」の如く格納される。
【００１５】
前記項目属性パラメータファイル１０９に格納した項目属性パラメータ情報のデータフォーマットは、図５（ａ）に示す如く、レコード中の先頭位置からのデータ開始位置を格納する位置と、データの属性を格納するタイプと、整数部のレコード長を格納するレコード長（整数）と、小数部のレコードの長さを格納するレコード長（小数）と、データ項目の繰り返し回数を格納する繰り返し回数と、データ項目の繰り返し回数を格納する間隔と、漢字制御コードの発生有無のフラグを格納する漢字制御有無と、データの名称を格納するデータ名と、データ項目の従属関係を格納するレベル番号との各欄とから成り、これら情報の具体例は図４（ｂ）に示す如く、例えば、位置が「１」、タイプが「Ｘ」、レコード長（整数）が「２」、データ名が「ＥＦ２５Ｉ１−ＭＴ」、レベル番号が「０３」の如く格納される。
【００１６】
前記ＣＳＶ形式ガイドファイル部１１０に格納されるガイド情報のデータフォーマットは、図６（ａ）に示す如く、データの名称を格納するデータ名並びにデータの属性を格納するタイプの各欄とから成り、これら情報の具体例は図６（ｂ）に示す如く、データ名が「ＫＡＩＳＨＡＣ１」（会社Ｃ１）、データ属性が「Ｋ」の如く格納されている。
【００１７】
前記編集済みＣＳＶ形式ガイドファイル部１１１のデータフォーマットは、図７（ａ）に示す如く、データの名称を格納するデータ名並びにテストデータを格納するデータの各欄とから成り、これら情報の具体例は図７（ｂ）に示す如く、データ名が「ＫＡＩＳＨＡＣ１」（会社Ｃ１）にテストデータとして「００３５４」「００３５５」「００３５６」「００３５７」の如く格納される。
【００１８】
前記テストファイル部１１２に格納されるテストデータのデータフォーマットは、図８（ａ）及び（ｂ）に示す如く、テストデータ欄から成り、テストデータとして、例えば「０１００３５４００４４・・・東京都品川区・・・」、「０１００３５４００４５・・・東京都大田区・・・」の如く格納される。
【００１９】
また前記汎用機１０２は、一般のＣＰＵ、メモリ、ハードディスク、ディスプレイ、インタフェータ等から構成されるコンピュータシステムであって、前記メモリ上に各種カウンタエリア及びフラグエリアを変数として格納するものである。これら各種カウンタエリア及びフラグエリアは、例えば、「ＺＶ１Ｉ１−ＥＮＤ−ＦＬＧ」「抽出フラグ」「Ｚｖ１Ｉ１−ＧＹＯ」「Ｚｖ１Ｉ１−ＬＥＶＥＬ」「ＺＶ０１Ｉ１−Ｒ」「ＺＶ０１Ｉ１−ＬＥＶＥＬ」「Ｗ−ＦＬＡＧ１」「ＺＶ１Ｉ１−ＴＹＰＥ」「ＺＶ０１Ｉ１−ＤＩＭ」「ＺＶ０１Ｉ１−ＯＣＣＵＲＳ」「Ｗ−ＧＬＥＮ」「Ｗ−ＬＥＮ」「Ｗ−ＬＥＮ２」「ＺＶ０１Ｉ１−Ｒ」「ＺＶ０１Ｉ１−Ｒ」「ＺＶ０１Ｉ１−Ｒ」「ＺＶ０１Ｉ１−Ｒ」「ＺＶ０１Ｉ１−Ｒ」「ＺＶ０１Ｉ１−Ｒ」「ＺＶ０１Ｉ１−Ｒ」、Ｓ７、Ｓ８他の各種カウンタエリア及びフラグエリアを変数として設定している。
【００２０】
［動作］
さて、本実施形態によるテストデータ作成システム１０５の動作を次に図２及び３を参照して説明する。
図２Ａ〜図２Ｄは、ガイダンスデータ作成処理部１０６による項目属性パラメータ情報作成及びＣＳＶ形式ガイド情報作成の手順を示すものであって、この手順は、入出力ファイルをオープン（ＯＰＥＮ）するステップ２０１と、前述した各種カウンタ及びフラグを初期化するステップ２０２と、前記仕様書ファイル部１０８から仕様書レコードを１件入力し、入力レコードがない場合は、終了フラグ（「ＺＶ１Ｉ１−ＥＮＤ−ＦＬＧ」）に「１」をセットするステップ２０３と、前記終了フラグの内容が「１」か否かを判定するステップ２０４と、該ステップ２０４において終了フラグの内容が「１」であると判定したとき、ＣＳＶ形式ガイドデータをＣＳＶ形式ガイドファイル部１１０へ出力するステップ２０５と、入出力ファイルをクローズして処理を終了するするステップ２０６とを実行する。
【００２１】
前記ステップ２０４において終了フラグが「１」以外と判定したとき、抽出フラグに「ＳＥＬＥＣＴ」をセットするステップ２０７と、該抽出フラグの内容が「ＳＥＬＥＣＴ」か否かを判定するステップ２０７と、入力した仕様書レコードの内容（「Ｚｖ１Ｉ１−ＧＹＯ」「Ｚｖ１Ｉ１−ＬＥＶＥＬ」）がスペース（「ＳＰＡＳＥ」）か否かを判定するステップ２０８及び２０９と、該ステップ２０８及び２０９において条件を満たすと判定したとき、抽出フラグにスペースをセットし、前記ステップ２０３に戻るステップ２１６と、該ステップ２０８及び２０９において条件を満たさないと判定したとき、レコード再定義項目（「ＺＶ０１Ｉ１−Ｒ」）がゼロか否かを判定するステップ２１０と、該ステップ２１０においてゼロであると判定したとき、仕様書レコードの内容が再定義項目群か否かの判定（「Ｚｖ１Ｉ１−ＬＥＶＥＬ」が「Ｗ−ＬＥＶＬ」より大きく且つ「Ｗ−ＬＦＧ」が「１」）するステップ２１１と、該ステップ２１１において条件を満たさないと判定したとき、「Ｗ−ＬＥＶＬ」に「ＳＰＡＳＥ」を代入し、「Ｗ−ＦＬＧ１」にゼロを代入するステップ２１２とを実行する。
【００２２】
前記ステップ２１１において再定義項目群と判定したとき又は前記ステップ２１３に続き、本システムは、「Ｗ−ＦＬＧ１」にゼロを代入するステップ２１４と、「ＺＶ１Ｉ１−ＴＹＰＥ」がゼロ且つ「Ｚｖ１Ｉ１−ＬＥＶＥＬ」が「１」でないか否かを判定し、条件を満たしたとき、前記ステップ２１６に移行するように動作する。
【００２３】
次いでテストデータ作成システム１０５は、前記ステップ２１５の条件を満たさないと判定したとき、図２Ｂに示す如く、「ＺＶ１Ｉ１−ＴＹＰＥ」がスペースでなく且つ「ＺＶ０１Ｉ１−ＯＣＣＵＲＳ」（繰返し項目）がスペースでないことを判定するステップ２１７と、該ステップ２１７の条件を満たすとき、「ＺＶ１Ｉ１−ＴＹＰＥ」がスペース且つ「ＺＶ０１Ｉ１−ＤＩＭ」が「１」であるか否かを判定するステップ２１９と、該ステップ２１９による条件を満たすと判定したとき、「Ｗ−ＧＬＥＭＮ」にゼロを代入して初期化するステップ２２０と、前記ステップ２１９の条件を満たさないと判定したとき、「ＺＶ０１Ｉ１−ＤＩＭ」が「１」か否かを判定するステップ２２２と、該ステップ２２２による条件を満たすと判定したとき、「ＺＶ１Ｉ１−ＴＹＰＥ」がゼロか否かを判定するステップ２２４とを繰り返して実行することにより、集団項目か否かの判定を行なう。尚、繰返し集団項目の先頭の場合は、集団項目カウンタ及び集団項目長をステップ２２０及び２２３によって初期化する。
【００２４】
次に本システムは、「ＺＶ０１Ｉ１−ＬＥＮ」を整数部と小数部に分割し、整数部を「Ｗ−ＬＥＮ」に代入し、小数部を「Ｗ−ＬＥＮ２」に代入するステップ２２５と、次いで「ＺＶ１Ｉ１−ＴＹＰＥ」が「Ｐ」又は「Ｎ」か否かを判定するステップ２２６及び２２７と、「ＺＶ１Ｉ１−ＴＹＰＥ」が「Ｂ」且つ「Ｗ−ＬＥＮ」を＋１カウントアップするステップＳ２３０と、「ＺＶ１Ｉ１−ＴＹＰＥ」が「Ｂ」か否かを判定するステップ２３２と、「Ｗ−ＬＥＮ」と「Ｗ−ＬＥＮ２」を合算するステップ２３４とを実行することによって、データタイプを判定しながらデータレコード長を算出する。尚、前記ステップ２２６による条件を満たさない場合は、前記ステップ２３４で合算したデータ長を２で除算し、端数を除く計算を行うステップ２２７を実行し、前記ステップ２２８による条件を満たさない場合は、「Ｗ−ＬＥＮ」の値（整数値）を２で除算するステップ２２９と、前記ステップ２３０及び２３２による条件を満たさない場合は、変数Ｓ７を＋２カウントアップするステップ２３１及び２３３とを実行することによってデータレコード長を算出する。
【００２５】
次いで本実施形態によるテストデータ作成システム１０５は、前記ステップ２３４に続き、図２Ｃに示す如く、「ＺＶ０１Ｉ１−ＯＣＣＵＲＳ」（繰返し項目）がスペースか否かを判定するステップ２３５と、該ステップ２３５においてスペースと判定したときにし、「ＺＶ０１Ｉ１−ＯＣＣＵＲＳ」に「１」を代入するステップ２３６と、変数にＳ８の値と「ＺＶ０１Ｉ１−ＯＣＣＵＲＳ」の値を乗算して繰返し項目の累計数を算出するステップ２３７とを実行する。尚、前記ステップ２３６は繰返し項目がスペースのときに、繰返し回数を１回と設定する処理である。
【００２６】
次に本システムは、「ＳＥＬＥＣＴ−ＳＷ」が「ＳＥＬＥＣＴ」か否かを判定することにより項目属性パラメータ情報の出力件数を判定し、「ＳＥＬＥＣＴ」でないときに前述のステップ２０３に戻るステップ２３８と、「ＸＷＺＦ０９１Ｉ１」（項目属性パラメータレコードの出力件数）がゼロか否かを判定するステップ２３８ａと、該ステップ２３８ａにおいて出力件数がゼロであると判定したとき、コントロール情報を項目属性パラメータレコード（「ＸＷＺＦ０９１Ｉ１」）にセットし、項目属性パラメータファイル部１０９へ出力するステップ２３９及び２４０を実行する。
【００２７】
次いで本システムは、前記ステップ２３８ａにおいて「ＸＷＺＦ０９１Ｉ１」（項目属性パラメータレコード）がゼロでないと判定したとき、「ＸＷＺＦ０９１Ｉ１」（項目属性パラメータレコード）を初期化するステップ２４１と、「ＺＶ０１Ｉ１−ＰＯＳＴ」を「ＺＦ０９Ｉ１」に代入するステップとにより出力位置やデータタイプを項目属性パラメータレコードの各項目にセットするステップ４２４と、ゼロを変数Ｓ３に代入してデータレコード長内カンマ個数を検出するステップ２４３と、該検出したデータレコード長内カンマ個数がゼロのとき、データレコード長を項目属性パラメータレコードのデータレコード長整数部へ、カンマをデータレコード長小数部へセットするステップ２４５と、検出した個数がカンマ個数＞ゼロの場合は、データレコード長の整数部を項目属性パラメータのレコード長整数部へ、データレコード長の小数部を項目属性パラメータレコード長の小数部へセットするステップ２４８と、集団項目を判定するステップ２４７と、集団項目の場合は間隔文字を算出するステップ２４８と、繰返し回数を変数Ｓ３に、間隔数をＳ８に項目属性パラメータの各項目としてセットするステップ２４９とを実行する。
【００２８】
次いで本システムは、「ＺＦ０９Ｉ１−ＴＹＰＥ」が「Ｎ」か否かを判定することによってデータタイプを判定するステップ２５０と、該ステップ２５０により漢字と判定したときに項目属性パラメータの漢字制御有無にセットするステップ２５１とを実行する。
【００２９】
更に本テストデータ作成システム１０５は、前記ステップ２５０又は２５１に続き、図２Ｄに示す如く、「ＺＶ０１Ｉ１−ＬＥＶＥＬ」を「ＺＦ０９Ｉ１−ＬＥＶＥＬ」に代入し且つ「ＺＶ０１Ｉ１−ＤＩＭ」を「ＺＦ０９１Ｉ１−ＤＩＭ」に代入するステップ２５２と、データ項目名称の「−」の位置を検出するステップ２５３と、変数Ｓ３が値「＋３０」より大きいか否かを判定するステップ２５４と、該ステップ２５４において大きいと判定したとき、内部テーブル数である変数Ｓ１を「＋１」カウントアップし且つ「ＳＩＺＥ」に値３０をプラスするステップ２５５と、前記ステップ２５４において大きくないと判定したとき、変数（繰返し項目数）Ｓ２に値３０から変数（内部テーブル数）Ｓ１の値を除算した値を代入するステップ２５６と、変数Ｓ１からＳ２の範囲の「ＺＶ０Ｉ１−ＮＡＭＥ（Ｓ１：Ｓ２）」を変数Ｓ５からＳ２の範囲の「ＸＨＺＦＡ２４１（Ｓ５：Ｓ２）」に代入するステップ２５７とを実行することによって、「−」以降の名称をＣＳＶガイドレコードのデータ名にセットする。
【００３０】
次いで本システムは、「ＺＶ０１Ｉ１−ＴＹＰＥ」が「Ｐ」か否かを判定することによってデータ属性を判定するステップ２５８と、該ステップ２５８の判定の結果が数字系のときに値１〜９を順番に使用してＣＳＶガイドレコードの属性にセットするステップ２５９と、前記判定の結果が漢字のときにデータ名の先頭文字を漢字変換するステップ２６２と、ＣＳＶ形式ガイドレコードの属性にセットするステップ２６３とを実行する。
【００３１】
前記ステップ２６２において漢字でないと判定したとき、データ名の先頭文字を、ＣＳＶガイドレコードの属性にそのままセットするステップ２６４と、データ属性を判定するステップ２６５と、ＣＳＶガイドデータの次回出力位置を計算するステップ２６６及び２６７と、項目属性パラメータレコードを出力するステップ２６８とを、仕様書レコードがなくなるまで繰返す事により、項目属性パラメータ情報とＣＳＶ形式ガイド情報を作成するように動作する。
【００３２】
更に本実施形態によるテストデータ作成システム１０５は、テストデータ変換処理部１０７が、項目属性パラメータ情報及び編集済ＣＳＶ形式ガイド情報よりテストデータを作成するものであって、この処理動作を図３Ａ〜図３Ｄを参照して説明する。
【００３３】
このテストデータ形式に変換する工程は、図３Ａに示す如く、項目属性パラメータファイル部１０９から項目属性パラメータレコードをＳＹＳＩＮパラメータとして全件読込むステップ３０１と、項目属性パラメータレコード（「Ｗ−ＯＰＴ」「Ｗ−ＲＥＣ」「Ｗ−ＢＬＫ」「Ｗ−ＲＥＣ２」「Ｗ−ＢＬＫ２」「Ｗ−ＣＯＤＥ」）項目属性パラメータの項目チェックを実施し、異常の時に処理を終了するステップ３０８に移行するステップ３０２〜３０７と、入出力ＤＣＢの変換を行うステップ３０９と、各種通信条件を設定するための入出力ＤＣＢ（デバイス制御ブロック）構造体の構成情報を変換するステップ３０９と、内部テーブル数である変数Ｓ１に値「＋１」を代入、変数「ＴＡＢＬＥ」に「ＳＰＡＳＥ」を代入、フラグ「Ｗ−ＦＬＧ１」及び「Ｗ−ＦＬＧ３」にゼロを代入するステップ３１０とを実行する。
【００３４】
次いで本システムは、前記フラグ「Ｗ−ＦＬＧ１」の値が「１」か否かを判定し、「１」と判定したときに前記図２Ａのステップ２３５に戻るステップ３１１と、システム入力装置のパラメータを設定するＳＹＳＩＮパラメータを入力するステップ３１２と、作成中コマンドのパラメータを定義するためのステートメントであるパラメータ「Ｗ−ＰＡＲＭ」が「ＳＰＡＳＥ」か否かを判定するステップ３１３と、該ステップ３１３において「ＳＰＡＳＥ」と判定したときにパラメータ「Ｗ−ＰＡＲＭ」に「＋１」を代入して前記ステップ２３５に戻るステップ３１４と、前記ステップ３１３において「ＳＰＡＳＥ」でないと判定したときに変数Ｓ１（内部テーブル数）が値「＋１０００」より大きいか否かを判定し、値「＋１０００」より大きいと判定したときにプログラムの異常終了を行うステップ３１６に移行するステップ３１５とを実行する。
【００３５】
更に本システムは、図３Ｂに移り、前記パラメータ「Ｗ−ＰＡＲＭ」の値１から７２間が「ＡＰＡＳＥ」か否かを判定し、ＳＰＡＳＥと判定したときに図３Ａのステップ３１１に戻るステップ３１７と、入力されているパラメータを「，」（カンマ）で分割してパラメータ「Ｗ−ＰＯＳＴ」「Ｗ−ＴＹＰＥ」「Ｗ−ＬＥＮＧ（整数部のデータ長）」「Ｗ−ＬＥＮＧ２（小数部のデータ長）」「Ｗ−ＯＣＣＵＲＳ」「Ｗ−Ｘ０４Ａ２」に代入するステップ３１８と、前記パラメータ「Ｗ−ＴＹＰＥ」が「Ｘ」「９」「Ｎ」「Ｐ」「Ｓ」「Ｂ」の何れかが設定されているか否かを判定し、設定されていない場合にプログラム異常終了を行うステップ３２０に移行するステップ３１９と、前記パラメータ「Ｗ−ＯＣＣＵＲＳ」がゼロであるか否かを判定し、ゼロであると判定したときにパラメータ「Ｗ−ＯＣＣＵＲＳ」に「＋１」を代入するステップ３２２と、該ステップ３２２においてゼロでないと判定したとき、パラメータ「Ｗ−Ｘ０４Ａ２」が「ＳＰＡＳＥ」か否かを判定するステップ２３３と、パラメータ「Ｗ−Ｘ０４Ａ２」及び「Ｗ−ＴＹＰＥ」共に「Ｎ」か否かを判定するステップ３２４と、同パラメータ「Ｗ−Ｘ０４Ａ２」に「Ｙ」、「Ｗ−ＴＹＰＥ」に「Ｎ」が設定されているか否かを判定するステップ３２５と、前記ステップ３２３〜３２５における条件を満たさないときにプログラム異常終了を行うステップ３２８と、前記ステップ３２５に続き、内部テーブル数である変数Ｓ１を「＋１」カウカトアップすると共にＳＹＳＮパラメータを「ＴＡＢＬＥ−ＡＲＥＡ」に代入するステップ３２７とを実行する。
【００３６】
このように本システムは、テストデータ変換処理部１０７が前述の処理を実行することによって、項目属性パラメータレコードをＳＹＳＩＮパラメータとして全件読込み、項目属性パラメータの項目チェックを実施しながら、内部テーブルに格納することができる。
【００３７】
更に本実施形態によるテストデータ変換処理部１０７は、ステップ３１１／ステップ３１４に続き図３Ｃに示す如く、入出力ファイルをオープンするステップ３２８と、編集済みＣＳＶファイル部１１１から編集済ＣＳＶテストレコードを入力し、終了したときにフラグ「ＺＦＺＺ１−ＥＮＤ−ＦＬＧ」に「１」を代入するステップ３２９と、前記フラグ「ＺＦＺＺ１−ＥＮＤ−ＦＬＧ」が「１」か否かを判定し、「１」と判定したときに編集済ＣＳＶテストレコードが無くなったとして入出力ファイルをクローズして処理を終了するステップ３３０と、内部テーブル数である変数Ｓ１が１０００を超えるか否かを判定するステップ３３１と、該ステップ３３１において超えると判定したときに「ＸＨＦＺＺ２１」を書き込むことによってテストデータを出力するステップ３３２と、前記ステップ３３１において内部テーブル数が１０００を超えないと判定したときに、編集済みＣＳＶファイルの対象項目をパラメータ「Ｗ−ＩＴＥＭ」に代入するステップ３３３と、該ステップ３３３を内部テーブルの繰返し項目数（変数Ｓ２）に達するまで前記ステップ３３１に戻って繰返すステップ３３４とを実行する。
【００３８】
次いで本システムは、前記ステップ３３４に続き、テーブルのタイプを「ＴＢＬ−ＴＹＰＥ」の内容が「Ｎ（漢字）」「Ｐ（バック）」「Ｓ（サイン付数字）」「ｇ（数字）」「Ｂ（バイナリ）」か否かを判定することによって内部テーブルのデータタイプ(データ属性)を判定するステップ３３５／３３９／３４４／３４９／３５２とを実行する。
【００３９】
本システムは、前記ステップ３３５による条件（内部テーブルのデータ形式が「漢字」）を満たさない場合、「ＴＢＬ−Ｘ０Ａ４２」が「Ｙ」か否かを判定するステップ３３６と、該ステップ３３６において「Ｙ」と判定したときに変数Ｓ４の内容である「ＴＢＬ−ＬＥＮＧ＋４」を「ＩＴＥＭ（１：Ｓ４）」により指定した範囲のパラメータ「ＸＨＺＦＺＺ２１」にテストデータに代入するステップ３３７と、前記ステップ３３６において「Ｙ」でないと判定したときにパラメータ「Ｗ−ＩＴＥＭ（１：ＴＢＬ−ＬＥＮＧ）」のテーブル長までの範囲をパラメータ「ＸＨＺＦＺＺ２１」のテストデータに代入するステップ３３８とを実行することにより、内部テーブルのデータ長に４バイト分を加算したデータをテストデータにセット（割り当てる）すると共に、漢字制御有無が「Ｎ」の場合は、内部テーブルのデータ長分をテストデータにセットする。
【００４０】
本システムは、前記ステップ３３９においてテーブルタイプが「Ｐ」（データタイプが「バック」）と判定したとき、データ内容がマイナスか否かを判定するステップ３４０と、該ステップ３４０においてマイナスと判定したとき符号を除くデータ内容に値「−１」を乗算ステップ３４１と、前記ステップ３４０及び３４１に続き、変数Ｓ４の内容である「ＴＢＬ−ＬＥＮＧ」と「ＴＢＬ−ＬＥＮＧ２＋１」の平均値のデータ長（内部テーブルの（整数部データ長＋小数部データ長＋１）／２分のデータ長）を算出するステップ３４２と、「Ｗ−ＳＵＪＩ」（数字）をパラメータ「ＸＨＺＦＺＺ２１」の範囲Ｓ３からＳ４の範囲のテストデータに代入するステップ３４３とを実行し、図３Ｄに示した後述するステップ３６０に移行する。
【００４１】
本システムは、前記ステップ３４４においてテーブルタイプが「Ｓ」（データタイプが「サイン付数字」）と判定したとき、データ内容がマイナスか否かを判定するステップ３４５と、該ステップ３４５においてサイン付数字と判定したときに、マイナスであると判定したときに符号を除くデータ内容に値「−１」を乗算ステップ３４６と、前記ステップ３４５でマイナスでないと判定又は前記ステップ３４６に続き、内部テーブルの（整数部データ長＋小数部データ長＝Ｓ４［：ＴＢＬ−ＬＥＮＧ＋ＴＢＬ−ＬＥＮＧ２］）分のデータ長をテストデータにセット（割り当てる）するステップ３４７及び３４８とを実行し、ステップ３６０に移行する。
【００４２】
更に本システムは、前記ステップ３４９において、内部テーブルのデータタイプが数字（「ｇ」）と判定したとき、内部テーブルの（整数部データ長＋小数部データ長）分のデータ長をテストデータにセット（割り当てる）するステップ３５０及び３５１とを実行し、ステップ３６０に移行する。
【００４３】
また本システムは、前記ステップ３５２において、内部テーブルのデータタイプが「Ｂ」（バイナリ）と判定したとき、データ内容がマイナスか否かを判定するステップ３５３と、該ステップ３５３においてマイナスと判定したとき、符号を除くデータ内容に値「−１」を乗算するステップ３５４と、前記ステップ３５３においてマイナスでないと判定又は前記ステップ３５４に続き、内部テーブルのデータ長が１〜４か否かを判定するステップ３５５と、データ長が１〜４の範囲と判定したときに２バイト分のデータ長をテストデータにセット（割り当てる）するステップ３５６と、データ長が１〜４の範囲でないと判定したときに４バイト分のデータ長をテストデータにセット（割り当てる）するステップ３５７とを実行し、ステップ３６０に移行する。
【００４４】
また本システムは、前記ステップ３３５／３３９／３４４／３４９／３５２によってテータタイプが何れにも該当しないと判定したとき、データタイプが「文字タイプ」とし、内部テーブルデータ長をテストデータにセット（割り当てる）するステップ３５９と、次回テストデータセット位置を計算するステップ３６０とを実行し、図３Ｃのステップ３３４に戻る処理を繰り返すことによって、テストデータを作成することができる。
【００４５】
以上述べた如く本実施形態によるテストデータ作成システム１０５は、テストデータの項目属性パラメータ情報及びＣＳＶ形式ガイド情報を作成するガイダンスデータ作成処理部１０６と、編集済ＣＳＶ形式テストファイルからテストデータに変換するテストデータ変換処理部１０７と、テストデータのデータ属性及びレコード長とを含むテストデータの仕様情報を格納する仕様書ファイル部１０８と、テストデータのレコード中の先頭位置からのデータ開始位置とデータ属性と整数部レコード長と小数部レコード長を含む属性情報を格納する項目属性パラメータファイル部１０９と、データ名称及びデータの属性を含むガイダンス情報を格納するＣＳＶ形式ガイドファイル部１１０と、データ名称及びＣＳＶ形式テストデータを格納する編集済ＣＳＶ形式テストファイル部１１１と、前記ＣＳＶ形式のテストデータを開発用プログラム用に変換したテストデータを格納するテストファイル部１１２とから構成される。
【００４６】
この構成において本実施形態によるテストデータ作成システム１０５は、ガイダンスデータ作成処理部１０６が、図２Ａ〜図２Ｄに示す如く、カウンタおよびフラグエリアの初期化する工程（ステップ２０２）と、仕様書ファイル部１０８から仕様書レコードを入力する工程（ステップ２０３）と、ＣＳＶ形式ガイドデータをＣＳＶ形式ガイドファイル部１１０へ出力する工程（ステップ２０５）と、前記入力した仕様書レコードの内容を判定する工程（ステップ２０８及び２０９）と、データレコード長を整数部と小数部に分割する工程（ステップ２２５）と、データタイプを判定しながらデータレコード長を算出する工程（ステップ２２６〜２３４）と、項目属性パラメータ情報の出力件数を判定する工程（ステップ２３８）と、出力位置やデータタイプを項目属性パラメータレコードの各項目にセット（割り当てる）する工程（ステップ２４２）と、データタイプを判定する工程と（ステップ２５０）、判定結果が漢字の場合は項目属性パラメータの漢字制御有無にセット（ステップ２５１）し、データ項目名称の「−」の位置を検出する工程（ステップ２５３）と、「−」以降の名称をＣＳＶガイドレコードのデータ名にセットする工程（ステップ２５４〜２５７）と、データ属性を判定する工程（ステップ２５８）と、判定結果が数字系の場合は１〜９を順番に使用しＣＳＶガイドレコードの属性にセットする工程（ステップ２５９〜２６１）と、判定結果が漢字の場合はデータ名の先頭文字を漢字変換した後、ＣＳＶガイドレコードの属性にセットする工程（ステップ２６２〜２６３）と、上記以外の判定結果のときに、データ名の先頭文字をＣＳＶガイドレコードの属性にそのままセットする工程（ステップ２６４）と、データ属性を判定する工程（ステップ２６５）と、項目属性パラメータレコードを出力する工程（ステップ２６８）と、前述の工程を、仕様書レコードがなくなるまで繰返す事により、項目属性パラメータ情報とＣＳＶ形式ガイド情報とを作成する様に動作する。
【００４７】
更に本実施形態によるテストデータ作成システム１０５は、項目属性パラメータレコードをＳＹＳＩＮパラメータとして全件読込み、内部テーブルに格納する工程（ステップ３０１〜３２７）と、編集済ＣＳＶテストレコードを入力する工程（ステップ３２９）と、内部テーブル数を判定する工程（ステップ３３１）と、内部テーブル数が所定値（１０００）を超えた場合にテストデータを出力する工程（ステップ３３２）と、内部テーブルのデータタイプを判定する工程（ステップ３３５、３３９、３４４、３４９、３５２）を実行する。
【００４８】
本システムは、前記データタイプ判定工程において、内部テーブルのデータタイプが漢字、且つ漢字制御有無が「Ｙ」と判定したとき、内部テーブルのデータ長＋４バイト分をテストデータにセットし、漢字制御有無が「Ｎ」の場合は、内部テーブルのデータ長分をテストデータにセットする工程（ステップ３３６〜３３８））とを実行し、前記データタイプ判定工程において、データタイプが「パック」と判定したとき、データ内容がマイナスか否かを判定しマイナスの場合は符号を除くデータ内容に−１を乗算（ステップ３４０〜３４１）し、内部テーブルの（整数部データ長＋小数部データ長＋１）／２分のデータ長をテストデータにセット（割り当てる）する工程（ステップ３４２〜３４３）を実行し、前記データタイプ判定工程において、データタイプがサイン付数字と判定したとき、データ内容がマイナスか否かを判定しマイナスの場合は符号を除くデータ内容に−１を乗算（ステップ３４５〜３４６）し、内部テーブルの（整数部データ長＋小数部データ長）分のデータ長をテストデータにセットする工程（ステップ３４７〜３４８）とを実行し、データタイプ判定工程において、データタイプが数字と判定したとき、内部テーブルの（整数部データ長＋小数部データ長）分のデータ長をテストデータにセットする工程（ステップ３５０〜３５１）を実行し、データタイプ判定工程において、データタイプがバイナリと判定したとき、データ内容がマイナスか否かを判定しマイナスの場合は符号を除くデータ内容に−１を乗算（ステップ３５３〜３５４）し、内部テーブルのデータ長が１〜４の場合は２バイト分を、データ長が１〜４以外の場合は４バイト分のデータ長をテストデータにセットする工程（ステップ３５５〜３５８）とを実行し、データタイプ判定工程において、データタイプが上記以外（文字タイプ）と判定したとき、内部テーブルデータ長をテストデータにセットする工程（ステップ３５９〜３６０）とを実行することによって、項目属性パラメータ情報及びおよび編集済ＣＳＶ形式ガイド情報よりテストデータを作成することができる。即ち、本実施形態によれば、予め設定されたテストデータの仕様情報及び項目属性パラメータ情報を用いてテストデータを作成するため、人手による誤入力なしに容易にテストデータを作成することができる。
【図面の簡単な説明】
【００４９】
【図１】本発明の一実施形態によるテストデータ作成システムの全体構成図。
【図２Ａ】本実施形態による項目属性パラメータ情報及びＣＳＶ形式ガイドファイル作成に関する流れ図。
【図２Ｂ】本実施形態による項目属性パラメータ情報及びＣＳＶ形式ガイドファイル作成に関する流れ図。
【図２Ｃ】本実施形態による項目属性パラメータ情報及びＣＳＶ形式ガイドファイル作成に関する流れ図。
【図２Ｄ】本実施形態による項目属性パラメータ情報及びＣＳＶ形式ガイドファイル作成に関する流れ図。
【図３Ａ】本実施形態によるＣＳＶ形式ガイドファイルから作成したデータをテストデータ形式に変換に関する流れ図。
【図３Ｂ】本実施形態によるＣＳＶ形式ガイドファイルから作成したデータをテストデータ形式に変換に関する流れ図。
【図３Ｃ】本実施形態によるＣＳＶ形式ガイドファイルから作成したデータをテストデータ形式に変換に関する流れ図。
【図３Ｄ】本実施形態によるＣＳＶ形式ガイドファイルから作成したデータをテストデータ形式に変換に関する流れ図。
【図４】本実施形態による仕様書ファイルのデータ例を示す図。
【図５】本実施形態による項目属性ファイルのデータ例を示す図。
【図６】本実施形態によるＣＳＶ形式ガイドファイルのデータ例を示す図。
【図７】本実施形態による編集済ＣＳＶ形式ガイドファイルのデータを示す図。
【図８】本実施形態によるテストファイルのデータを示す図。
【符号の説明】
【００５０】
１００：操作端末、１０１：通信回線網、１０２：汎用機、１０５：テストデータ作成システム、１０６：ガイダンスデータ作成処理部、１０７：テストデータ変換処理部、１０８：仕様書ファイル部、１０９：項目属性パラメータファイル部、１１０：ＣＳＶ形式ガイドファイル部、１１１：編集済ＣＳＶテストファイル部、１１２：テストファイル部。
【図１】
2009289083.tif 000003
【図２Ａ】
2009289083.tif 000004
【図２Ｂ】
2009289083.tif 000005
【図２Ｃ】
2009289083.tif 000006
【図２Ｄ】
2009289083.tif 000007
【図３Ａ】
2009289083.tif 000008
【図３Ｂ】
2009289083.tif 000009
【図３Ｃ】
2009289083.tif 000010
【図３Ｄ】
2009289083.tif 000011
【図４】
2009289083.tif 000012
【図５】
2009289083.tif 000013
【図６】
2009289083.tif 000014
【図７】
2009289083.tif 000015
【図８】
2009289083.tif 000016