英文:
Ignore particular tag in cucumber but run all other tags
问题
我有一个场景,在这个场景中,我需要运行多个标签,并且在发生某个条件时不需要运行另一个标签。当浏览器是IE时,我不想运行Feature_1。
@run_me @do_not_run
Feature 1
@Tag1 @Tag2
Scenario: 场景 1
@run_me
Feature 2
@Tag1 @Tag3
Scenario: 场景 2
条件:
if(browser == "IE"){
当存在 @do_not_run 标签时,执行所有 @run_me 标签,但不要执行带有 @do_not_run 标签的部分
}
否则
运行所有 @run_me
当前代码:
--tags @run_me
实现这个目标的正确方法是什么?
注:
我尝试过在 if 条件内使用 --tags @run_me ~@do_not_run
。但不确定是否是正确的方法。
英文:
I have a scenario, where I need to run multiple tags and need not run another one when a condition occurs. I don't want to run Feature_1 when the browser is IE.
@run_me @do_not_run
Feature 1
@Tag1 @Tag2
Scenario: Scenario 1
@run_me
Feature 2
@Tag1 @Tag3
Scenario: Scenario 2
Condition:
if(browser == "IE"){
then execute all @run_me tags but don't execute it when there is @do_not_run
else
run all @run_me
Current code:
--tags @run_me
What should be the right way to achieve it?
Note:
I tried --tags @run_me ~@do_not_run
inside the if condition. But not sure it is the correct method or not.
答案1
得分: 1
你可以按照以下方法执行标签。
- @fast -- 使用 @fast 标记的场景
- @wip 并且不是 @slow -- 使用 @wip 标记但不同时也使用 @slow 标记的场景
- @smoke 和 @fast -- 同时使用 @smoke 和 @fast 标记的场景
- @gui 或者 @database -- 使用 @gui 或者 @database 标记的场景
英文:
You can follow below approach to execute the tags.
- @fast -- Scenarios tagged with @fast
- @wip and not @slow -- Scenarios tagged with @wip that aren’t also tagged with @slow
- @smoke and @fast -- Scenarios tagged with both @smoke and @fast
- @gui or @database --Scenarios tagged with either @gui or @database
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论