我尝试了例外情况下给出的解决方案:mockito想要但没有调用,实际上与这个mock没有任何交互,而这个mockito也想要但没有调用:实际上,与这个mock没有任何交互但仍然得到相同的错误。我是不是漏掉了什么?以下是me的实现:-
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import static org.mockito.Mockito.verify;
class ClassOne {
public void method(ClassTwo two) {
}
}
class ClassTwo {
public ClassTwo(String value) {
}
}
class MyClassTwo extends ClassTwo {
public MyClassTwo(String value) {
super(value);
}
}
class ClassToBeTested {
ClassOne classOne;
public ClassToBeTested() {
classOne = new ClassOne();
}
public void methodToBeTested() {
ClassTwo event = new MyClassTwo("String");
classOne.method(event);
}
}
@RunWith(MockitoJUnitRunner.class)
public class ClassToBeTestedTest {
ClassToBeTested presenter;
@Mock
ClassOne classOne;
@Before
public void setUp() {
presenter = new ClassToBeTested();
}
@Test
public void testAbc() {
presenter.methodToBeTested();
ClassTwo event = new MyClassTwo("someString");
verify(classOne).method(event);
}
}
您需要传入mocked类(或者使用PowerMock做一些可怕的事情)。
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import static org.mockito.Mockito.verify;
class ClassWeWantToBeMocked {
void methodToBeMocked() { }
}
class ClassToBeTested {
ClassWeWantToBeMocked dependency;
// Notice that the dependency is now passed in.
// This is commonly called Dependency Injection.
public ClassToBeTested(ClassWeWantToBeMocked dependency){
this.dependency = dependency;
}
public void methodToBeTested(){
dependency.methodToBeMocked();
}
}
@RunWith(MockitoJUnitRunner.class)
public class ClassToBeTestedTest {
ClassToBeTested presenter;
@Mock
ClassWeWantToBeMocked ourMock;
@Before
public void setUp(){
// Notice how we now pass in the dependency (or in this case a mock)
presenter=new ClassToBeTested(ourMock);
}
@Test
public void myMockTest(){
presenter.methodToBeTested();
verify(ourMock).methodToBeMocked();
}
}
MyDriveRepository.getMyDriveItemSelectedPathuri一直返回null。我试着查看以下链接,但没有找到解决问题的方法。
更新下面是异常消息: 更新2用真实实例替换mocked WithDefinitions对象后,我得到以下输出:
在执行以下步骤后,我得到了错误:想要但没有调用:实际上,与这个模拟没有任何交互。我不明白我在这里遗漏了什么。
我已经通过StackOverflow上的帖子。 想要但没有被调用:实际上,这个模拟没有任何交互。 我确实做了被要求的事情,但我仍然错过了一些东西。你能帮帮我我错过了什么吗? 我的Java代码: 我的单元测试: 一切正常工作,除了我得到错误作为
我有接口 接口的实现是 我还有一节课 我正在尝试为MyClass编写JUnit。我已经做了 但我需要mockito但没有调用,实际上在验证调用时与这个mock没有任何交互。 谁能提出一些解决方案。
一开始我想对我的英语感到抱歉。 这是我测试后得到的: 有人能告诉我我做错了什么吗?