繁体   English   中英

无法在QAFTestStepProvider类内传递实例变量

[英]Cannot Pass Instance Variables Within QAFTestStepProvider Class

我得到一个实例变量的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("_");
    }
}

我已经看到各种示例( 倒数第二个代码示例 )和资源( 此答案的第一段 )说这应该没问题,因为DI仅在尝试在Step Definition Java类之间共享状态时才需要,而在类中则不需共享本身。

有什么我想念的东西吗?

根据qaf-release-notes-2.1.9,您需要将step.provider.sharedinstance设置为true (默认值为false )。 在应用程序属性中,您可以指定

step.provider.sharedinstance=true

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM