119 DBMS_PLSQL_CODE_COVERAGE

DBMS_PLSQL_CODE_COVERAGEパッケージは、基本ブロック・レベルでPL/SQLアプリケーションのコード・カバレッジ・データを収集するためのインタフェースを提供します。

119.1 DBMS_PLSQL_CODE_COVERAGEの概要

DBMS_PLSQL_CODE_COVERAGEパッケージは、基本ブロック・レベルでPL/SQLアプリケーションのコード・カバレッジ情報を収集するためのインタフェースを提供します。基本ブロックとは、PL/SQLコードの入口が1箇所で出口が1箇所のブロックのことです。PL/SQLの開発者は、テスト・インフラストラクチャでコードがどの程度実行されるか確認する必要があります。カバレッジ表は、CREATE_COVERAGE_TABLESプロシージャを使用して作成します。

一般的なコード・カバレッジは、次へのコールを含むセッションで実行されます。

  • START_COVERAGE

  • PL/SQLコードの実行

  • STOP_COVERAGE

参照:

119.2 DBMS_PLSQL_CODE_COVERAGEのセキュリティ・モデル

ユーザーは、DBMS_PLSQL_CODE_COVERAGEパッケージに対するEXECUTE権限を持っている必要があります。

ユーザーは、このユニットに関するカバレッジ情報を収集するユニットに対するCREATE権限を持っている必要があります。

ラップされたユニットに関するカバレッジ情報は収集されません。

119.3 DBMS_PLSQL_CODE_COVERAGEサブプログラムの要約

この表は、DBMS_PLSQL_CODE_COVERAGEサブプログラムを示し、簡単に説明しています。

表119-1 DBMS_PLSQL_CODE_COVERAGEパッケージのサブプログラム

サブプログラム 説明

CREATE_COVERAGE_TABLESプロシージャ

カバレッジ表を作成します。

START_COVERAGEファンクション

ユーザーのセッションでカバレッジ・データの収集を開始し、RUN_IDを戻します。

STOP_COVERAGEプロシージャ

現在のカバレッジの実行を終了します。

119.3.1 CREATE_COVERAGE_TABLESプロシージャ

このプロシージャは、カバレッジ・データの収集に使用する表を作成します。

構文

DBMS_PLSQL_CODE_COVERAGE.CREATE_COVERAGE_TABLES (
   FORCE_IT     IN BOOLEAN DEFAULT FALSE);

パラメータ

パラメータ 説明

FORCE_IT

デフォルトでは、カバレッジ表がすでに存在する場合、エラーになります。TRUEに設定すると、表がすでに存在する場合、表はサイレントに削除され、新しい表が作成されます。

例外

表119-2 CREATE_COVERAGE_TABLESの例外

例外 説明
COVERAGE_ERROR

FORCE_ITパラメータはFALSEで、表がすでに存在します。

119.3.2 START_COVERAGEファンクション

このファンクションは、ユーザーのセッションでカバレッジ・データの収集を開始し、実行の一意の識別子RUN_IDを戻します。

構文

DBMS_PLSQL_CODE_COVERAGE.START_COVERAGE (
   run_comment   IN VARCHAR2) 
   RETURN NUMBER;

パラメータ

パラメータ 説明

run_comment

ユーザーは実行に名前を付け、テストを識別できます。

119.3.3 STOP_COVERAGEプロシージャ

このプロシージャは、現在のカバレッジの実行を終了します。

構文

DBMS_PLSQL_CODE_COVERAGE.STOP_COVERAGE;

例外

表119-3 STOP_COVERAGEの例外

例外 説明
COVERAGE_ERROR

カバレッジ表が存在しない場合、エラーになります。