Unit testing made easy with MockK
summary
Mocks Kotlin objects, extension and top-level functions, private and static methods, constructors, varargs and enums, and verifies call order and counts; uses MockK DSL (every/verify, coEvery/coVerify for suspend functions) and slots/mutable lists to capture arguments. Demo app tests exercise presenter and coroutine-based use cases and report 100% JaCoCo code coverage for covered lines. Notes reduced boilerplate vs Mockito, relaxed mocks to avoid strict exceptions, and a caveat that MockK caches mocks requiring unmockAll/clear in large test suites.
AI-written summary · about
chapters (34)
- 0:00Introduction and speaker
- 2:17What is MockK
- 3:19Getting started with MockK
- 4:00Mocking basics with MockK
- 5:29Verification with MockK
- 7:13Mocking methods with parameters
- 8:16MockK annotations
- 9:41Spies in MockK
- 10:45Relaxed mocking
- 11:27Relaxing unit functions
- 12:10Mocking Kotlin objects
- 12:52Mocking objects comparison
- 13:34Unmocking objects
- 13:54Mocking enums
- 14:17Capturing parameters
- 15:40Mocking constructors
- 16:24Argument matching
- 16:45Chaining calls
- 17:06Hierarchical mocking
- 18:09Verification counts and order
- 19:32Verification confirmation
- 21:17Mocking functions returning Unit
- 21:37Mocking extension functions
- 21:58Mocking top-level functions
- 22:20Answers in MockK
- 22:42Mocking Java static methods
- 23:03Mocking private functions
- 24:07Mocking varargs
- 24:29Mocking coroutines
- 25:12Mocking suspend functions
- 26:17Mocking default functions
- 26:40Demo walkthrough
- 35:43MockK limitations and coverage
- 36:48Q&A and conclusion








