无法解决方法“何时”

时间:2014-08-12 15:52:39

标签: mockito

我跟随Mockito的Vogella教程,并立即陷入困境。 IntelliJ为下面的课程显示cannot resolve method 'when'

...我错过了什么?

import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mockito;
import org.mockito.runners.MockitoJUnitRunner;

@RunWith(MockitoJUnitRunner.class)
public class MockitoTest  {

@Test
public void test1()  {
    MyClass test = Mockito.mock(MyClass.class);
    // define return value for method getUniqueId()
    test.when(test.getUniqueId()).thenReturn(43);

    // TODO use mock in test.... 
}

}

2 个答案:

答案 0 :(得分:13)

当()不属于你的MyClass类时的方法。这是Mockito班级的一部分:

Mockito.when(test.getUniqueId()).thenReturn(43);

或者,使用静态导入:

import static org.mockito.Mockito.*;

...

when(test.getUniqueId()).thenReturn(43);

答案 1 :(得分:0)

你正试图从模拟的课程中获得。您需要执行以下操作:

...
MyClass test = Mockito.mock(MyClass.class);
Mockito.when(test.getUniqueId()).thenReturn(43);
...