如何在春季启动时模拟可选的Bean?

来源:爱站网时间:2021-09-16编辑:网友分享
在我的SpringBootApplication中,我有一个Bean,它注入另一个可选的Bean(如下所示)@Service公共类A {// B是依赖项私有中的另一个@Component ...

问题描述


在我的SpringBootApplication中,有一个bean注入了另一个可选bean(如下所示)

@Service
public class A {

    //B is another @Component from one of the dependencies
    private Optional b;
    ...
    ...
}

我正在为class A @MockBean编写集成测试。但是,由于Optional b是最后一堂课,因此Spring Mockito会引发以下错误

无法模拟/间谍类java.util.Optional-期末班

有没有解决的办法?非常感谢您的帮助。

解决方法:


您可以使用Optional

如果您将带有注释的嘲笑与否一起使用,则您无法使用Optional.of(b),因为您的可选选项不会被嘲弄为已知。您必须自己创建服务@InjectMocks。像这样的东西:

A

上一篇:在Java中进行时区转换时,结果很奇怪

下一篇:使用while循环将日期添加到日期中

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载