Ruby on rails 打印运行规范名称

Ruby on rails 打印运行规范名称,ruby-on-rails,rspec,Ruby On Rails,Rspec,我在使用rake运行rails应用程序的规范时遇到了一个问题,它在某个规范上冻结。我想看看运行的规范是什么。我有一个非常有趣的答案给你 我看到的问题是,规范的名称写在成功或失败之后。对你来说,这永远不会发生 所以你可以带一个自定义格式化程序!是的,它会起作用的。问题是基本格式化程序定义了很多点,比如组何时启动,示例何时启动,但是可用的格式化程序()没有使用您需要的example_start方法 创建自定义格式化程序很简单-只需将此文件放入spec/support/formatters/expnd

我在使用rake运行rails应用程序的规范时遇到了一个问题,它在某个规范上冻结。我想看看运行的规范是什么。

我有一个非常有趣的答案给你

我看到的问题是,规范的名称写在成功或失败之后。对你来说,这永远不会发生

所以你可以带一个自定义格式化程序!是的,它会起作用的。问题是基本格式化程序定义了很多点,比如组何时启动,示例何时启动,但是可用的格式化程序()没有使用您需要的example_start方法

创建自定义格式化程序很简单-只需将此文件放入spec/support/formatters/expndtw\u formatter.rb

class AnxiousFormatter < RSpec::Core::Formatters::DocumentationFormatter
  def example_started(example)
    message = "- #{example.description}"
    output.puts message
    output.flush
  end
end
上面的例子是针对Rails3和RSpec2.0的——对于以前的版本,它将略有不同。有关自定义格式化程序(适用于Rails 2和RSpec 1.x)的更多信息,请访问project wiki:


有趣的是,不是吗?

当规范冻结时,你按CTRL+C组合键打破它,它会显示堆栈跟踪吗?
spec -r spec/support/formatters/anxious_formatter.rb -f AnxiousFormatter spec/models/...