Spring Boot-断言应用程序加载失败

时间:2020-09-02 14:46:41

标签: spring spring-boot

我正在测试代码中的一行,该行应该在加载Spring Boot应用程序上下文时导致失败。但是,使用@SpringBootTest在这种情况下将无济于事,因为应用程序初始化会(预期)失败,并且永远无法达到测试方法。

@SpringBootTest
class SomeTestClass {

  @Autowired
  ApplicationContext applicationContext

  @Test
  void someTestCase() {
    //some assert about application context   
  }
}

是否有任何方法可以配置@SpringBootTest,使其在类级别上可以保留下来?另外,是否有任何方法可以手动运行仅受影响组件的小型Spring Boot应用程序?

1 个答案:

答案 0 :(得分:-1)

如果我正确理解了您的问题,则应该使用SpringRunner。

SpringRunner支持加载Spring ApplicationContext并将bean @Autowired插入测试实例。实际上,它的功能远远超出了“ Spring参考手册”中的内容,但这是基本思想。

因此您可以像这样添加它:

@RunWith(SpringRunner.class)
@SpringBootTest
class SomeTestClass {

  @Autowired
  ApplicationContext applicationContext

  @Test
  void someTestCase() {
    //some assert about application context   
  }
}