问题描述
Mockito 是一个模拟框架(味道真的很好)
mockito-kotlin 是一个小型库,提供了在 Kotlin 中使用 Mockito 的辅助函数。
通常从 Kotlin 用 mockito 来模拟接口,我会写一些类似的东西
val mockBookService = Mockito.mock(BookService::class.java)
但是当使用 mockito-kotlin 时,我可以将其更改为
val mockBookService : BookService = mock()
所以我的问题是,在没有提供类参数的情况下,模拟函数如何知道要模拟哪个接口?
解决方法
可以在 mock()
中使用一种最通用的类型来使该声明通过类型检查:val mockBookService: BookService = mock<BookService>()
。
所以类型系统计算出来并使用它。