org.seasar.framework.unit
クラス S2TestMethodRunner

java.lang.Object
  上位を拡張 org.seasar.framework.unit.S2TestMethodRunner

public class S2TestMethodRunner
extends Object

テストメソッドを扱うランナーです。

作成者:
taedium

フィールドの概要
protected static String DEFAULT_S2JUNIT4_PATH
          S2JUnit4のデフォルトの設定ファイルのパス
protected  Description description
          テストのディスクリプション
protected  EasyMockSupport easyMockSupport
          EasyMockとの対話をサポートするオブジェクト
protected static String ENV_PATH
          このランナーで使用する環境名設定ファイルのパス
protected static String ENV_VALUE
          環境名設定ファイルのパスにファイルが存在しない場合の環境名
protected  S2TestIntrospector introspector
          テストクラスのイントロスペクター
protected  Method method
          テストメソッド
protected  RunNotifier notifier
          ノティファイアー
protected  ClassLoader originalClassLoader
          テストで使用するクラスローダーで置き換えられる前のオリジナルのクラスローダー
protected static String s2junit4Path
          S2JUnit4の設定ファイルのパス
protected  Object test
          テストオブジェクト
protected  Class<?> testClass
          テストクラス
protected  InternalTestContext testContext
          S2JUnit4の内部的なテストコンテキスト
protected  UnitClassLoader unitClassLoader
          テストで使用するクラスローダー
 
コンストラクタの概要
S2TestMethodRunner(Object test, Method method, RunNotifier notifier, Description description, S2TestIntrospector introspector)
          インスタンスを構築します。
 
メソッドの概要
protected  void addFailure(Throwable e)
          テストの失敗を登録します。
protected  void bindField(Field field)
          指定されたフィールドにコンポーネントをバインディングします。
protected  void bindField(Field field, Object object)
          指定されたフィールドに指定された値をバインディングします。
protected  void bindFields()
          フィールドにコンポーネントをバインディングします。
protected  S2Container createRootContainer()
          ルートのコンテナを返します。
protected  void executeMethod()
          テストメソッドを実行します。
protected  void executeMethodBody()
          テストメソッド本体を実行します。
protected  Class<? extends Throwable> expectedException()
          発生すると期待されているエラーもしくは例外のクラスを返します。
protected  boolean expectsException()
          テストの実行で例外が発生することが期待されている場合trueを返します。
protected  ClassLoader getOriginalClassLoader()
          オリジナルのクラスローダーを返します。
protected  void initContainer()
          コンテナを初期化します。
protected  void invokeMethod(Method method)
          指定されたメソッドを実行します。
protected  boolean isAutoBindable(Field field)
          自動フィールドバインディングが可能な場合trueを返します。
protected  boolean isFulfilled()
          事前条件が満たされる場合trueを返します。
protected  boolean isIgnored()
          無視の対象の場合trueを返します。
protected  boolean isUnexpected(Throwable exception)
          期待していない例外もしくはエラーの場合trueを返します。
protected  boolean needsWarmDeploy()
          WARM deployが必要とされる場合trueを返します。
protected  String normalizeName(String name)
          コンポーネント名を正規化します。
protected  String resolveComponentName(Field filed)
          フィールドからコンポーネントの名前を解決します。
 void run()
          このランナーを起動します。
protected  void runAfters()
          すべてのテストケース共通の解放処理を実行します。
protected  void runBefores()
          すべてのテストケース共通の初期化処理を実行します。
protected  void runEachAfter()
          テストケース個別の解放メソッドを実行します。
protected  void runEachBefore()
          テストケース個別の初期化メソッドを実行します。
protected  boolean runEachRecord()
          テストケース個別の登録メソッド存在する場合、登録メソッドを実行しtrueを返します。
protected  void runMethod()
          テストケースを実行します。
protected  void runTest()
          テストを実行します。
protected  void runWithTimeout(long timeout)
          タイムアウトのミリ秒を指定してテストを実行します。
protected  void setUpTestContext()
          テストコンテキストをセットアップします。
protected  void tearDownTestContext()
          テストコンテキストを解放します。
protected  void unbindFields()
          フィールドとコンポーネントのバインディングを解除します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

DEFAULT_S2JUNIT4_PATH

protected static final String DEFAULT_S2JUNIT4_PATH
S2JUnit4のデフォルトの設定ファイルのパス

関連項目:
定数フィールド値

ENV_PATH

protected static final String ENV_PATH
このランナーで使用する環境名設定ファイルのパス

関連項目:
定数フィールド値

ENV_VALUE

protected static final String ENV_VALUE
環境名設定ファイルのパスにファイルが存在しない場合の環境名

関連項目:
定数フィールド値

s2junit4Path

protected static String s2junit4Path
S2JUnit4の設定ファイルのパス


test

protected final Object test
テストオブジェクト


testClass

protected final Class<?> testClass
テストクラス


method

protected final Method method
テストメソッド


notifier

protected final RunNotifier notifier
ノティファイアー


description

protected final Description description
テストのディスクリプション


introspector

protected final S2TestIntrospector introspector
テストクラスのイントロスペクター


originalClassLoader

protected ClassLoader originalClassLoader
テストで使用するクラスローダーで置き換えられる前のオリジナルのクラスローダー


unitClassLoader

protected UnitClassLoader unitClassLoader
テストで使用するクラスローダー


testContext

protected InternalTestContext testContext
S2JUnit4の内部的なテストコンテキスト


easyMockSupport

protected EasyMockSupport easyMockSupport
EasyMockとの対話をサポートするオブジェクト

コンストラクタの詳細

S2TestMethodRunner

public S2TestMethodRunner(Object test,
                          Method method,
                          RunNotifier notifier,
                          Description description,
                          S2TestIntrospector introspector)
インスタンスを構築します。

パラメータ:
test - テストクラスのインスタンス
method - テストメソッド
notifier - ノティファイアー
description - テストのディスクリプション
introspector - テストクラスのイントロスペクター
メソッドの詳細

addFailure

protected void addFailure(Throwable e)
テストの失敗を登録します。

パラメータ:
e - 失敗を表すスロー可能オブジェクト

run

public void run()
このランナーを起動します。


isIgnored

protected boolean isIgnored()
無視の対象の場合trueを返します。

戻り値:
無視の対象の場合true、そうでない場合false

isFulfilled

protected boolean isFulfilled()
事前条件が満たされる場合trueを返します。

戻り値:
事前条件が満たされる場合true、そうでない場合false

runWithTimeout

protected void runWithTimeout(long timeout)
タイムアウトのミリ秒を指定してテストを実行します。

パラメータ:
timeout - タイムアウトのミリ秒

runMethod

protected void runMethod()
テストケースを実行します。

テストの実行に必要な事前処理と事後処理を行います。


setUpTestContext

protected void setUpTestContext()
                         throws Throwable
テストコンテキストをセットアップします。

例外:
Throwable - 何らかの例外またはエラーが起きた場合

getOriginalClassLoader

protected ClassLoader getOriginalClassLoader()
オリジナルのクラスローダーを返します。

戻り値:
オリジナルのクラスローダー

createRootContainer

protected S2Container createRootContainer()
ルートのコンテナを返します。

戻り値:
ルートのコンテナ

tearDownTestContext

protected void tearDownTestContext()
                            throws Throwable
テストコンテキストを解放します。

例外:
Throwable - 何らかの例外またはエラーが起きた場合

runBefores

protected void runBefores()
                   throws org.seasar.framework.unit.S2TestMethodRunner.FailedBefore
すべてのテストケース共通の初期化処理を実行します。

例外:
FailedBefore - 何らかの例外またはエラーが発生した場合
org.seasar.framework.unit.S2TestMethodRunner.FailedBefore

runAfters

protected void runAfters()
すべてのテストケース共通の解放処理を実行します。


runEachBefore

protected void runEachBefore()
                      throws org.seasar.framework.unit.S2TestMethodRunner.FailedBefore
テストケース個別の初期化メソッドを実行します。

例外:
FailedBefore - 何らかの例外またはエラーが発生した場合
org.seasar.framework.unit.S2TestMethodRunner.FailedBefore

runEachAfter

protected void runEachAfter()
テストケース個別の解放メソッドを実行します。


initContainer

protected void initContainer()
コンテナを初期化します。


bindFields

protected void bindFields()
                   throws Throwable
フィールドにコンポーネントをバインディングします。

例外:
Throwable - 何らかの例外またはエラーが発生した場合

bindField

protected void bindField(Field field)
指定されたフィールドにコンポーネントをバインディングします。

パラメータ:
field - フィールド

bindField

protected void bindField(Field field,
                         Object object)
指定されたフィールドに指定された値をバインディングします。

パラメータ:
field - フィールド
object - 値

isAutoBindable

protected boolean isAutoBindable(Field field)
自動フィールドバインディングが可能な場合trueを返します。

パラメータ:
field - フィールド
戻り値:
自動フィールドバインディングが可能な場合true、そうでない場合false

resolveComponentName

protected String resolveComponentName(Field filed)
フィールドからコンポーネントの名前を解決します。

パラメータ:
filed - フィールド
戻り値:
コンポーネント名

normalizeName

protected String normalizeName(String name)
コンポーネント名を正規化します。

パラメータ:
name - コンポーネント名
戻り値:
正規化されたコンポーネント名

runEachRecord

protected boolean runEachRecord()
                         throws Throwable
テストケース個別の登録メソッド存在する場合、登録メソッドを実行しtrueを返します。

戻り値:
登録メソッドが存在する場合true、存在しない場合false
例外:
Throwable - 何らかの例外またはエラーが発生した場合

runTest

protected void runTest()
                throws Throwable
テストを実行します。

JTAが利用可能な場合、トランザクションの制御とテストデータの準備を行います。

例外:
Throwable - 何らかの例外またはエラーが発生した場合

executeMethod

protected void executeMethod()
                      throws Throwable
テストメソッドを実行します。

期待される例外またはエラーが存在するか、存在する場合その例外またはエラーがスローされたかを確認します。

例外:
Throwable - 何らかの例外またはエラーが発生した場合

executeMethodBody

protected void executeMethodBody()
                          throws Throwable
テストメソッド本体を実行します。

例外:
Throwable - 何らかの例外またはエラーが発生した場合

expectsException

protected boolean expectsException()
テストの実行で例外が発生することが期待されている場合trueを返します。

戻り値:
テストの実行で例外が発生することが期待されている場合true、そうでない場合false

isUnexpected

protected boolean isUnexpected(Throwable exception)
期待していない例外もしくはエラーの場合trueを返します。

パラメータ:
exception - 例外もしくはエラー
戻り値:
期待されていない例外の場合true、そうでない場合false

expectedException

protected Class<? extends Throwable> expectedException()
発生すると期待されているエラーもしくは例外のクラスを返します。

戻り値:
発生すると期待されているエラーもしくは例外のクラスがある場合そのクラス、ない場合null

invokeMethod

protected void invokeMethod(Method method)
                     throws Throwable
指定されたメソッドを実行します。

パラメータ:
method - メソッド
例外:
Throwable - 何らかの例外またはエラーが発生した場合

unbindFields

protected void unbindFields()
フィールドとコンポーネントのバインディングを解除します。


needsWarmDeploy

protected boolean needsWarmDeploy()
WARM deployが必要とされる場合trueを返します。

戻り値:
WARM deployが必要とされる場合true、そうでない場合false


Copyright © 2005-2007 The Seasar Foundation. All Rights Reserved.