提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
在单元测试中,如果在微服务环境下需要其他服务模块支持但其他模块目前又无法提供支持的情况下。可以使用@MockBean注解和@SpyBean注解模拟服务返回数据支持测试。
@MockBean
使用@MockBean修饰的Service返回值默认为null,不会调用真实的方法。
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/405812e5c9544f94a59257c7662f87f1.png)
如果不想使用默认值可以指定返回值。
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/f89fc43220b04ebd93f575ab878bafb0.png)
但是如果接口可以使用的话使用如上方法就没法获得接口正确的返回值了。因此可以用下面这个注解。
@SpyBean
没有标明默认值的时候默认调用真实的方法,否则调用默认值。
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/12f7ae82a3d6456c9898ee3b544ee187.png)
表明默认值后返回默认值
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/e6c5cb1e33d94574bc2b9517c51378a4.png)