Intellij ScalaTest与Mockito,测试框架意外退出

时间:2015-10-29 07:55:55

标签: scala intellij-idea mockito scalatest

我在测试中使用了ScalaTest和Mockito。如果我使用命令行测试通过。但是当我使用Intellij运行时出现以下错误。似乎只有测试有mockito导入。

An exception or error caused a run to abort: org.mockito.mock.MockCreationSettings.getSerializableMode()Lorg/mockito/mock/SerializableMode; 
java.lang.NoSuchMethodError: org.mockito.mock.MockCreationSettings.getSerializableMode()Lorg/mockito/mock/SerializableMode;
    at org.powermock.api.mockito.repackaged.AcrossJVMSerializationFeature.enableSerializationAcrossJVM(AcrossJVMSerializationFeature.java:166)
    at org.powermock.api.mockito.repackaged.CglibMockMaker.createMock(CglibMockMaker.java:23)
    at org.powermock.api.mockito.internal.mockmaker.PowerMockMaker.createMock(PowerMockMaker.java:46)
    at org.mockito.internal.util.MockUtil.createMock(MockUtil.java:26)
    at org.mockito.internal.MockitoCore.mock(MockitoCore.java:51)
    at org.mockito.Mockito.mock(Mockito.java:1243)
    at org.mockito.Mockito.mock(Mockito.java:1120)
    at org.scalatest.mock.MockitoSugar$class.mock(MockitoSugar.scala:74)

3 个答案:

答案 0 :(得分:0)

我遇到了与Eclipse完全相同的问题,因为我有多个org.mockito.mock.MockCreationSettings类实例。这个类出现在mockito-core.jar和mockito-all.jar中。我不是为什么开始失败,我使用相同的配置很长时间和很多测试,但问题是我必须从pom.xml中删除mockito-core依赖并且只保留mockito-all。希望它有所帮助。
PS:你也可以运行mvn依赖:树来检查另一个依赖是否也带来了mockito-core.jar

答案 1 :(得分:0)

正在寻找getSerializableMode()类中名为MockCreationSettings的方法。您的Mockito和PowerMock版本似乎不匹配。

尝试通过Maven存储库获取PowerMock,并检查您的powermock-api-mockito所依赖的Mockito版本。

答案 2 :(得分:0)

我正在使用IntelliJ Ultimate 2019.3,Scala 2.12.8。我面临着同样的问题。

升级库对我有用。之前:

"org.scalatest" %% "scalatest" % "3.0.5"
"org.mockito" %% "mockito-scala" % "1.5.12"
"org.mockito" %% "mockito-scala-scalatest" % "1.5.12"

之后:

"org.scalatest" %% "scalatest" % "3.1.1"
"org.mockito" %% "mockito-scala" % "1.13.0"
"org.mockito" %% "mockito-scala-scalatest" % "1.13.0"
相关问题