ruby-on-rails – 如果rspec测试失败,请启动ruby调试器
发布时间:2020-12-16 20:22:33 所属栏目:百科 来源:网络整理
导读:通常,当测试失败时,我花费了很多时间来弄清楚导致失败的原因.如果RSpec可以在测试失败时启动一个Ruby调试器,那么可以立即检查本地变量来深入了解原因. 我正在使用的工作现在看起来像这样: # withing some testdebugger unless some_variable.nil?expect(som
通常,当测试失败时,我花费了很多时间来弄清楚导致失败的原因.如果RSpec可以在测试失败时启动一个Ruby调试器,那么可以立即检查本地变量来深入了解原因.
我正在使用的工作现在看起来像这样: # withing some test debugger unless some_variable.nil? expect(some_variable).to be_nil 然而,这种方法是麻烦的,因为我先等待测试失败,然后添加调试器行,解决问题,然后必须删除调试器行,而我希望它的工作更像是gdb,它有能力踢当一个异常被击中,而不需要用调试器语句胡椒你的代码库. 编辑:我试过普利茅斯它对我来说还不够可靠.发展历史似乎也表明它不是很好的支持宝石,所以我宁愿不依赖它. 更新:我试过撬动抢救,发现它很整洁.但是,我使用了zeus [https://github.com/burke/zeus],并且想知道是否有办法使其与撬动协同工作 解决方法
使用
pry-rescue,这是普利茅斯的精神继承人:
从自述: 如果您使用RSPec或respec,则可以使用rescue rspec或rescue respec在每次测试失败时打开撬动会话: $rescue rspec From: /home/conrad/0/ruby/pry-rescue/examples/example_spec.rb @ line 9 : 6: 7: describe "Float" do 8: it "should be able to add" do => 9: (0.1 + 0.2).should == 0.3 10: end 11: end RSpec::Expectations::ExpectationNotMetError: expected: 0.3 got: 0.30000000000000004 (using ==) [1] pry(main)> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |