在为rspec运行rake_task时,找不到我的Ruby install \ bin \ ruby​​.exe

时间:2013-05-24 17:30:08

标签: ruby testing rspec rake

我可以直接运行rspec但是使用像

这样简单的Rakefile

require 'rspec/core/rake_task'

task :default => [:spec]

RSpec::Core::RakeTask.new do |task|

end

我得到类似这样的输出 C:\ Ruby193 -S rspec ./spec/hello_spec.rb

你可以看到它没有找到ruby可执行文件。 rspec如何知道它在哪里? 我为Ruby关闭了我的环境变量,它仍然这样做。

1 个答案:

答案 0 :(得分:0)

我必须为两种类型设置环境变量,所以我仍然可以在主Ruby安装中找到二进制文件。 首先是用户我将整个路径放到ruby \ bin \ ruby​​.exe中,而对于系统我只将路径放到bin目录中。这似乎解决了我的问题,我仍然可以运行其他二进制文件。

USER: %RUBY%= C:\ Ruby193 \ bin \ ruby​​.exe并追加到PATH

SYSTEM: %RUBY%= C:\ Ruby193并将其附加到Path作为%RUBY%\ bin

我使用ansicon.exe加上root中的dll,只要驱动程序一样长。

require 'rspec/core/rake_task'

task :default => [:spec]

RSpec::Core::RakeTask.new do |task|
  task.pattern = "./spec/*_spec.rb"
  task.rspec_opts = ['-c']# for ansi colors
end

请注意,块中不需要默认值。 task是默认的test。只需用它设置一些选项。