행동 설정과 확인
대역이 특정 호출에 어떤 결과를 내야 하는지 먼저 설정하고 테스트 대상을 실행한다. 이후 호출과 인자가 기대한 내용인지 확인한다. MockK의 기본 대역은 동작을 명시하는 엄격한 방식이며 허용적인 설정도 선택할 수 있다. 반환값 설정 자체가 호출 검증까지 완료한 것은 아니다.
코틀린 기능과의 연결
중단 함수를 다루는 설정과 검증 API를 제공한다. 객체나 최상위 함수 등 특별한 형태를 대역으로 다루는 기능도 있지만 적용 범위와 정리 과정을 이해해야 한다. 스파이는 실제 메서드를 실행할 수 있어 순수한 대역보다 부작용 범위가 넓다. 공유 대역을 정리할 때 병렬 실행 중인 다른 검사에 영향을 주지 않도록 설계한다.
환경 제약과 검사 목적
인라인 함수는 대역으로 만들 수 없다는 제약이 있다. JDK의 접근 제한과 에이전트 정책도 일부 기능의 동작에 영향을 줄 수 있으므로 대상 환경의 안내를 확인한다. 모든 내부 호출을 고정하면 리팩터링에 취약해질 수 있다. 대역 검사로 로직을 좁혀 확인하되 실제 의존 서비스와의 호환성은 통합 검사로 보완한다.
관련 문서
Kotest / Mockito / Moq / NSubstitute