我想写一个集成测试来验证 @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中为这个场景准备模拟存储库或实际数据?
暂无答案!
目前还没有任何答案,快来回答吧!