RubyMine IDE无法在Spec目录中找到Spec文件

时间:2017-09-19 22:03:50

标签: ruby rspec rubymine

我已经将Ruby项目加载到RubyMine中,像往常一样,它的规范文件位于spec目录中。右键单击并选择'运行'在任何单个spec文件上正确运行它。右键单击并选择“全部运行”。在specs目录上导致每个测试都失败,并显示以下消息:

  

无法加载:/Users/nathaniel/repos/close-web/spec/compositions/analysis/analysis_data_spec.rb:1         异常消息:无法加载此类文件 - spec_helper

在启动配置中,“测试”文件夹'似乎设置正确:

/Users/nathaniel/repos/close-web/spec

还有工作目录:

/Users/nathaniel/repos/close-web

Ruby参数设置如下:

-e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) -Itest

(RubyMine网站上有一些迹象表明需要-Itest。)在Bundler选项卡下'在捆绑包的上下文中运行脚本'也检查。我不清楚RubyMine可能需要以递归方式查找和执行测试。从命令行运行它们可以正常工作:

~repos/closeweb $ bundle exec rspec spec
... (all the tests running)

Finished in 6 minutes 27 seconds (files took 13.39 seconds to load)
1054 examples, 0 failures, 108 pending

这里有什么配置错误,所有测试都不会运行?

1 个答案:

答案 0 :(得分:2)

鉴于您的文件夹名为spec,而不是test,您需要-Ispec,而不是-Itest

换句话说,您的RubyMine参数应为:

-e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) -Ispec

来自ruby man page

-I directory   Used to tell Ruby where to load the library scripts.
               Directory path will be added to the load-path variable ($:)