Подтвердить что ты не робот

Как выводить имена тестов рубинового блока

У меня есть unit test (пример изменен 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
4b9b3361

Ответ 1

Запустите unit test с параметром 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

Ответ 2

Если вы тестируете рельсы, вы можете использовать

rake test TESTOPTS=-v

Ответ 3

Параметры командной строки не работают, если вы создаете свой собственный тестовый бегун:

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

Вам нужно будет указать многословие в тестовом бегуне. Параметры Test:: Unit:: UI:

SILENT = 0, PROGRESS_ONLY = 1, NORMAL = 2, VERBOSE = 3.

Итак, для подробного:

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