不推荐使用 scalatestplus-play 的 MockitoSugar

Using MockitoSugar of scalatestplus-play deprecated

我正在使用 "scalatestplus-play" % "5.1.0",我正在尝试将 MockitoSugar 引入我的 class,就像我在早期项目中所做的那样:

class MyTestSpec extends AnyFreeSpec with MockitoSugar

所以我可以使用 mock[MyClass] 函数,现在它已经存在,无法在文档中找到其他内容。

在我以前的项目中我使用了 "scalatestplus-play" % "4.0.3",我确信现在有不同的方法但是找不到它是什么

您的第一个选择是使用 scalatestplus-mockito,在那里您可以找到 MockitoSugar,就像您习惯的那样。

来自 ScalaTest 使用模拟对象进行测试:

You can use any Java mocking framework with ScalaTest, or ScalaMock, a Scala mocking alternative. ScalaTest provides just enough syntax sugar for the three most popular Java mocking frameworks—JMock, EasyMock, and Mockito—to remove boilerplate and clarify the client code.

另一种选择,如附件link中所说,有4个库可以使用。我认为最简单的是ScalaMock。要使用它,您需要扩展 MockFactory.

应从以下位置导入:

import org.scalamock.scalatest.MockFactory

区别在于"scalatestplus-play" % "4.0.3"依赖于ScalaTest version 3.0.8 which still had MockitoSugar. "scalatestplus-play" % "5.1.0" depends on ScalaTest 3.1.1而不再有