在 Play for Scala 中模拟 类

Mocking classes in Play for Scala

我计划使用 ScalaTest 来测试 Play Controller,但仍未决定是否应该使用 Mockito 或 ScalaMock 进行模拟。 Play 网站提到了 Mockito,但它似乎专注于 Java。在 Scala 中开发应用程序时,ScalaMock 看起来更自然,但是从我读到的内容来看,与 Mockito 相比,它似乎支持更少的测试场景,而且它也不太成熟。有什么建议吗?

The Play website mentions Mockito, however it seems to focus on Java.

Mockito 是为 Java 编写的,但这并不能阻止它成为 Scala 项目中非常有效的工具,并且我相信它在 Scala 社区中得到了广泛使用。

我都用过,但是当我有选择的时候倾向于使用 Mockito,因为我更喜欢语法——但这是更个人的偏好。 Mockito 的存在时间比 ScalaMock 长得多,并且由于其更大的贡献者基础而得到更积极的维护。

首先尝试一下两者,否则如果您不确定我个人会选择 Mockito。

我确实经常尝试检查我的设计,以检查我 really need those mocks 但是 - 这是一个很好的做法,我相信你知道。

如果您认为 material 缺少某些内容,总是很乐意查看 ScalaMock 上的功能请求。 ScalaMock 的一个好处可能是更精简的语法,尤其是在模拟 scala.Function* 类型时。