【问题标题】:How does the Mockito-Kotlin mock function work without a class parameter?如果没有类参数,Mockito-Kotlin 模拟函数如何工作?
【发布时间】:2021-07-06 16:40:39
【问题描述】:

Mockito 是一个模拟框架(味道真的很好)

mockito-kotlin 是一个小型库,它提供了在 Kotlin 中使用 Mockito 的辅助函数。

通常从 Kotlin 用 mockito 模拟接口我会写类似的东西

val mockBookService = Mockito.mock(BookService::class.java)

但是在使用 mockito-kotlin 时,我可以将其更改为

val mockBookService : BookService = mock()

所以我的问题是,如果没有提供的类参数,模拟函数如何知道要模拟哪个接口?

【问题讨论】:

    标签: kotlin mockito mockito-kotlin


    【解决方案1】:

    mock() 中可以使用一种最通用的类​​型来使该声明通过类型检查:val mockBookService: BookService = mock<BookService>()

    所以类型系统会计算出来并使用它。

    【讨论】:

    • 这是否类似于 ArrayList names = new ArrayList() 在 Java 中的工作方式,从声明的类型中推断出右手边?模拟函数是否需要内联并具体化以使用“已确定”类型?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-14
    • 1970-01-01
    相关资源
    最近更新 更多