2009-01-09 47 views
11

我有一个单元测试(例如修改Test::Unit documentation如何输出红宝石单元的名称测试

require 'test/unit' 

class TC_MyTest < Test::Unit::TestCase 
    def test_something 
    assert(true) 
    end 
end 

当我执行它,我得到:

Loaded suite C:/test 
Started 
. 
Finished in 0.0 seconds. 

1 tests, 1 assertions, 0 failures, 0 errors 

我想获得的东西像这样(test_something输出):

Loaded suite C:/test 
Started 
test_something 
. 
Finished in 0.0 seconds. 

1 tests, 1 assertions, 0 failures, 0 errors 

回答

8

运行单元测试与verbose选项。

test.rb -v v 

test.rb --verbose=verbose 

输出:

Loaded suite C:/test 
Started 
test_something(TC_MyTest): . 

Finished in 0.0 seconds. 

1 tests, 1 assertions, 0 failures, 0 errors 
+4

你不需要在--verbose之后加上= verbose,或者在v之后加上-v或者-verbose或者-verbose就可以做到这一点。 – 2009-01-09 15:28:34

4

命令,如果要创建自己的测试亚军行选项不起作用:

Test::Unit::UI::Console::TestRunner.run(TC_MyTest) 

你将不得不在测试运行器中指定详细程度。 Test::Unit::UI options是:

SILENT = 0,PROGRESS_ONLY = 1,正常= 2,VERBOSE = 3

因此,对于冗长:

Test::Unit::UI::Console::TestRunner.run(TC_MyTest, 3) 
14

如果你在轨测试,你可以使用

rake test TESTOPTS=-v