Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails RSpec-如何获得更好的错误消息?_Ruby On Rails_Ruby_Rspec - Fatal编程技术网

Ruby on rails RSpec-如何获得更好的错误消息?

Ruby on rails RSpec-如何获得更好的错误消息?,ruby-on-rails,ruby,rspec,Ruby On Rails,Ruby,Rspec,我已经习惯了PHPUnit,所以我发现RSpec在显示哪里出了问题、哪里出了问题以及为什么出了问题方面不如RSpec 例如,在PHPUnit中,我可以在引发异常时获取堆栈跟踪(即使在RSpec中使用-b选项,我也只能获取RSpec异常的堆栈跟踪,而不是Rails的) 此外,当出现错误时,它会显示实际值和预期值 我希望在RSpec中实现这两个特性。在Ruby或Rails出现异常的情况下,获取包含堆栈跟踪的详细错误消息,并了解实际值 有什么办法可以做到这一点吗?如果你跑步的话 rspec --hel

我已经习惯了PHPUnit,所以我发现RSpec在显示哪里出了问题、哪里出了问题以及为什么出了问题方面不如RSpec

例如,在PHPUnit中,我可以在引发异常时获取堆栈跟踪(即使在RSpec中使用-b选项,我也只能获取RSpec异常的堆栈跟踪,而不是Rails的)

此外,当出现错误时,它会显示实际值和预期值

我希望在RSpec中实现这两个特性。在Ruby或Rails出现异常的情况下,获取包含堆栈跟踪的详细错误消息,并了解实际值

有什么办法可以做到这一点吗?

如果你跑步的话

rspec --help
您将看到可以传递(或通过
RSpec.configure
配置)给运行程序的所有选项。其中一个将强制RSpec显示整个回溯

-b, --backtrace                  Enable full backtrace.
您还可以配置这些行,以控制要回溯的深度

对于实际值与预期值,RSpec默认支持这一点。例如,见


对于自定义定义的对象,它也会打印出一个差异。

请显示您得到的测试和控制台输出。实际上,我希望出现堆栈跟踪,因为存在的validates冲突,但我调用的是valid?边救边救!是引发异常的方法。我相信我没有那么心烦意乱