gradle testFixturesImplementation не может найти символ Mockito

Я пытаюсь настроить testFixtures. У меня есть класс, который до сих пор находился в src/test/, и теперь я пытаюсь превратить его в fixrure.

В build.gradle я добавил:

      plugins {
    id 'java-library'
    id "java-test-fixtures"
}

Я переместил класс из src/test/java/com/example/AmazonTestConfig.java в src/testFixtures/java/com/example/AmazonTestConfig.java.

И в зависимости мне пришлось добавить несколько вещей, т.е.:

      dependencies {
    ...
    testFixturesImplementation project(':MyCommon')
    testFixturesImplementation 'com.amazonaws:aws-java-sdk-s3:1.12.75'
    testFixturesImplementation 'junit:junit:4.13'
    testFixturesImplementation 'org.mockito:mockito-all:1.9.0'
}

Первые 3 зависимости работают, а мокито нет. Вот часть моего Foo.java:

      import static org.mockito.Mockito.*;

@Ignore
public interface AmazonTestConfig {

    default void setS3FilesDal(ServerEngine engineMock) {
        ICloudStorage s3FilesDal = new AWSStorage();
        CloudServices cloudServicesMock = Mockito.mock(CloudServices.class);
        Mockito.when(engineMock.getCloudServices()).thenReturn(cloudServicesMock);
        Mockito.when(cloudServicesMock.getStorage()).thenReturn(s3FilesDal);
    }
}

Но я получаю следующую ошибку компиляции:

      myproject/src/testFixtures/java/com/example/AmazonTestConfig.java:23: error: cannot find symbol
        CloudServices cloudServicesMock = Mockito.mock(CloudServices.class);
                                          ^
  symbol:   variable Mockito
  location: interface AmazonTestConfig

1 ответ

Я не уверен, почему, но меняю:

      import static org.mockito.Mockito.*;

к:

      import org.mockito.Matchers;
import org.mockito.Mockito;

исправил проблему. Похоже на ошибку в градле.

Другие вопросы по тегам