我在运行rspec spec/vector_spec.rb
时收到这条可怕的错误消息,但我无法确定导致错误的规范。
以下是错误消息的某些部分:
..................F...........******************************...........F...***********************....*.....*....................................../home/ubuntu/workspace/daru/lib/daru/index.rb:102: [BUG] Segmentation fault at 0x007fe1e31ce030
ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux]
-- Control frame information -----------------------------------------------
c:0048 p:0021 s:0197 e:000196 METHOD /home/ubuntu/workspace/daru/lib/daru/index.rb:102
c:0047 p:0015 s:0193 e:000192 METHOD /home/ubuntu/workspace/daru/lib/daru/vector.rb:207
...
以下是完整的错误消息:https://gist.github.com/lokeshh/83369d71ca94b07cf89b23e215214666
我想知道哪个规范导致错误,以便我可以查看它,但我找不到一种方法来识别导致错误的规范。
有办法吗?
您可以将冒号和特定测试的行号附加到 RSpec 文件中,例如:
rspec spec/vector_spec.rb:83
您还可以使用 =begin
和 =end
禁用大部分代码以缩小该部分的范围。
我只是跑了rspec -h
,得到了一些非常有用的信息。 查看--only-failures
和next-failure
选项! 另外,看起来您还可以使用-fd
来打印组和示例名称!