在 Scala 中模拟或监视对象方法以进行单元测试
Object method mocking or spying for unit testing in Scala
有没有办法模拟或监视 Scala 对象中的方法?
object Object {
def fun(value: String) = println(value)
def main(args: Array[String]): Unit = {
fun("executed")
sys.exit(0)
}
}
我想做这样的事情:
spy(Object.fun)
我查看了 ScalaMock
、EasyMock
、JMock
和 Mockito
,但无法真正理解。
更好的方法是不为此使用 Scala 对象。它不可测试。
就像在 java 中一样,您应该避免使用 Static,因为它不能用 mock 代替。
如果你想要 class 的一个实例,你可以在 object
中实例化一次
有没有办法模拟或监视 Scala 对象中的方法?
object Object {
def fun(value: String) = println(value)
def main(args: Array[String]): Unit = {
fun("executed")
sys.exit(0)
}
}
我想做这样的事情:
spy(Object.fun)
我查看了 ScalaMock
、EasyMock
、JMock
和 Mockito
,但无法真正理解。
更好的方法是不为此使用 Scala 对象。它不可测试。
就像在 java 中一样,您应该避免使用 Static,因为它不能用 mock 代替。
如果你想要 class 的一个实例,你可以在 object