如何在没有SpringBootApplication的项目中启动SpringBootTest单元测试

2021-06-09 22:44:47 浏览数 (1)

有一些子项目其中包含了整套Web后台服务,但是本身并不作为独立的进程启动(没有SpringBootApplication),而是作为jar包被其他项目引用。这样单元测试启动的时候就会遇到错误java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test

解决方法

解决方法倒是很简单,既然是缺少SpringBootApplication,那么就在单元测试代码中,增加一个有SpringBootApplication的启动类就可以了。这样既不影响子项目的定位(不独立启动),又可以完成单元测试

  • UtApplication.java
代码语言:javascript复制
@SpringBootApplication
class UtApplication {
    static void main(String[] args) {
        SpringApplication.run(UtApplication.class, args);
    }
}

参考

  • How to test Java Spring Boot application without @SpringBootApplication using JUnit?

0 人点赞