如何将args从命令行传递给rake然后传递给rspec

Jay*_* Ng 5 ruby rake rspec rakefile rspec2

我试图通过命令行传递几个变量来rake在rspec中使用.

从我收集的内容中我可以做到这一点,将args传递给我的rake任务:

task :my_task, :arg1, :arg2 do |t, args|
  puts "Args were: #{args}"
end
Run Code Online (Sandbox Code Playgroud)

但我正在使用rspec,所以我的rake任务看起来像这样:

RSpec::Core::RakeTask.new(:my_task), :arg1, :arg2 do |t, args|
 puts args.arg1
 puts args.arg2
end
Run Code Online (Sandbox Code Playgroud)

这不起作用.

我也没想出如何将它传递给我的rspec规范文件

knu*_*nut 0

你怎么称呼耙子?

对于您的示例,您必须致电:

rake mytask[val1,val2]
Run Code Online (Sandbox Code Playgroud)

我不确定你的第二个代码示例。args 应该是带有键 :arg1 和 :arg2 的哈希。所以你可以使用

puts args[:arg1]
Run Code Online (Sandbox Code Playgroud)

我怀疑 args.arg1 是否有效。