【发布时间】:2017-05-12 09:09:41
【问题描述】:
我是 Android 单元测试的新手,我正在使用 Mockito 进行测试。
我想测试我的方法,它有来自另一个类的方法。我想存根该方法,以便它不应该被调用。我正在使用doReturn().when(),因此不调用原始方法,但它正在调用原始方法。
这是我的代码:
doReturn(true).when(myclass1mock).methodofclass1();
boolean a = myclass1mock.methodofclass1(); //here it return true
class2spy.methodofclass2(anyvalue);
我正在测试的方法是:
public class2 {
public void methodofclass2(Value) {
boolean value = class1.methodofclass1(); //here I don't want to call this method
}
}
问题是class1 的方法每次都会被调用。我想要一些不调用 class1.methodofclass1() 的东西。
我正在注射使用:
@Mock
class1 myclass1mock;
@InjectMocks
class2 myclass2;
@Before
public void setUp() {
myclass2 = new myclass2();
class2spy = Mockito.spy(myclass2);
}
【问题讨论】:
-
如何将 class1mock 注入到 class2spy 中?
-
查看我编辑的答案
-
@MaciejKowalski 我已经编辑过了
标签: java android unit-testing mocking mockito