例 1
次の例を使用して、単体テスト コードをソース コードに挿入し、Micro Focus Unit Testing Framework で実行します。このテストでは、テスト コード内で指定されているハードコーディングされたデータを使用します。
この例は、付録にある 2 つのファイルで構成されています。
- Fizzbuzz.cbl - テスト対象のセクションを含む COBOL プログラム。
- MFUPD_Fizzbuzz.cpy - COBOL プログラムに挿入されるエントリ ポイントを含むコピーブック。
- Fizzbuzz.cbl および MFUPD_Fizzbuzz.cpy を作成し、これらのファイルに付録のコードを入力します。
注: これらのファイルは同じフォルダーに作成してください。
- MFUPP プリプロセッサを使用して Fizzbuzz.cbl をコンパイルします。
cobol Fizzbuzz.cbl int"" preprocess"mfupp" verbose endp;
- Fizzbuzz.int を Micro Focus Unit Testing Framework で実行します。
mfurun Fizzbuzz.int
プログラムの実行時に、MFUPD_Fizzbuzz.cpy 内のエントリ ポイントにあるコードが実行され、元のソース コードの Process-Number セクションが実行されて、独自のデータに対してテストされます。
例 2
次の例を使用して、データ駆動型単体テスト コードをソース コードに挿入します。この例では、データ ファイルから作業場所節にフィールドを挿入するための追加のコピーブックが必要で、参照先の .csv ファイルの値を使用してテスト コードを反復処理します。
この例は、付録にある 4 つのファイルで構成されています。
- Fizzbuzz.cbl - テスト対象のセクションを含む COBOL プログラム。
- MFUWS_Fizzbuzz.cpy - データ ファイル フィールドの作業場所定義を含むコピーブック。
- MFUPD_Fizzbuzz.cpy - COBOL プログラムに挿入されるエントリ ポイントを含むコピーブック。
- fizzbuzz_data.csv - テスト対象のコードで実行される値を含むデータ ファイル。
- MFUPD_Fizzbuzz.cpy、MFUWS_Fizzbuzz.cpy、および fizzbuzz_data.csv を作成し、これらのファイルに付録のコードを入力します。
注: これらのファイルは同じフォルダーに作成してください。
- MFUPP プリプロセッサを使用して Fizzbuzz.cbl をコンパイルします。
cobol Fizzbuzz.cbl int"" preprocess"mfupp" verbose endp;
- Fizzbuzz.int を Micro Focus Unit Testing Framework で実行します。
mfurun -verbose:true Fizzbuzz.int
プログラムの実行時に、MFUPD_Fizzbuzz.cpy 内のエントリ ポイントにあるコードが何度も実行され (fizzbuzz_data.csv の値ごとに 1 回)、そのたびに元のソース コードの Process-Number セクションが実行されます。