通常我使用parallel_cucumber运行我的测试,parallel_cucumber使用parallel_test gem并行运行不同的功能。我想设置一个rake任务,该任务将使用不同的配置文件运行并并行运行每个任务中的功能。
我用这种方式设置了我的Rakefile:
namespace :features do
Cucumber::Rake::Task.new(:basket) do |t|
t.profile = "basket"
end
Cucumber::Rake::Task.new(:fruits) do |t|
t.profile = "fruits"
end
Cucumber::Rake::Task.new(:veggies) do |t|
t.profile = "veggies"
end
task :all => [:basket, :fruits, :veggies]
end
当我运行“rake features:all”时,它将按顺序运行每个任务(按预期/期望),但将逐个运行每个任务中的功能(不需要)。我想保持每个任务按顺序运行,但希望每个任务中的功能并行运行。这可能吗?如果没有办法可以做到这一点吗?
一如既往,非常感谢您的帮助。
答案 0 :(得分:1)
Rake提供多任务。你可以
在rakefile中将task
更改为multitask
:
multitask :all => [:basket, :fruits, :veggies]
在命令行中使用-m选项:
rake -m features:all
答案 1 :(得分:0)
看看parallel_tests宝石。它允许您并行运行您的功能。虽然典型的用例是运行所有功能,但您可以并行运行特定的rake任务。有关详细信息,请参阅文档。