如果任何场景失败,如何停止执行 Cucumber 功能

How to stop execution of a Cucumber feature if any of the scenarios had failed

如果我在一个功能文件中有 10 个场景,如果一个场景失败,那么我想停止执行或继续下一个场景。我想终止对该特定功能文件的执行。我怎样才能在 Java 中做到这一点?

我注意到问题被标记为 Java。 我没有测试下面的答案。它只是基于假设..

好吧,我们需要根据要求调整代码.. - 我们在 Cucumber 中有 @Before@After 来满足这个要求。

如果我是你,我会这样做...

@Before中,我会检查(如果有的话)场景是否失败。如果失败,那么我将终止当前测试的线程并更新结果。

@After中,我会更新场景状态,并在测试执行后更新结果json。

因此,在每次迭代(对于每个场景)中,首先将调用 @Before,其中逻辑将查找在当前场景之前执行的场景。

另外,不用说,我同意在问题上添加的评论。所有场景都应该是独立的。 (但就要求而言,允许进行调整;))

Expert Tips 提到确实增加了 Cucumber 的质量及其用途的价值。希望这可以帮助。

祝你好运...!!

尝试在 "RunCukesTest" class.

中使用 @BeforeClass 和 @AfterClass