mocking repository/filling db before container start for app startup集成测试

o3imoua4  于 2021-07-26  发布在  Java
关注(0)|答案(0)|浏览(344)

我想写一个集成测试来验证 @EventListener(ApplicationReadyEvent.class) annotated方法,但我需要设置一些存储库要找到的数据。这个 @SQL 只在 @Test 方法,即 ApplicationReadyEvent 已处理。, @MockBean 然后 Mockito.when@Before 方法是一样的,只有在 @SpringBootTest 初始化完成,即 ApplicationReadyEvent 已处理。
我也试着提供 @TestConfiguration 定义为:

@Bean
SomeRepository someRepository() {
    SomeRepository someRepository = Mockito.mock(SomeRepository.class);

    Mockito.when(someRepository.findById("value")).thenReturn(...);
    return someRepository;
}

但这有点不够,因为 @SpringBootTest 仍然可以找到此存储库的实际实现(即使我添加 @AutoConfigureMockMvc )在这场冲突中运行崩溃。
如何在testdb中为这个场景准备模拟存储库或实际数据?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题