为什么不推荐使用 scalatest MockitoSugar?

Why is scalatest MockitoSugar deprecated?

我刚开始使用 Scala 编写 junit 测试,我正在使用 Mockito 来模拟对象。我也在使用 scalatest_2.12-3.0.4。 ScalaTest 文档(如 here)显示了使用 MockitoSugar 创建模拟的语法,即

val mockCollaborator = mock[Collaborator]

Eclipse 在导入语句中显示 org.scalatest.mock.MockitoSugar 被划掉,表明它已被弃用。我发现的唯一选择是,不要使用 MockitoSugar 而是使用:

val mockCollaborator = mock(classOf[Collaborator])

这似乎也能正常工作,所以我很好奇 ScalaTest 推荐我使用什么。

或者就此而言,我为什么还要使用 MockitoSugar?它还有其他功能吗?我一直无法找到关于它的任何文档,除了每个人似乎都使用 shorthand mock[] 表示法。

根据issue和一些评论,答案应更改为:

  1. MockitoSugar 已移至单独的项目:https://github.com/scalatest/scalatestplus-mockito
  2. 需要添加新的依赖才能使用

https://mvnrepository.com/artifact/org.scalatestplus/mockito-3-4_2.13/3.3.0.0-SNAP3

testCompile group: 'org.scalatestplus', name: 'mockito-3-4_2.13', version: '3.3.0.0-SNAP3'

来源问题:https://github.com/scalatest/scalatest/issues/1789


source 中所述,您应该使用 org.scalatest.mockito.MockitoSugar 而不是 org.scalatest.mock.MockitoSugar