gpt4 book ai didi

testing - cucumber 之前和之后的钩子(Hook)在哪里

转载 作者:行者123 更新时间:2023-11-28 21:36:15 26 4
gpt4 key购买 nike

我有一个相当简单的 Cucumber 测试框架,其中包含一个功能文件、一个步骤定义文件和一个如下所示的测试运行器类:

@RunWith(Cucumber.class)
@CucumberOptions(features = "src/test/java/com/tests/cucumber/features/ui/ExampleTest.feature",
glue = { "com.tests.cucumber.stepdefinitions" },
)
public class ExampleTestRunner {

}

这可以很好地运行功能文件中的场景。现在我想添加一个 Before 和 After Hook 来进行一些设置和拆卸,但我不能像我这样让 Hook 运行。我已经尝试将 Hook 添加到 ExampleTestRunner 和 StepDefinition 类,但它们从未运行过。我应该把这些 Hook 放在哪里?目前, Hook 看起来像这样,但一旦我解决了这个问题,我就会向它们添加内容!

package com.tests.cucumber.stepdefinitions;

import cucumber.api.java.After;
import cucumber.api.java.Before;

public class StepDefinitions {

@Before
public void before() {
System.out.println("starting before()");
}
}

感谢您的帮助。

最佳答案

即使我设法让它发挥作用,我还是有点犹豫要不要回答这个问题。据我所知,问题是我在由其他类扩展的类中添加了 Before 和 After 方法。在这种情况下,测试不会运行。我必须将 Before 和 After 方法添加到未扩展的类中。

感觉这有点类似于如果你在一个类中指定一个步骤定义被另一个类扩展,那么这个步骤定义被认为有重复定义的情况。我的诊断是否正确?

关于testing - cucumber 之前和之后的钩子(Hook)在哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58474091/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com