Mockito测试无法初始化

时间:2016-07-20 14:47:40

标签: java eclipse junit mocking mockito

这与InitializationError失败。在同一个包中运行的其他测试,所以我在我的代码中做了一些愚蠢的事情。 Stacktrace读取"没有找到匹配[[Exactmatch]]"。

的测试
public class TestClassToTest {
    @Mock
    File mockOfAFile;

    @Test
    public void testAMethod(File mockOfAFile) {
        MockitoAnnotations.initMocks(this);
        given(fileMock.getName()).willReturn("test1");
        assertEquals("test1",ClassBeingTested.methodBeingTested(mockOfAFile));
    }
}

尝试了所有事情,但对Mockito来说却是新手。我在这做什么傻事?

由于

1 个答案:

答案 0 :(得分:2)

我找到了两件事要解决:

  1. @Test方法应该没有参数
  2. 您需要另一个File实例,名为fileMock
  3. 所以这是更新后的代码:

    public class TestClassToTest {
    
        @Mock
        File mockOfAFile;
    
        @Mock
        File fileMock; // the new mock
    
        @Test
        public void testAMethod() { // no parameters
            MockitoAnnotations.initMocks(this);
            given(fileMock.getName()).willReturn("test1"); // here is the new mock used
            assertEquals("test1",ClassBeingTested.methodBeingTested(mockOfAFile));
        }
    }