【发布时间】:2016-05-12 10:40:50
【问题描述】:
在我的游戏应用程序中,我打算模拟一个案例类。我可以这样做,但它会创建一个所有成员变量都为 null 的对象。 有没有办法创建案例类的模拟对象,以便该对象可以初始化一些成员?
case class User(name: String, address: String)
val mockUser = mock[User]
user.name // null
user.address //null
如何创建一个 mockUser 以便我可以为名称和地址分配一些值?
编辑:
我需要模拟对象的能力,因为我想拥有成员方法之一的预定义行为。 (此成员方法调用外部服务,我不想在进行单元测试时调用外部服务。)成员方法在我要测试的另一个成员方法内部调用。
【问题讨论】:
-
模拟案例类真的有用吗?而不是用假值创建测试实例?
-
我需要一个模拟,因为我不希望类的某些方法不被执行,而是我想要一个预定义的行为。问题已更新。