Powermock с Mockito - проблема зависимостей - PullRequest
0 голосов
/ 14 апреля 2020

Я использую следующие зависимости:

  • mockito-core: 2.8.47
  • powermock-api-mockito2: 2.0.2
  • powermock-module- junit4: 2.0.2

И это мой pom:

<dependency>
  <groupId>org.powermock</groupId>
  <artifactId>powermock-module-junit4</artifactId>
  <version>${powermock.version}</version>
  <scope>test</scope>
</dependency>
<dependency>
  <groupId>org.powermock</groupId>
  <artifactId>powermock-api-mockito2</artifactId>
  <version>${powermock.version}</version>
  <scope>test</scope>
</dependency>

со следующими свойствами:

<properties>
  <powermock.version>2.0.2</powermock.version>
</properties>

Теперь, когда я запускаю какой-то модульный тест Я получаю:

Caused by: java.lang.NoSuchMethodError: org.mockito.MockitoFramework.getPlugins()Lorg/mockito/plugins/MockitoPlugins;
    at org.powermock.api.mockito.mockmaker.MockMakerLoader.doLoad(MockMakerLoader.java:45)
    at org.powermock.api.mockito.mockmaker.MockMakerLoader.load(MockMakerLoader.java:36)
    at org.powermock.api.mockito.mockmaker.PowerMockMaker.<init>(PowerMockMaker.java:36)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at java.lang.Class.newInstance(Class.java:442)

Я немного потерян в этом - все еще получаю тот же сценарий: изменение версии одной из зависимостей и чего-то не хватает: /

Я использовал этот сайт для выбора зависимостей версии: https://github.com/powermock/powermock/wiki/Mockito-2-Maven Может кто-нибудь помочь мне и рассказать, какова процедура выбора правильных артефактов с версиями?

Спасибо за помощь :)

1 Ответ

0 голосов
/ 15 апреля 2020

когда вы добавляете какие-либо зависимости, проверьте соответствующие соответствия, которые будут добавлены

для ex - если вы добавляете версию powermock-api-mockito - 1.7.4

https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito2/2.0.2

Всегда выбирайте стабильную версию и наиболее часто используемую версию, которую вы сделали правильно, от go до указанного выше URL и смотрите, как показано ниже

enter image description here

прокрутите страницу вниз - вы увидите, что она автоматически добавляется - ниже зависимостей

enter image description here

Теперь я думаю, что это Легко найти зависимости.

Примечание. Здесь показана другая версия

mockito-core: 2.8.47 -> 2.23.0

...