1

我一直在努力寻找一个明显的解决方案来解决为什么链接代码不会运行 JUnit TestRules。

我创建了一个执行 TestRules 的成功案例,以及一个显示 TestRules 失败的失败案例。

是否有人能够看到为什么没有拾取 TestRules?不只是 Spring 的 TestRule 没有被采纳。似乎都是 TestRules,如源代码中的 MyTestRule.java 所示。

在成功案例上运行mvn clean install,将看到所有测试通过。但是mvn clean install在失败案例上运行将产生以下失败:

    Tests run: 13, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.9 sec <<< FAILURE! - in net.serenitybdd.demos.acceptance.CalculateResults
net.serenitybdd.demos.acceptance.CalculateResults  Time elapsed: 1.454 sec  <<< FAILURE!
java.lang.AssertionError: expected:<3> but was:<1>
        at org.junit.Assert.fail(Assert.java:88)
        at org.junit.Assert.failNotEquals(Assert.java:743)
        at org.junit.Assert.assertEquals(Assert.java:118)
        at org.junit.Assert.assertEquals(Assert.java:555)
        at org.junit.Assert.assertEquals(Assert.java:542)
        at net.serenitybdd.demos.acceptance.CalculateResults.test(CalculateResults.java:60)


Results :

Failed tests:
  CalculateResults.test:60 expected:<3> but was:<1>

Tests run: 13, Failures: 1, Errors: 0, Skipped: 0

这是 Spring 的SpringMethodRule没有被拾取的结果,可以在测试类中看到net.serenitybdd.demos.acceptance.CalculateResults

有没有人有任何想法?

4

1 回答 1

0

看来我正在使用带有 Serenity 的 Cucumber,而 Cucumber 团队出于哲学原因目前不支持 JUnit TestRules。希望他们改变主意:)

https://github.com/cucumber/cucumber-jvm/issues/894

于 2015-12-07T16:36:32.250 回答