gpt4 book ai didi

java - 如何使用 Mockito 模拟父类(super class)中的字段?

转载 作者:行者123 更新时间:2023-12-02 01:33:41 25 4
gpt4 key购买 nike

我有一个 MyClass,它有一些字段 MyService myService

现在,我正在通过扩展该类来测试该类。即 MyClassTest 扩展 MyClass

我的问题是,如何告诉 Mockito 模拟 myService

谢谢

最佳答案

如果无法从外部访问此字段,您有两个选择:反射和...反射。

示例 1:使用org.mockito.internal.util.reflection.FieldSetter

MyClass m = new MyClass();
FieldSetter.setField(m, m.getClass().getDeclaredField("myService"), yourService);

示例 2:标准Java的反射:

MyClass m = new MyClass();
Field f = m.getClass().getDeclaredField("myService");
f.setAccessible(true);
f.set(m, yourService);

关于java - 如何使用 Mockito 模拟父类(super class)中的字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55577405/

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