リンクされたコードが JUnit TestRules を実行しない理由の明確な解決策を見つけるのに苦労しています。
TestRules が実行される成功ケースと、 TestRules が失敗する状況を示す失敗ケースを作成しました。
TestRules が取得されない理由を誰かが理解できますか? Spring の TestRule が取り上げられていないだけではありません。ソース コードの MyTestRule.java で示されているように、すべて TestRules のようです。
成功した場合に実行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
。
誰にもアイデアはありますか?