我有一组为 Cucumber-JVM 编写的验收测试。为了减少反馈时间,我想并行运行(功能的)场景。我该如何以最简单、最方便的方式做到这一点?
(我希望能够在 Java 代码中表达这一点,作为常规的 JUnit 测试/运行程序,即我不想诉诸使用 maven-surefire 或 maven-failsafe 插件的一些解决方法,这需要(?) twiddling 和之后合并 Cucumber 报告。)
由于cucumber-jvm包的性质,测试并行化暂时受到限制。未来有更改 API 的暂定计划(gherkin3、cucumber-jvm v2),但目前 cucumber-jvm 上还没有任何可用于完全并行化的东西。
还有一种方法可以在 cucumber-jvm 上实现一定程度的并行性。西葫芦包(https://github.com/Comcast/Zucchini https://github.com/Comcast/Zucchini)可以通过提供上下文级并行性来提供帮助,如果您必须针对 Android / iOS / Chrome / 等运行一系列测试,这可能会有所帮助。然后测试结果将合并到单个报告中。
要开始使用 Zucchini,请创建一个新的测试类来扩展AbstractZucchiniTest
并标记为@CucumberOptions
and ZucchiniOutput
。然后该类应该实现List<TestContext> getTestContexts()
返回您的专业上下文列表的方法。
Zucchini 还提供其他功能,例如跨上下文屏障同步和将测试输出聚合到 HTML 报告中。如果您已经有了 Cucumber 测试,那么将它们升级到 Zucchini 测试就不需要太多的工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)