假设我正在测试一个存储库:
@RunWith(SpringRunner.class)
@SpringBootTest
public class UserRepositoryTest {
@Test
(...)
@Test
(...)
}
我同意 spring 加载其他存储库,但我不同意它在每次启动其中一个 JUnit 时加载嵌入式 Tomcat、服务、 Controller ......。
实现这一目标的最简单方法是什么?
我尝试将一些内部 @Configuration
类与 @ComponentScan
限制到我的存储库包,但它不起作用(它只是被忽略)。
最佳答案
使用注释@DataJpaTest
而不是@SpringBootTest
。它只加载Spring的持久化相关部分。
@RunWith(SpringRunner.class)
@DataJpaTest
public class UserRepositoryTest {
@Test
(...)
@Test
(...)
}
详细解决方案here
如果您有一些 JdbcTemplate
的用法,请查看 this answer
关于java - 最小化 JUnit 测试加载的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53433045/