ts.tester.coverage
クラス Coverage

java.lang.Object
  上位を拡張 ts.tester.coverage.Coverage
直系の既知のサブクラス:
LineCoverage

public abstract class Coverage
extends java.lang.Object

カバレッジの計測を実行するクラス。

バージョン:
$Revision: 1.2 $, $Date: 2007/02/16 16:12:48 $
作成者:
佐藤隆之.

入れ子のクラスの概要
static class Coverage.FilterType
          フィルタリングの種類の列挙型。
static class Coverage.MethodKey
          メソッド毎のカバレッジ計測結果を格納するマップのキーとなるクラス。
 
コンストラクタの概要
Coverage(java.lang.Class<?> execClass)
          実行クラスを引数にとるコンストラクタ。
Coverage(java.lang.Class<?> execClass, java.lang.String commandArgs)
          実行クラスとそのmain関数に渡されるコマンドライン引数文字列を 引数にとるコンストラクタ。
 
メソッドの概要
 void addClassPath(java.lang.String path)
          クラスパスを追加する。
 void addExclusionClassPattern(java.lang.String classPattern)
          計測の対象外とするクラスを追加する。
 void addTargetClassPattern(java.lang.String classPattern)
          計測の対象となるクラスを追加する。
abstract  java.util.Collection<java.lang.String> allClassNames()
          カバレッジの対象となる全クラスの名前のコレクションを取得する。
abstract  java.util.Collection<java.lang.String> allSourcePaths()
          カバレッジの対象となる全ソースファイルのコレクションを取得する。
protected abstract  void entryClass(com.sun.jdi.ReferenceType refType)
          カバレッジ計測中において、クラスの登録時に呼ばれるメソッドである。
protected abstract  void entryLine(com.sun.jdi.Location location)
          カバレッジの準備処理において、ソースコードの各行の登録を行うために呼ばれる メソッドである。
protected abstract  void entryMethod(com.sun.jdi.Method method)
          カバレッジ計測中において、メソッドの呼び出し時に呼ばれるメソッドである。
protected  void executeVM(com.sun.jdi.VirtualMachine vm)
          カバレッジの計測を実行する。
protected abstract  void exitMethod(com.sun.jdi.Method method)
          カバレッジ計測中において、メソッドの終了時に呼ばれるメソッドである。
protected  void handleEvent(com.sun.jdi.event.Event event)
          イベントをキャッチして、それに対する操作を実行する。
protected  com.sun.jdi.VirtualMachine launchVM()
          カバレッジ計測に使用するVMを起ち上げる。
abstract  java.util.Collection<Coverage.MethodKey> methodKeysOf(java.lang.String className)
          指定されたクラスに宣言されているメソッドに対するメソッド・キーのリスト を取得する。
protected abstract  void passLine(com.sun.jdi.Location location)
          カバレッジ計測中において、ソースコードの各行を通過した際に呼ばれるメソッド である。
protected  void prepareVM(com.sun.jdi.VirtualMachine vm)
          VMの準備処理を実行する。
 void run()
          カバレッジの計測を実行する。
 void setClassFilterType(Coverage.FilterType filterType)
          クラス名パターンのフィルタリングの種類を設定する。
 void setErrorStream(java.io.OutputStream errstream)
          カバレッジを実行するプロセスの標準エラー出力先となる OutputStreamオブジェクトを設定する。
 void setEventOfEntryMethodEnabled(boolean enable)
          メソッド登録イベントの有効フラグを設定する。
 void setEventOfExitMethodEnabled(boolean enable)
          メソッド終了イベントの有効フラグを設定する。
 void setExecClass(java.lang.Class<?> execClass, java.lang.String commandArgs)
          実行クラスとそのmain関数に渡されるコマンドライン引数を設定 する。
 void setObjectWriter(ObjectWriter objWriter)
          カバレッジを実行プロセスのオブジェクトの出力先となる ObjectWriterオブジェクトを設定 する。
 void setOutputStream(java.io.OutputStream outstream)
          カバレッジを実行するプロセスの標準出力先となるOutputStreamオブジェクトを設定する。
 void setPrinter(CoveragePrinter printer)
          カバレッジの計測結果を出力するCoveragePrinterオブジェクトを設定する。
 void setSourceBasePath(java.lang.String path)
          ソースファイルの格納先のベースディレクトリを設定する。
 void setVMOptions(java.lang.String options)
          実行時にVMに渡されるオプション文字列を設定する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Coverage

public Coverage(java.lang.Class<?> execClass)
実行クラスを引数にとるコンストラクタ。

パラメータ:
execClass - 実行クラス。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

Coverage

public Coverage(java.lang.Class<?> execClass,
                java.lang.String commandArgs)
実行クラスとそのmain関数に渡されるコマンドライン引数文字列を 引数にとるコンストラクタ。

パラメータ:
execClass - 実行クラス。
commandArgs - コマンドライン引数文字列。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。
メソッドの詳細

setPrinter

public void setPrinter(CoveragePrinter printer)
カバレッジの計測結果を出力するCoveragePrinterオブジェクトを設定する。

パラメータ:
printer - CoveragePrinter オブジェクト。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

setClassFilterType

public void setClassFilterType(Coverage.FilterType filterType)
クラス名パターンのフィルタリングの種類を設定する。

パラメータ:
filterType - フィルタリングの種類。

addClassPath

public void addClassPath(java.lang.String path)
クラスパスを追加する。
ファイルパスセパレータで区切られた、複数のクラスパスの連結文字列を 指定してもよい。

パラメータ:
path - クラスパス。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

addTargetClassPattern

public void addTargetClassPattern(java.lang.String classPattern)
計測の対象となるクラスを追加する。
指定したパターンに合致するクラスに関するイベントをキャッチするようにする。

パラメータ:
classPattern - クラス名のパターン。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

addExclusionClassPattern

public void addExclusionClassPattern(java.lang.String classPattern)
計測の対象外とするクラスを追加する。
指定したパターンに合致するクラスに関するイベントをキャッチしなくなるので、 確実に対象外とするクラス名を指定することにより、計測性能が向上する可能性 がある。

パラメータ:
classPattern - クラス名のパターン。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

setEventOfEntryMethodEnabled

public void setEventOfEntryMethodEnabled(boolean enable)
メソッド登録イベントの有効フラグを設定する。
有効フラグをfalseに設定した場合は、 メソッド登録イベントの通知が行われなくなり、 entryMethodメソッドの呼び出しが行われなくなる。
メソッド登録イベントは性能に影響を与えるため、使用しない場合は発生させ ないようにするとよい。

パラメータ:
enable - 有効フラグ。

setEventOfExitMethodEnabled

public void setEventOfExitMethodEnabled(boolean enable)
メソッド終了イベントの有効フラグを設定する。
有効フラグをfalseに設定した場合は、 メソッド終了イベントの通知が行われなくなり、 exitMethodメソッドの呼び出しが行われなくなる。
メソッド終了イベントは性能に影響を与えるため、使用しない場合は発生させ ないようにするとよい。

パラメータ:
enable - 有効フラグ。

setVMOptions

public void setVMOptions(java.lang.String options)
実行時にVMに渡されるオプション文字列を設定する。

パラメータ:
options - 実行時にVMに渡されるオプション文字列。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

setExecClass

public void setExecClass(java.lang.Class<?> execClass,
                         java.lang.String commandArgs)
実行クラスとそのmain関数に渡されるコマンドライン引数を設定 する。

パラメータ:
execClass - 実行クラス。
commandArgs - コマンドライン引数文字列。
例外:
java.lang.AssertionError - 引数がヌルの場合、又は引数の実行クラスがメイン関数 を持たない場合(デバッグモードのみ)。

setSourceBasePath

public void setSourceBasePath(java.lang.String path)
ソースファイルの格納先のベースディレクトリを設定する。

パラメータ:
path - ソースファイルの格納先のベースディレクトリ。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

setOutputStream

public void setOutputStream(java.io.OutputStream outstream)
カバレッジを実行するプロセスの標準出力先となるOutputStreamオブジェクトを設定する。

パラメータ:
outstream - 標準出力先のOutputStream オブジェクト。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

setErrorStream

public void setErrorStream(java.io.OutputStream errstream)
カバレッジを実行するプロセスの標準エラー出力先となる OutputStreamオブジェクトを設定する。

パラメータ:
errstream - 標準エラー出力先のOutputStreamオブジェクト。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

setObjectWriter

public void setObjectWriter(ObjectWriter objWriter)
カバレッジを実行プロセスのオブジェクトの出力先となる ObjectWriterオブジェクトを設定 する。

パラメータ:
objWriter - オブジェクト出力先のOutputWriterオブジェクト。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

run

public void run()
         throws java.lang.Exception
カバレッジの計測を実行する。

例外:
java.lang.Exception - 計測の実行中に例外が発生した場合。

launchVM

protected com.sun.jdi.VirtualMachine launchVM()
                                       throws java.io.IOException,
                                              com.sun.jdi.connect.VMStartException
カバレッジ計測に使用するVMを起ち上げる。

戻り値:
カバレッジ計測用のVM。
例外:
java.io.IOException - VMの起動に失敗した場合。
com.sun.jdi.connect.VMStartException - VM は正常に起動したが、接続の確立に失敗した場合。

prepareVM

protected void prepareVM(com.sun.jdi.VirtualMachine vm)
VMの準備処理を実行する。

パラメータ:
vm - カバレッジ計測用のVM。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

executeVM

protected void executeVM(com.sun.jdi.VirtualMachine vm)
                  throws java.lang.Exception
カバレッジの計測を実行する。

パラメータ:
vm - カバレッジ計測用のVM。
例外:
java.lang.Exception - 計測の実行中に例外が発生した場合。
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

handleEvent

protected void handleEvent(com.sun.jdi.event.Event event)
                    throws java.lang.Exception
イベントをキャッチして、それに対する操作を実行する。

パラメータ:
event - イベント。
例外:
java.lang.Exception - 処理中に例外が発生した場合。

entryLine

protected abstract void entryLine(com.sun.jdi.Location location)
カバレッジの準備処理において、ソースコードの各行の登録を行うために呼ばれる メソッドである。

パラメータ:
location - ソースコードの行を示すオブジェクト。

passLine

protected abstract void passLine(com.sun.jdi.Location location)
カバレッジ計測中において、ソースコードの各行を通過した際に呼ばれるメソッド である。

パラメータ:
location - ソースコードの行を示すオブジェクト。

entryClass

protected abstract void entryClass(com.sun.jdi.ReferenceType refType)
カバレッジ計測中において、クラスの登録時に呼ばれるメソッドである。

パラメータ:
refType - 登録されたクラス又はインターフェイスを示すオブジェクト。

entryMethod

protected abstract void entryMethod(com.sun.jdi.Method method)
カバレッジ計測中において、メソッドの呼び出し時に呼ばれるメソッドである。

パラメータ:
method - 呼び出されたメソッド。

exitMethod

protected abstract void exitMethod(com.sun.jdi.Method method)
カバレッジ計測中において、メソッドの終了時に呼ばれるメソッドである。

パラメータ:
method - 実行されたメソッド。

allSourcePaths

public abstract java.util.Collection<java.lang.String> allSourcePaths()
カバレッジの対象となる全ソースファイルのコレクションを取得する。

戻り値:
ソースファイルを格納したコレクション。

allClassNames

public abstract java.util.Collection<java.lang.String> allClassNames()
カバレッジの対象となる全クラスの名前のコレクションを取得する。

戻り値:
クラス名を格納したコレクション。

methodKeysOf

public abstract java.util.Collection<Coverage.MethodKey> methodKeysOf(java.lang.String className)
指定されたクラスに宣言されているメソッドに対するメソッド・キーのリスト を取得する。
メソッド・キーは、メソッド名と引数クラス列挙文字列を保持している。

パラメータ:
className - クラス名。
戻り値:
メソッド・キーを格納するリスト。


Copyright (C) SATOH Takayuki All Rights Reserved.