0

我对 ruby​​ on rails 很陌生。我无法弄清楚如何在每次测试中显示时间流逝。现在我正在研究 rspecs 和 cucumber。我通过运行命令 rake 运行了所有测试。当每个测试执行时,我希望它显示一个计时器。我想显示每个特定测试经过的时间。我们可以像一个全局函数那样做它来监听每个测试过程吗?

请帮我。

4

1 回答 1

1

你有两个选择,我的建议是使用第一个,因为它已经由 Rspec 提供。

1.使用rspec --profile

这是 Rspec 的内置功能,将向您显示 10 个最慢规范的时间。阅读每个 rspec 示例的显示运行时以获取更多详细信息。

2.使用全局之前/之后

spec/spec_helper您还可以在(或配置 Rspec 的任何位置)创建自己的解决方案,添加如下内容:

Rspec.configure do |config|
 config.before(:each) do
   @start_timer = Time.now
 end

  config.after(:each) {}
    puts "Spec ran in #{Time.now - @start_timer}s"
  end
end
于 2014-04-16T06:01:19.640 回答