我得到一个NullPointerException用于实例变量,这些变量在带有@Given注释的方法中实例化,如下面的代码所示" test":
import com.qmetry.qaf.automation.step.QAFTestStepProvider;
import cucumber.api.java.en.Given;
import cucumber.api.java.en.Then;
import cucumber.api.java.en.When;
@QAFTestStepProvider
public class Steps
{
String test;
@Given("^Step 1$")
public void step1()
{
test = "test_string";
}
@Then("^Step 2$")
public void step2()
{
String[] list = test.split("_");
}
}
我已经看到各种示例(second to last code example)和资源(first paragraph of this answer)说这应该没问题,因为只有在尝试在Step Definition Java类之间共享状态时才需要DI ,不属于班级本身。
我有什么遗漏或是否有办法使这项工作?
答案 0 :(得分:0)
根据qaf-release-notes-2.1.9,您需要将step.provider.sharedinstance
设置为true
(默认值为false
)。在应用程序属性中,您可以指定
step.provider.sharedinstance=true