mockk() 和mockkClass() 之间有什么区别?

use*_*013 5 kotlin mockk

当我开始学习Mockk进行测试时,我有以下问题。

Mockk官方示例显示如下:

val car = mockk<Car>()
Run Code Online (Sandbox Code Playgroud)

val car = mockkClass(Car::class)
Run Code Online (Sandbox Code Playgroud)

我觉得两者是一样的 有什么不同?

小智 2

区别在于第一个模拟实例化方法采用类型参数,第二个采用类引用KClass。

因此,在实践中,这些示例会产生相同的结果,但我猜第二个示例具有更高的自由度来解耦运行时被模拟的类。