Error: java: cannot find symbol symbol: class MockitoJUnitRunner

Error: java: cannot find symbol symbol: class MockitoJUnitRunner

我正在开始一个新的 Dropwizard 项目,但我无法使用 MockitoJUnitRunner 到 运行 测试。

我可以 运行 主应用程序。所以,我猜这不是 JRE/JDK 问题。

以下是我的项目中的一些文件:

pom.xml

<dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13</version>
            <scope>test</scope>
</dependency>

FooTest.java(为了简单起见,我去掉了逻辑。)

import org.junit.Test;

import org.junit.runner.RunWith;

@RunWith(MockitoJUnitRunner.class)
class FooTest {
  @Test
  public void testSout() {
    System.out.println("This tests works.");
  }
}

我收到以下错误。

Error:(20, 10) java: cannot find symbol symbol: class MockitoJUnitRunner

首先将 Mockito 的依赖项添加到您的项目中,然后从适当的位置导入 class。

<dependency>
  <groupId>org.mockito</groupId>
  <artifactId>mockito-core</artifactId>
  <version>3.2.4</version>
  <scope>test</scope>
</dependency>

在您的 class 中进行正确的导入。

import org.mockito.junit.MockitoJUnitRunner;

注意: 您的代码并没有真正使用任何 Mockito 注释,例如 @Mock@Spy,所以不确定为什么您甚至想要 运行 它与特殊的 mockito 运行ner。目前它只会减慢您的测试 运行s。