繁体   English   中英

春季黄瓜宁静的自动装配步骤

[英]AutoWiring steps with Spring Cucumber Serenity

我很痛苦地无法自动接线一些步骤。 为了说明这一点,我在github上做了一个小样本项目

https://github.com/lpicquet/serenity-cucumber-spring

我正在尝试自动连接步骤,以便我可以在它们之间共享数据,但是测试当前失败。 有人可以帮忙吗?

问题是您使用的是其他亚军。 通常人们使用SpringRunner.class来处理创建测试上下文等的能力。

构造一个新的SpringRunner并初始化一个TestContextManager,以向标准JUnit 4测试提供Spring测试功能。

要将其他流道与spring功能一起使用,可以结合使用ClassRuleRule

@ClassRule
public static final SpringClassRule SPRING_CLASS_RULE = new SpringClassRule();

@Rule
public final SpringMethodRule springMethodRule = new SpringMethodRule();

SpringClassRule是一个自定义JUnit TestRule,它通过TestContextManager以及相关的支持类和注释在标准JUnit测试中支持Spring TestContext Framework的类级别功能。

与SpringJUnit4ClassRunner相比,Spring的基于规则的JUnit支持具有以下优势:它独立于任何Runner,因此可以与现有的替代运行器(如JUnit的Parameterized)或第三方运行器(如MockitoJUnitRunner)组合。

为了实现与SpringJUnit4ClassRunner相同的功能,必须将SpringClassRule与SpringMethodRule结合使用,因为SpringClassRule仅支持SpringJUnit4ClassRunner的类级功能。

没有这些,就无法在依赖类等中自动装配。

我已通过测试为您的项目添加了PR。

暂无
暂无

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

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