【问题标题】:ScalaMock class valsScalaMock 类值
【发布时间】:2017-01-17 16:23:33
【问题描述】:
class MyClassWithVals(val a: String, val b: String, val c: String) {}

我可以用 ScalaMock 模拟一下吗:

val mock = stub[MyClassWithVals]
//when mock.a expect "The value of a"

我想模拟这个而不是仅仅创建一个填充值的 MyClassWithVals 实例的原因是我有一个包含 10 个或更多参数的类,我只想定义其中一两个参数的行为以进行测试.

如果不使用 ScalaMock,是否有另一个库可以直接使用,或者 Scala 类 vals 的功能是否存在限制?

【问题讨论】:

    标签: scalamock


    【解决方案1】:

    我通过创建另一个扩展 MyClassWithVals 的仅测试类来解决问题:

    class MyClassWithValsStub(
      override val a: String = null,
      override val b: String = null,
      override val c: String = null
    ) extends MyClassWithVals(
      a,
      b,
      c
    ) {}
    

    使用这个额外的类,我可以在我的测试用例中说:

    var myStub = new MyClassWithValsStub(b = "Test B")
    

    【讨论】:

      猜你喜欢
      • 2017-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-25
      • 2020-08-03
      • 1970-01-01
      相关资源
      最近更新 更多