class Test::Unit::TestCase
クラスの継承リスト: Test::Unit::TestCase < Test::Unit::Assertions < Object < Kernel
要約
テストの基本単位(あるいは「テスト本体」)を表すクラスです。 テストを行うメソッド(テストメソッド)は TestCase のサブクラスのインスタンスメソッド として定義されます。テストメソッドの名前は「test」で始まっていなければなりません。 逆に、「test」で始まっているメソッドは全てテストメソッドと見なされます。 各テストメソッドは、Test::Unit::TestCase.suite により Test::Unit::TestSuite オブジェクトへとひとつにまとめられます。
require 'test/unit' require 'test/unit/ui/console/testrunner' class TC_String < Test::Unit::TestCase def test_size assert_equal('abc'.size, 3) end def test_concat assert_raise(TypeError) do 'abc' + 1 end end end suite = TC_String.suite Test::Unit::UI::Console::TestRunner.run(suite)
各 TestCase オブジェクトは、ひとつのテストメソッドに対応しています。テストが実行される時には、 テストメソッドの数だけ TestCase オブジェクトが生成されます。 テストの実行時にはそれぞれの結果がTest::Unit::TestResultに集計されます。
特異メソッド
new(test_method_name) -> Test::Unit::TestCase
-
このメソッドをユーザが直接呼ぶことはありません。
test_method_name に対応した TestCase オブジェクトを生成して返します。
- [PARAM] test_method_name:
- テストメソッドの名前を文字列で与えます。
suite -> Test::Unit::TestSuite
-
「test」ではじまるインスタンスメソッド全てに対して、それぞれに対応する TestCase オブジェクトを生成し、Test::Unit::TestSuite オブジェクト としてまとめたものを返します。
「test」ではじまるインスタンスメソッドがない場合は、 Test::Unit::TestCase#default_test に対応づけされた TestCase オブ ジェクトのみを持つ、TestSuite オブジェクトを返します。
インスタンスメソッド
default_test -> ()
-
常に失敗するテストです。
method_name -> String
-
自身に対応しているテストメソッドの名前を文字列で返します。
Test::Unit::TestCase#setup や Test::Unit::TestCase#teardown において、実行する(あるいは、実行した)テストメソッドの名前を知るのに 使うことができます。
name -> String
-
自身に対応しているテストメソッドの名前を人間が読みやすい形式で返します。
run(result) {|STARTED, name| ...}
-
このメソッドをユーザが直接呼ぶことはありません。
自身に対応したテストメソッドを実行して failures や errors を集計します。
- [PARAM] result:
- Test::Unit::TestResult オブジェクトを与えます。
setup -> ()
-
各テストメソッドが呼ばれる前に必ず呼ばれます。
size -> Integer
-
常に 1 を返します。
teardown -> ()
-
各テストメソッドが呼ばれた後に必ず呼ばれます。
privateメソッド
passed? -> bool
-
テストが成功したなら、true を返します。そうでないなら、false を返します。 Test::Unit::TestCase#teardown の中で使うことを意図されています。 テスト実行前に何を返すかは不定です。
定数
PASSTHROUGH_EXCEPTIONS
-
Test::Unit::TestCase#run の実行時に rescue されない例外の一覧です。