【发布时间】:2015-09-03 04:20:46
【问题描述】:
我的场景文件夹中目前有两个具有不同功能的文件夹:
features
scenarios
folder_1
first_feature.feature
folder_2
second_feature.feature
在这些功能中,我有许多共享一些不同标签的场景
first_feature.feature:
Feature: One
@tag1 @tag2
Scenario: Scenario 1
@tag3
Scenario: Scenario 2
second_feature.feature:
Feature: Two
@tag1 @tag4
Scenario: Scenario 3
所以问题来了:我有一个 rake 任务,它遍历我的场景并使用标签 @tag1 运行所有内容。现在,其中包括功能 1 中的场景 1 和功能 2 中的场景 3。在不更改任何标签或场景的情况下,我可以在我的 rake 任务中添加任何内容来告诉它忽略某个文件/文件夹中的任何测试吗?在上面的示例中,我希望我的 rake 任务忽略它在 folder_2 中找到的任何场景,因此即使场景 3 有 @tag1,它也不会运行。
我目前的 rake 任务:
Cucumber::Rake::Task.new(:all_tag_1) do |t|
tags = '--tags ~@wip --tags @tag1'
t.cucumber_opts = "--format html --out features/build_results/all_tag_1.html --format pretty #{tags} --format junit --out features/build_results/reports"
end
部分问题是我搜索了互联网和 Cucumber 文档,但无法找到列出 cucumber_opts 的所有有效选项的任何地方。如果有人能指出我正确的方向以找到不同可能性的列表,那将不胜感激。
谢谢。
【问题讨论】: