Ответ 1
Вам нужно импортировать PowerMockRunner
следующим образом:
import org.powermock.modules.junit4.PowerMockRunner;
Я пытаюсь впервые использовать Powermock
Я использую build.gradle и добавил:
dependencies {
...
testCompile 'org.mockito:mockito-all:1.9.5'
testCompile 'org.powermock:powermock-api-mockito:1.5.5'
}
теперь я смотрю на свой тестовый класс, который имеет:
import org.junit.Before;
import org.junit.runner.RunWith;
import org.mockito.Matchers;
import org.powermock.core.classloader.annotations.PrepareForTest;
@RunWith(PowerMockRunner.class)
@PrepareForTest(GeoUtils.class)
и получите эту ошибку:
@RunWith(PowerMockRunner.class)
^
cannot resolve symbol PowerMockRunner
как он решает PrepareForTest
, а не PowerMockRunner
?
Вам нужно импортировать PowerMockRunner
следующим образом:
import org.powermock.modules.junit4.PowerMockRunner;
PowerMockRunner является частью powermock-module-junit4.jar
. Вам нужно объяснить импорт этой банки
Вы можете указать зависимость для этой банки в соответствии с вашим требованием. См. Ссылку .
Вам нужно добавить зависимость gradle
testCompile "org.powermock: powermock-module-junit4: 1.6.4"
Я столкнулся с этой ошибкой, потому что в моем pom.xml был добавлен только первый из следующих зависимостей. Убедитесь, что вы добавили следующие maven-зависимости для PowerMock к вашему pom.xml.
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-api-mockito</artifactId>
<version>1.6.3</version>
</dependency>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-module-junit4</artifactId>
<version>1.6.3</version>
</dependency>