gpt4 book ai didi

java - Mockito 中的模拟类正在调用什么构造函数(如果有)?

转载 作者:行者123 更新时间:2023-11-30 06:09:17 24 4
gpt4 key购买 nike

在测试类中,我们指示 mockito 提供一些模拟对象(使用 @Mock 注释此类属性字段)以进行测试(可能是注入(inject) @InjectMocks 属性字段),创建每个模拟时遵循哪些规则?

更具体地说:

1)每个模拟是如何构建的?

2)如何处理每个模拟的依赖关系?模拟时应考虑哪些规则和限制?

3)“模拟的类 A 依赖于类 B,类 B 又被模拟(在同一个测试类中)”的情况与“模拟的类 A 依赖于类 B 并且类 B 未被模拟”的情况不同“?

最佳答案

模拟的想法与您的问题所暗示的完全相反:它们不是通过调用您的构造函数来调用的。这就是模拟的全部思想:它们与您的生产代码无关

换句话说:你请求某个 A.class 的模拟对象;你会得到一个支持 A.class 方法的对象。从这个意义上说,模拟的 A 对象没有任何依赖关系。

你知道,这就是重点:如果模拟的 A 与真实的 A 相同; mock 有什么意义?

关于java - Mockito 中的模拟类正在调用什么构造函数(如果有)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38264741/

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