【问题标题】:Cucumber specific scenario to run conditionally有条件运行的黄瓜特定场景
【发布时间】:2019-12-07 10:04:02
【问题描述】:

我的项目中有多个功能,每个功能都包含多个场景。

我想知道我是否可以根据我的 application.yaml 中设置的特定值跳过运行中的一个或多个功能或场景(而其余的仍在运行)。 (或者如果有更好的方法)

我想我可以在 Given 之后添加一个 And 语句并检查属性,但我不知道如何在其实现中跳过该场景。

示例:

我有一个名为“type”的属性,它可以是“apple”或“orange”,并且我有一个具有以下场景的功能:

  • 场景 A:仅在 type 为 apple 时运行
  • 场景 B:仅在类型为橙色时运行
  • 场景 C:无论类型如何都将运行

我该怎么做?

【问题讨论】:

    标签: java spring cucumber scenarios


    【解决方案1】:
    1. 您可以使用Tag expressions 标记您的功能/场景。在您的示例中:@apple,@orange
    2. 您可以使用这些标签来指定要运行的功能/场景。如何执行此操作取决于您运行测试的方式,但您需要提供 tags=@apple 或 tags=@orange,具体取决于您要运行的测试,或者如果您要运行所有测试,则省略标签。李>

    【讨论】:

    • 谢谢Marit,所以基本上我只是创建一个标签并用它注释我的场景,在我的黄瓜选项中我将它作为标签传递,如“not @apple”(假设我不希望苹果运行) ?
    • 是的,或者如果您确实希望所有标记为 @apple 的东西都运行,则传递标记“@apple”。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多