开发者社区> 问答> 正文

@InjectMocks注解在Mockito中主要有哪两种使用场景?

@InjectMocks注解在Mockito中主要有哪两种使用场景?

展开
收起
不吃核桃 2024-07-23 18:53:29 37 0
1 条回答
写回答
取消 提交回答
  • @InjectMocks注解在Mockito中主要有两种使用场景:

    被测试类:当你想测试某个类(如上面的A类)时,可以使用@InjectMocks注解来创建这个类的实例,并自动将标记了@Mock或@Spy的字段注入到这个实例中。这样,你就可以在不依赖真实依赖项的情况下测试目标类。
    被测试类中的依赖项,需要执行真实方法:有时候,你可能需要测试某个类(如C类)中的某个方法(如needExec),但你不想或不需要模拟这个类中的所有依赖项(如B)。此时,你可以使用Mockito.spy(new C())来创建一个C类的部分模拟对象,并使用@InjectMocks(尽管在这个特定场景下更常用的是直接将spy对象赋值给字段)来注入其他依赖项。但请注意,直接在字段上使用@InjectMocks与Mockito.spy结合并不常见,通常你会直接将spy对象赋值给相应的字段。

    2024-07-23 20:40:34
    赞同 2 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载