ruby-on-rails – RubyMine不识别`it_behaves_like`方法
发布时间:2020-12-17 04:38:57 所属栏目:百科 来源:网络整理
导读:当我打开一个类似it_behaves_like方法的规范时,RubyMine无法识别错误消息,找不到’it_behaves_like’. RSpec测试本身工作正常,所以RubyMine无法找到该方法. 在Preference中列出了rspec-rails. 我怎样才能找到问题所在? 编辑 看来RubyMine无法识别动态定义的
当我打开一个类似it_behaves_like方法的规范时,RubyMine无法识别错误消息,找不到’it_behaves_like’.
RSpec测试本身工作正常,所以RubyMine无法找到该方法. 在Preference中列出了rspec-rails. 我怎样才能找到问题所在? 编辑 看来RubyMine无法识别动态定义的方法. https://youtrack.jetbrains.com/issue/RUBY-13950 解决方法
是的,RubyMine,即使是最新版本也存在识别这些生成方法的问题.您可以选择“欺骗”RubyMine来识别它.只需将以下空方法添加到spec_helper.rb的末尾:
def it_behaves_like(*args) ; end 这将使RubyMine看到具有正确签名的方法,但它仍将被rspec覆盖,因此它不会影响您的测试. 更好的是,你可以将它放在spec_helper.rb的require中,例如: rubymine_signatures.rb require 'rubymine_signatures' 然而,无论它放在何处,它仍将污染您的代码库以“修复”IDE,我不建议这样做.由于它仅用于测试,因此可以进行防御. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |