Taiwan Kotlin User Group 的網站,在台灣推廣 Kotlin 程式語言,舉辦相關活動。如果對 Kotlin 有興趣,想要多瞭解一些,歡迎來我們的社群一起聚會!
Kotlin Mockk 是一個協助在測試環境中
製造 test double 的框架
宣告 Car 的 mock 物件 car
希望 car
收到 drive(Direction.NORTH)
時
固定回傳 Outcome.OK
val car = mockk<Car>()
every { car.drive(Direction.NORTH) } returns Outcome.OK
宣告 Car 的 mock 物件 car
希望 car
收到 drive(Direction.NORTH)
時
固定回傳 Outcome.OK
如果收到 drive(Direction. SOUTH)
時
行為和原本 Car 類別一樣
val car = mockk<Car>()
every { car.drive(Direction.NORTH) } returns Outcome.OK
every { car.drive(Direction.SOUTH) } answers { callOriginal() }
宣告 Car 的 spyk
物件 car
在程式執行完之後
確認是否被呼叫 drive(Direction.NORTH)
val car = spyk(Car())
car.drive(Direction.NORTH)
verify { car.drive(Direction.NORTH) }
想看更多範例嗎?
可以看看
或加入 kotlin.tips 的 Kotlin 讀書會 !