Kotlin 科特林·朱尼特·莫克跑步者
我正在尝试使用Kotlin 科特林·朱尼特·莫克跑步者,kotlin,junit,mockk,Kotlin,Junit,Mockk,我正在尝试使用Kotlin和框架编写单元测试。如果测试是使用JUnit5框架编写的,那么可以使用MockKExtension运行它们 @ExtendWith(MockKExtension::class) 但是对于junit4测试,是否有mockrunner? 比如: 如果没有这样的运行程序,则需要手动初始化模拟 private val a: A = mockK() 是否可以使用带有JUnit4的注释来初始化kotlin模拟 @MockK private lateinit var a: A
Kotlin
和框架编写单元测试。如果测试是使用JUnit5框架编写的,那么可以使用MockKExtension
运行它们
@ExtendWith(MockKExtension::class)
但是对于junit4
测试,是否有mock
runner?
比如:
如果没有这样的运行程序,则需要手动初始化模拟
private val a: A = mockK()
是否可以使用带有JUnit4的注释来初始化kotlin模拟
@MockK
private lateinit var a: A
答案是否定的
但是。在JUnit 4中使用Mock非常简单:
您只需编写如下代码:
class CarTest {
@MockK
lateinit var car1: Car
@Before
fun setUp() = MockKAnnotations.init(this, relaxUnitFun = true) // turn relaxUnitFun on for all mocks
// And so on…
顺便说一句,这不是手工制作的例子,它来自
class CarTest {
@MockK
lateinit var car1: Car
@Before
fun setUp() = MockKAnnotations.init(this, relaxUnitFun = true) // turn relaxUnitFun on for all mocks
// And so on…