728x90
반응형
every { ... }
블록 내에서 사용된 객체가mockk()
로 생성된 객체가 아닐 때 발생- every { KeyGenerator.next() } returns base.projectId
Missing mocked calls inside every { ... } block: make sure the object inside the block is a mock io.mockk.MockKException: Missing mocked calls inside every { ... } block: make sure the object inside the block is a mock
- KetGenerator.next() 가 정적 메서드라면 mockkStatic(KeyGenerator::class) 를 호출해야 함.
- 중요 object 는 한 번만 mocking 하면 전체 테스트에서 유지됨.
- beforeSpec 에서 한 번만 실행.
- 기존의 mocking 된 객체를 유지하되, 새로운 every 설정을 적용하려면
clearAllMocks(answers = false)
beforeSpec {
mockkObject(KeyGenerator)
}
beforeEach {
clearAllMocks(answers = false)
every { KeyGenerator.next() } returns base.projectId
}
MockKException
- MockKException: no answer found
- MockK 가 Stub(모의 구현) 하지 않음.
- 메서드가 어떤 값을 반환해야 하는지 모를 경우 발생함.
728x90
반응형
'Blog > TIL' 카테고리의 다른 글
2025-02-04 (화) (2) | 2025.02.04 |
---|---|
2025-02-03 (월) (2) | 2025.02.03 |
2025-01-21 (화) (1) | 2025.01.21 |
2025-01-20 (월) (1) | 2025.01.20 |
2025-01-16 (목) (0) | 2025.01.16 |
댓글