メニューボタン
IBMi海外記事2019.10.10

SEPを使用せずにRDiのコード・カバレッジを実行する

Susan Gantner 著

前回の記事では、テストがどの程度完了したかを確認するのに使用できる、RDiのコード・カバレッジ ツールについて概要を説明しました。その記事では、サービス エントリー ポイント(SEP)を使用してコード・カバレッジを実行する方法も紹介しました。続編となる本記事では、このツールに関する詳細情報をいくつか補足してから、コード・カバレッジ セッションを実行する別の方法を紹介します。

コード・カバレッジを実行する別の方法の説明に進む前に、前回の記事で触れなかったいくつかの詳細情報を補足しておきます。

前回の記事で、コード・カバレッジはデバッグ エンジンを使用すると述べました。その際、述べなかったことは、プログラムのテスト データが収集されるためには、xxxLEメンバーの場合は、「Debug View」オプションで「*Source」、「*List」、または「*All」のいずれかを使用して、プログラムがデバッグ用にコンパイルされている必要があるということです。非ILE言語メンバーは、*SRCDBGまたは*LSTDBGのいずれかを使用する必要があります。

また、これもデバッグ接続との関連ですが、コード・カバレッジを実行する前に、必ず、「IBM iデバッグ」設定ページの「実動ファイルを更新する(Update production files)」オプションをチェックしておくようにしてください。デバッグの際にそのオプションを指定する必要がある場合は、コード・カバレッジでもそうする必要があり、ここで設定しておけば、設定し忘れるのを簡単に防げます。この設定値がコード・カバレッジにもデバッグにも適用されることは分かりにくいかもしれませんが、実際に適用されます。

複数のテスト実行結果をマージしたレポート

アプリケーションのすべての機能をカバーするために、同じプログラムに対して複数回テストを実行することが必要となる場合もあります。個々のテスト実行のレポートを見たときは、カバレッジが十分でないことが示されるのはお決まりですが、複数のテスト実行で、全部でどれくらいのコードをカバーしたかは、どのようにすれば分かるのでしょうか。すべてをまとめたレポートを生成するには、「コード・カバレッジ結果」ビューで、複数の結果エントリーを選択(Ctlキーを押したままクリック)してから、選択したエントリーを右クリックして「開く」を選択します。エディター ビューに表示されるレポートは、選択したすべてのエントリーのカバレッジ データがマージされたものになります。

手動構成を使用してコード・カバレッジを実行する

前回の記事では、サービス エントリー ポイント(SEP)を使用してコード・カバレッジを実行する方法を説明しました。今回は、手動で作成した構成を使用してコード・カバレッジを実行する方法について見て行きます。

手動構成を使用する方法でコード・カバレッジを実行する必要があるのは、どうしてでしょうか。SEPの使用には、いくつかの制限事項があります。最も重要なものは、初期プログラムはILE言語プログラムでなければならないことです(つまり、CLPやRPG400であってはなりません)。SEP用にCLPまたはRPG400プログラムを呼び出すだけのCLLEまたはRPGLEプログラムを作成することができます。

その代わりとして、自動的にプログラムを呼び出す構成を手動で作成することもできます。デバッグでもコード・カバレッジでも、手動で作成した構成を使用する方法を好む人もいるようです。私の場合、デバッグの際は、たいていSEPを使用しますが、コード・カバレッジでは手動構成を使用することが多いように思います。これは、変更を行った後で何度も同じプログラム グループをテストする必要があるからです。そのため、私のコード・カバレッジ構成はデバッグ構成に比べてより頻繁に再利用しがちであり、一方、デバッグ構成は1回使用するだけになりがちです。

それでは、手動で作成した構成でのコード・カバレッジのテストについて見て行きましょう。以下に、全体の流れを示します。その後で、ステップごとに詳しく見て行きます。

  1. 分析したいプログラムから、バッチまたは対話式構成のいずれかを開始します。
  2. 構成ダイアログで、必要に応じて、その構成に意味のある名前を付け、分析する追加のプログラムがあれば追加します。
  3. 分析対象となるプログラムが含まれるアプリケーションを開始するコマンドを指定します。
  4. 構成を保存します。プログラムは自動的に実行されるようになります。対話式構成の場合は、テストを実行する前に対話式ジョブをRDiセッションに関連付ける必要があります。
  5. プログラムの実行が完了すると、「コード・カバレッジ結果」ビューが表示され、レポートがエディター ウィンドウに表示されます。
  6. 対話式構成では、対話式ジョブをRDi接続から解放することが必要になる場合があります。

ステップ1: デバッグ用にRDiで独自の構成を作成する場合、以前の記事で説明したように、私は「デバッグ (プロンプト)」>「IBM iジョブ」オプションを使用する方を選びます。ただし、その記事で説明したその「ジョブ」オプションは、コード・カバレッジにはないため、今後のテストでは、構成をデバッグ用ほど柔軟には作成できないでしょう。それでも、「対話式」または「バッチ」構成のいずれかを作成することはできます。テストする最初のプログラム名を右クリック(以前にSEPでそうしたように)して、「コード・カバレッジ (プロンプト)」、次いで、「バッチ」または「対話式」のいずれかを選択します。私のプログラムには表示装置ファイルがあるため、「対話式」を選択します。

ステップ2: 下の図のようなダイアログが表示されます。後でその構成を識別しやすくするために、必要に応じて、構成名を変更することができます。必要な場合は、ダイアログの1つ目のタブでプログラムまたはサービス プログラムを追加できます。データがカバレッジ分析用に収集されるのは、ここでリストされるプログラムまたはサービス プログラムだけです。

サイト内全文検索

PAGE TOP