# [[Mockito]]

## 📌 Brief Summary
Mockito는 소프트웨어 테스트 작성 시 의존성을 모의(mocking)하기 위해 사용되는 도구 및 라이브러리입니다 [1]. 테스트 환경에서 실제 클래스를 스텁(stub)이나 모의 객체(mock)로 교체하여 테스트를 단순하고 예측 가능하게 만듭니다 [2, 3]. 이를 통해 개발자는 미리 정의된 상태에 대한 응답과 테스트 데이터를 쉽게 설정할 수 있습니다 [2, 3].

## 📖 Core Content
* **의존성 대체 및 스텁(Stubbing) 활용**: 단위 테스트(Unit Test)를 작성할 때 Mockito를 사용하면 실제 운영에 사용되는 클래스(예: `PersonRepository`)를 테스트용 스텁으로 대체할 수 있습니다 [2]. 
* **응답 제어와 테스트 단순화**: 개발자는 스텁 처리된 메서드가 테스트 중에 반환해야 할 '미리 준비된 응답(canned responses)'을 Mockito를 통해 정의할 수 있습니다 [2]. 이러한 방식은 테스트 데이터 설정을 용이하게 하며, 테스트를 더욱 단순하고 예측 가능하게 만들어 줍니다 [2].
* **계약 테스트(Contract Test)에서의 활용**: 제공자 테스트(Provider Test)를 구현할 때, 사전에 정의된 상태(pre-defined states)에 맞게 테스트 데이터를 제공하는 방식을 정의하는 데에도 Mockito의 모의 객체(mocks)가 활용됩니다 [3].

## ⚖️ Trade-offs & Caveats
소스에 관련 정보가 부족합니다. (Mockito 도구 자체를 선택하거나 최적화할 때 발생하는 구체적인 부작용이나 제약 사항은 제공된 소스 데이터에 포함되어 있지 않습니다.)

---
*Last updated: 2026-05-03*