TestContext始终为空

时间:2018-10-11 20:38:41

标签: citrus-framework

有什么方法可以在我的黄瓜步骤类中注入TestContext吗?

我正在使用柑橘,春天和黄瓜以及最新版本。但是,当我使用下面的注入时,我总是会得到TestContext的空指针异常。对于TestDesigner和TestRunner,我没有问题。

@CitrusResource private TestContext         tContext;

在我看到的日志中

Failed to get proper TestContext from Cucumber Spring application context: No qualifying bean of type 'com.consol.citrus.context.TestContext' available

1 个答案:

答案 0 :(得分:0)

您显然正在使用设置

cucumber.api.java.ObjectFactory=cucumber.runtime.java.spring.CitrusSpringObjectFactory

cucumber.properties中。

这样做时,您需要在步骤类中手动添加带有@ContextConfiguration批注的Citrus Spring配置。

@ContextConfiguration(classes = CitrusSpringConfig.class)
public class MySteps {

    @CitrusResource
    private TestDesigner designer;

    [...]

}

如果您使用默认的cucumber.xml Spring XML应用程序上下文,则需要将Citrus Spring配置作为Bean添加到该文件:

<!-- JavaConfig bean post-processor -->
<bean class="org.springframework.context.annotation.ConfigurationClassPostProcessor"/>

<!-- Citrus Java config -->
<bean id="citrusSpringConfig" class="com.consol.citrus.config.CitrusSpringConfig"/>