【问题标题】:How to mock a method of kotlin object class using MockK如何使用 MockK 模拟 kotlin 对象类的方法
【发布时间】:2021-03-08 08:12:26
【问题描述】:

我有一个像下面这样的 kotlin 对象类

object DummyClass {

    fun method1() {}
}

我想使用 MockK 库模拟函数 method1()

因为这是一个对象类方法来模拟一个不能正常工作的普通函数,所以我尝试过如下所示

也尝试了一些其他的方法,但没有奏效

@Test
fun method1Test() {
    val mock = mockk<DummyClass>()
    every { mock.method1() } just runs
    DummyClass.method1()
}

我在 StackOverflow 上看到了一些问题,但我的问题仍未找到任何解决方案。

【问题讨论】:

    标签: kotlin mockk


    【解决方案1】:

    要在 Object 类上应用模拟,我们可以简单地使用 mockkObject(ObjectClassName) 并且该类的模拟方法与其他方法完全相同 every { ObjectClassName.methodName() } just runs

    通过 StackOverflowGoogle

    寻找解决方案后

    我在official documentation of MockK找到了我的问题的解决方案

    我在这里添加了我的发现的屏幕截图,保留这个问题希望它可以帮助某人

    【讨论】:

      猜你喜欢
      • 2019-03-15
      • 2021-03-05
      • 2021-03-02
      • 2022-09-27
      • 2022-11-27
      • 2023-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多