在rspec测试中是否有快速输出变量值的方法?例如,在控制器中输出变量,我这样做:
raise variable.to_yaml
我是否可以在rspec测试中查看变量的内容?
答案 0 :(得分:65)
如果您希望输出进入日志文件(即logs / test.log),则可以使用rails logger。
Rails.logger.debug variable.inspect
Rails.logger.debug variable.to_yaml
如果要在控制台中查看输出,可以使用漂亮的打印机'pp'。
require 'pp'
it 'does something'
thing = Factory(:something)
pp thing
end
或者你可以使用好的'ol puts
puts thing.to_yaml
答案 1 :(得分:5)
此时(Rails 4)您可以记录它:
p variable
答案 2 :(得分:1)
使用此:
$stderr.puts variable.to_yaml
答案 3 :(得分:0)
您可以使用gem pry进行
bundle install
现在,您可以通过在变量之后放置“ binding.pry”来测试任何变量。运行bundle exec rspec filepath
,您会得到类似rails c的信息,然后直接编写变量。
我希望这是有道理的