Aru*_*nav 1 java junit spring spring-test spring-junit
我想在测试失败时收到通知.理想情况下,我想知道我的@After注释方法是否通过了测试.我知道它们是一个可以用于此目的的RunListener,但它只有在我们使用JunitCore运行测试时才有效.如果测试用例失败或类似于RunListener可以与SpringJUnit4ClassRunner一起使用,有没有办法得到通知?
Spring TestContext Framework提供了一个TestExecutionListener可用于实现此目的的SPI.
基本上,如果您实现TestExecutionListener(或更好地扩展AbstractTestExecutionListener),您可以实现该afterTestMethod(TestContext)方法.从TestContext传入的内容中,您可以访问抛出的异常(如果有的话).
这是Javadoc org.springframework.test.context.TestContext.getTestException():
获取在执行测试方法期间抛出的异常.
注意:这是一个可变属性.
返回:抛出的异常,如果没有抛出异常,则返回null
仅供参考:您可以通过@TestExecutionListeners注释注册您的客户监听器.
问候,
山姆