无法在 JUnit Mockito 中实现存根

Cannot implement stubbing in JUnit Mockito

我正在尝试使用 Mockito 编写 Junit 测试用例。每当我尝试使用存根,即使用 when 和 returnThen 时,我都会收到一个编译时错误,即 when is unidentified for that class。以下是我的 JUnit 片段

@Before
public void setUp() throws Exception {
registryIndexConfig = mock(RegistryIndexConfig.class);
when(registryIndexConfig.getIndexName()).thenReturn("Demogoblin");
}

我已经导入了以下 classes, packages

import static org.junit.Assert.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Before;
import org.junit.Test;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.testng.Assert;
import static org.mockito.Mockito.mock;
import org.junit.runner.RunWith;  
import org.mockito.runners.MockitoJUnitRunner; 
import static org.mockito.Mockito.stub;

有人可以指出我在这里做错了什么吗?

方法 mockwhen 和许多其他方法是 Mockito class.

中的静态方法

使用 unqualified 时必须导入它们(使用 static import):

import static org.mockito.Mockito.*;

或者,您可以导入 Mockito class(就像您所做的那样)

import org.mockito.Mockito;

并使用方法合格:

@Before
public void setUp() throws Exception {
    registryIndexConfig = Mockito.mock(RegistryIndexConfig.class);
    Mockito.when(registryIndexConfig.getIndexName()).thenReturn("Demogoblin");
}

我更喜欢静态导入方式。它使测试代码看起来更清晰。