Hitachi

Advanced Shell 


3.10.3 カバレージ情報の蓄積

〈この項の構成〉

(1) カバレージ情報の蓄積方法と形式

ジョブ定義スクリプトを実行する場合に実行コマンドのオプションでカバレージ情報を蓄積することを指定します。カバレージ情報の蓄積を指定すると,ascファイルにカバレージ情報が蓄積されます。

カバレージ情報を蓄積するためのオプションは,-tオプションです。-oオプションでascファイルのファイル名を任意に変更できます。カバレージ情報を蓄積するオプションを指定した実行コマンドの形式を次に示します。通常の場合,実行するジョブ定義スクリプトに差分があったときはエラーとします。ただし,-fオプションを指定した場合,エラーにはならないでカバレージ情報を上書きします。

adshexec [ほかのオプション…] [-t [-f ][-o ascファイルのパス名]] 
ジョブ定義スクリプトファイルのパス名実行時パラメーター

UNIXの場合に,-tオプションではなく-dオプションを指定してadshexecコマンドを実行したときは,メモリ上だけでカバレージ情報を採取します。このとき,デバッガのinfo coverageコマンドでカバレージ情報を表示できます。デバッガのquitコマンドを入力してデバッガを終了すると,採取したカバレージ情報を破棄してメモリを解放します。

(2) 蓄積方法の種類

カバレージ情報の蓄積方法には,1回目の蓄積である初回蓄積と,2回目以降の蓄積である継続蓄積とがあります。1回目か2回目以降かの判定は,ascファイルがあるかどうかで決まります。

ジョブ定義スクリプトに変更があった場合,変更部分の行番号が不一致になります。このため,ascファイルにジョブ定義スクリプトの内容のバックアップ情報を保持します。ascファイルのバックアップ情報と差分が発生した場合,ジョブ定義スクリプトを実行しないでエラー終了となります。

初回蓄積の場合,ascファイルを新たに作成し,実行時のカバレージ情報を書き込みます。継続蓄積の場合,ascファイルの内容を読み込み,ascファイルの情報に現在の実行のカバレージ情報を追加して,ascファイルを更新します。

(a) 初回蓄積の例

初回蓄積の例を示します。

例1

カバレージ情報ファイル(ascファイル)が存在しない状態で,カバレージ情報を採取します。

例2

次に示す条件がすべて成立する場合は,初回蓄積になります。

  • カバレージ情報ファイル(ascファイル)が存在する

  • ジョブ定義スクリプトファイルが,すでに存在するカバレージ情報ファイルのカバレージ情報を採取したときと異なる

  • ジョブ定義スクリプトファイルが異なっていてカバレージ情報ファイルを初期化するオプション(adshexecコマンドで-fオプション)の指定がある

(b) 継続蓄積の例

次に示す条件がすべて成立する場合は,継続蓄積になります。

  • すでにカバレージ情報ファイル(ascファイル)が存在する

  • ジョブ定義スクリプトファイルが,すでに存在するカバレージ情報ファイルのカバレージ情報を採取したときと同一である

継続蓄積では,ジョブ定義スクリプトが前回カバレージ情報を採取したときと同一であることが継続蓄積の条件の1つになっています。次に示す場合,ジョブ定義スクリプトは同一であると判断します。

  • ジョブ定義スクリプトをバイナリ比較してサイズと内容が同一である

上記の条件が成立すれば,ジョブ定義スクリプトはファイル名やパスが異なっていても同一として取り扱います。

(3) カバレージ情報ファイルに登録するジョブ定義スクリプトのファイル名

継続蓄積の場合,最後にカバレージ情報を採取したときのジョブ定義スクリプトのファイル名が有効となります。

次のファイルは,ファイル名は異なりますが,同一のジョブ定義スクリプトとします。

  • /dir1/file1

  • /dir2/file2

出力ascファイルをout.ascとして,上記のジョブ定義スクリプトを使用して,継続蓄積を実行すると,out.asc内のスクリプトファイル名は次に示すようになります。

  1. adshexec -t -o out.asc /dir1/file1を実行すると,out.asc内のスクリプトファイル名は,/dir1/file1となります。

  2. adshexec -t -o out.asc /dir2/file2を実行すると,out.asc内のスクリプトファイル名は,/dir2/file2となります。

  3. 再びadshexec -t -o out.asc /dir1/file1を実行すると,out.asc内のスクリプトファイル名は,/dir1/file1となります。

(4) カバレージ情報ファイルの拡張子

カバレージ情報ファイル(ascファイル)の拡張子のデフォルトは,「.asc」です。ただし,カバレージ情報ファイルの拡張子「.asc」でなくてもかまいません。カバレージ情報を取得する場合,カバレージ情報ファイルとして指定した任意の拡張子のファイルをascファイルとして扱います。

(5) ジョブ定義スクリプトのサイズ

ジョブ定義スクリプトファイルのサイズは,2GB未満とします。

(6) 蓄積したカバレージ情報の初期化

蓄積したカバレージ情報を初期化する場合は,該当するascファイルをrmコマンドなどで削除し,初回蓄積として再度カバレージ情報を採取してください。