org.seasar.framework.unit
クラス S2TestMethodRunner

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

public class S2TestMethodRunner
extends java.lang.Object

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

作成者:
taedium

フィールドの概要
protected static java.lang.String DEFAULT_S2JUNIT4_PATH
          S2JUnit4のデフォルトの設定ファイルのパス
protected  org.junit.runner.Description description
          テストのディスクリプション
protected  EasyMockSupport easyMockSupport
          EasyMockとの対話をサポートするオブジェクト
protected  S2TestIntrospector introspector
          テストクラスのイントロスペクター
protected  java.lang.reflect.Method method
          テストメソッド
protected  org.junit.runner.notification.RunNotifier notifier
          ノティファイアー
protected  java.lang.ClassLoader originalClassLoader
          テストで使用するクラスローダーで置き換えられる前のオリジナルのクラスローダー
protected static java.lang.String s2junit4Path
          S2JUnit4の設定ファイルのパス
protected  java.lang.Object test
          テストオブジェクト
protected  java.lang.Class<?> testClass
          テストクラス
protected  InternalTestContext testContext
          S2JUnit4の内部的なテストコンテキスト
protected  boolean testFailed
          テストが失敗したことを表すフラグ
protected  UnitClassLoader unitClassLoader
          テストで使用するクラスローダー
 
コンストラクタの概要
S2TestMethodRunner(java.lang.Object test, java.lang.reflect.Method method, org.junit.runner.notification.RunNotifier notifier, org.junit.runner.Description description, S2TestIntrospector introspector)
          インスタンスを構築します。
 
メソッドの概要
protected  void addFailure(java.lang.Throwable e)
          テストの失敗を登録します。
protected  void bindField(java.lang.reflect.Field field)
          指定されたフィールドにコンポーネントをバインディングします。
protected  void bindField(java.lang.reflect.Field field, java.lang.Object object)
          指定されたフィールドに指定された値をバインディングします。
protected  void bindFields()
          フィールドにコンポーネントをバインディングします。
protected  S2Container createRootContainer()
          ルートのコンテナを返します。
protected  void executeMethod()
          テストメソッドを実行します。
protected  void executeMethodBody()
          テストメソッド本体を実行します。
protected  java.lang.Class<? extends java.lang.Throwable> expectedException()
          発生すると期待されているエラーもしくは例外のクラスを返します。
protected  boolean expectsException()
          テストの実行で例外が発生することが期待されている場合trueを返します。
protected  java.lang.ClassLoader getOriginalClassLoader()
          オリジナルのクラスローダーを返します。
protected  void initContainer()
          コンテナを初期化します。
protected  void invokeMethod(java.lang.reflect.Method method)
          指定されたメソッドを実行します。
protected  boolean isAutoBindable(java.lang.reflect.Field field)
          自動フィールドバインディングが可能な場合trueを返します。
protected  boolean isFulfilled()
          事前条件が満たされる場合trueを返します。
protected  boolean isIgnored()
          無視の対象の場合trueを返します。
protected  boolean isUnexpected(java.lang.Throwable exception)
          期待していない例外もしくはエラーの場合trueを返します。
protected  boolean needsWarmDeploy()
          WARM deployが必要とされる場合trueを返します。
protected  java.lang.String normalizeName(java.lang.String name)
          コンポーネント名を正規化します。
protected  boolean requiresTransactionCommitment()
          テストが失敗していない場合かつトランザクションをコミットするように設定されている場合にtrueを返します。
protected  java.lang.String resolveComponentName(java.lang.reflect.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 java.lang.String DEFAULT_S2JUNIT4_PATH
S2JUnit4のデフォルトの設定ファイルのパス

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

s2junit4Path

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


test

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


testClass

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


method

protected final java.lang.reflect.Method method
テストメソッド


notifier

protected final org.junit.runner.notification.RunNotifier notifier
ノティファイアー


description

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


introspector

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


originalClassLoader

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


unitClassLoader

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


testContext

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


easyMockSupport

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


testFailed

protected boolean testFailed
テストが失敗したことを表すフラグ

コンストラクタの詳細

S2TestMethodRunner

public S2TestMethodRunner(java.lang.Object test,
                          java.lang.reflect.Method method,
                          org.junit.runner.notification.RunNotifier notifier,
                          org.junit.runner.Description description,
                          S2TestIntrospector introspector)
インスタンスを構築します。

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

addFailure

protected void addFailure(java.lang.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 java.lang.Throwable
テストコンテキストをセットアップします。

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

getOriginalClassLoader

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

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

createRootContainer

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

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

tearDownTestContext

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

例外:
java.lang.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 java.lang.Throwable
フィールドにコンポーネントをバインディングします。

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

bindField

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

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

bindField

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

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

isAutoBindable

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

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

resolveComponentName

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

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

normalizeName

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

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

runEachRecord

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

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

runTest

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

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

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

requiresTransactionCommitment

protected boolean requiresTransactionCommitment()
テストが失敗していない場合かつトランザクションをコミットするように設定されている場合にtrueを返します。

戻り値:
テストが失敗していない場合かつトランザクションをコミットするように設定されている場合にtrue 、そうでない場合false

executeMethod

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

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

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

executeMethodBody

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

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

expectsException

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

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

isUnexpected

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

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

expectedException

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

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

invokeMethod

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

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

unbindFields

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

例外:
java.lang.Throwable

needsWarmDeploy

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

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


Copyright © 2004-2014 The Seasar Foundation. All Rights Reserved.