gpt4 book ai didi

java - 通过注释类创建带有限定符的@MockBean?

转载 作者:行者123 更新时间:2023-11-30 01:55:50 25 4
gpt4 key购买 nike

在我的 Spring Boot 测试中,我使用了 2 个具有不同限定符的模拟 bean:

@RunWith(SpringRunner.class)
@SpringBootTest
class HohoTest {
@MockBean @Qualifier("haha") IHaha ahaha;
@MockBean @Qualifier("hoho") IHaha ohoho;
}

由于我没有显式使用这些 bean,所以我宁愿将它们从类主体中移走,因为 @MockBean 注释现在是可重复的:

@RunWith(SpringRunner.class)
@SpringBootTest
@MockBean(IHaha.class)
@MockBean(IHaha.class)
class HohoTest {}

但是,我还需要传入限定符,因为它们具有相同的类型。关于如何实现这一目标有什么想法吗?

最佳答案

因为使用注释@Qualifier意味着通过名称选择bean,所以你可以使用如下代码为模拟设置名称:

@ExtendWith(SpringExtension.class)
@ContextConfiguration(classes = {JsonMapperConfig.class})
public class IntegrationFlowTest {

@MockBean(name = "s3MessageRepository")
private S3Repository s3MessageRepository;

// etc

关于java - 通过注释类创建带有限定符的@MockBean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54548461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com