在ruby rake中运行一些脚本或所有脚本

时间:2013-01-05 14:26:29

标签: ruby webdriver rake

如何执行以下方案:(目的是能够运行我拥有的所有selenium脚本,或者只运行我想要的脚本,如果我使用以下代码和方案从终端窗口传递测试文件作为参数:< / p>

如果测试文件在终端窗口中传递 然后系统将在代码下面运行:

scripts = ENV[scripts].plit(',')
FileList[scripts].each { |file|
system("ruby #{file} > #{directory_name}/#{file}.out")}

如果测试文件未在终端窗口中传递(这意味着我想运行我在测试套件中的所有脚本),那么系统将在代码下面运行:

FileList['test*.rb'].each { |file|
system("ruby #{file} > #{directory_name}/#{file}.out")}

1 个答案:

答案 0 :(得分:2)

如果我理解正确,您可以使用if声明吗?

task :default do
  if ENV[scripts]
    scripts = ENV[scripts].split(',')
    FileList[scripts].each { |file|
    system("ruby #{file} > #{directory_name}/#{file}.out")}
  else
    FileList['test*.rb'].each { |file|
    system("ruby #{file} > #{directory_name}/#{file}.out")}
  end
end