【问题标题】:Parallelize tests (Cucumber 5, Junit 5)并行化测试(Cucumber 5、Junit 5)
【发布时间】:2020-07-06 09:14:54
【问题描述】:

我正在使用 Cucumber 5、Junit 5。我在功能文件中编写了测试。

现在我想这样做:

  • 将我的测试分成几组(例如,2 组:group1 和 group2)。
  • 为组指定不同的配置(例如:以顺序模式从 group1 进行测试,以并行模式从 group2 进行测试)。
  • 并最终运行所有测试(即 group1 将按顺序运行,group2 将并行运行)。

请告诉我如何在 Cucumber5/Junit5 上做到这一点?

【问题讨论】:

    标签: junit cucumber


    【解决方案1】:

    您应该确定不应同时使用的资源,而不是在一组测试中进行思考。一旦您确定了这些资源,您就可以标记每个场景或使用它们使用的资源。您可以通过标记特征来标记特征文件中的所有场景。

    然后您可以配置 Cucumber 以指示 JUnit Platform 避免通过 junit-platform.properties 并发调度这些场景:

    cucumber.execution.exclusive-resources.<tag-name>.read-write=<resource-name>
    

    例如使用时:

    cucumber.execution.exclusive-resources.reads-and-writes-system-properties.read-write=SYSTEM_PROPERTIES
    

    带有@reads-and-writes-system-properties 标记的场景将使用读写锁锁定SYSTEM_PROPERTIES 资源,并且不会与锁定同一资源的任何其他场景同时执行。

    见: https://github.com/cucumber/cucumber-jvm/tree/main/junit-platform-engine#exclusive-resources

    【讨论】:

    • 你好@M.P.科尔斯坦杰。谢谢你的回答。我决定,首先我会尝试在 Cucumber 上并行运行一组测试。
    猜你喜欢
    • 1970-01-01
    • 2022-12-05
    • 2020-04-07
    • 1970-01-01
    • 1970-01-01
    • 2022-10-18
    • 1970-01-01
    • 2020-07-13
    • 2022-08-20
    相关资源
    最近更新 更多