如何执行以下方案:(目的是能够运行我拥有的所有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")}
答案 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