Как получить имя запускаемого теста из обратного вызова установки или разрыва? - PullRequest
4 голосов
/ 19 января 2011

Я хотел бы добавить предупреждения о производительности в наши тесты, например так:

# in test_helper.rb
class ActiveSupport::TestCase
  def record_test_start_time
    @test_start_time = Time.now
  end
  setup :record_test_start_time

  def warn_long_running_test
    running_time = Time.now - @test_start_time
    if running_time > 10.seconds
      puts "WARNING: Test #{test_name} ran for #{running_time}"
    end
  end
  setup :record_test_start_time
end

Как получить имя теста в переменной test_name?У меня были плохие результаты с использованием Kernel # caller из обратных вызовов setup / teardown.

Ответы [ 2 ]

3 голосов
/ 04 ноября 2011

На данный момент это метод method_name.

1 голос
/ 19 января 2011

Метод name дает строку " имя метода (имя класса) ", и я думаю, @method_name дает вам имя текущего теста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...