如何在Cucumber-JVM中并行运行场景



我为Cucumber-JVM编写了一组验收测试。为了减少反馈时间,我想并行运行(一个功能的)场景。我怎么用最简单最方便的方法来做呢?

(我希望能够在Java代码中表达这一点,作为一个常规的JUnit测试/运行器,也就是说,我不希望使用maven-surefire或maven-failsafe插件来解决一些问题,这些插件需要(?)之后处理和合并Cucumber报告。)

由于cucumber-jvm包的特性,测试并行化暂时受到限制。未来有更改API (gherkin3、cucumber-jvm v2)的试试性计划,但目前在cucumber-jvm上还没有完全并行化的功能。

仍然有一种方法可以在cucumber-jvm上获得一定程度的并行性。Zucchini包(https://github.com/Comcast/Zucchini)可以提供上下文级别的并行性,如果你必须对Android/iOS/Chrome等运行一系列测试,这可能会有所帮助。然后将测试结果合并到单个报告中。

要开始使用Zucchini,创建一个新的测试类,扩展AbstractZucchiniTest,并标记为@CucumberOptionsZucchiniOutput。然后,该类应该实现List<TestContext> getTestContexts()方法,该方法返回您的专用上下文列表。

Zucchini还提供了其他特性,例如跨上下文屏障同步和将测试输出聚合到HTML报告中。如果你已经有了黄瓜测试,就不需要把它们升级为西葫芦测试了。

相关内容

  • 没有找到相关文章

最新更新