Kotlin MockK 사용 가이드
MockK
MockK는 테스트 코드를 작성하기 위한 코틀린 Mock 라이브러리이다.
(기존에 Java에서의 Mockito를 같은 것으로 보면 된다.)
설치
먼저 Mockk을 사용하려면 의존 라이브러리를 추가해야 한다.
https://mvnrepository.com/artifact/io.mockk/mockk
Gradle
testImplementation("io.mockk:mockk:1.12.0")
Maven
<dependency>
<groupId>io.mockk</groupId>
<artifactId>mockk</artifactId>
<version>1.12.0</version>
<scope>test</scope>
</dependency>
verify - 메소드가 호출되었는지 체크
mocking 된 객체의 메소드가 호출된 것을 확인하기 위해 ``verify` 를 사용한다.
// save() 메소드가 1번 호출됐는지 확인
verify(exactly = 1) { myMock.save(any()) }
// save() 메소드가 호출되지 않았는지 확인
verify(exactly = 0) { myMock.save(any()) }
위의 예제처럼 특정 메소드를 호출하지 않은 것을 확인하기 위해 exactly = 0 로 체크할 수도 있지만, 해당 객체의 어떤 메소드도 호출하지 않은걸 체크하려면 wasNot Called 를 사용하면 된다. 모든 메소드 호출을 체크하기 때문에 좋다.
참고
최종 수정 : 2021-09-29