728x90 PythonMock1 [PYTHON] Mock 객체 사용 시 spec=True 옵션이 중요한 이유 : 깨지지 않는 테스트를 위한 방어적 설계 1. 서론: 편리하지만 위험한 유령, '기본 Mock'의 함정파이썬의 unittest.mock 라이브러리는 가짜 객체를 만들어 복잡한 의존성을 분리하는 강력한 도구입니다. 하지만 기본 설정의 Mock은 치명적인 약점이 있습니다. 바로 '존재하지 않는 메서드나 속성에 접근해도 오류를 발생시키지 않는다'는 점입니다. 이는 실제 프로덕션 코드에서 메서드 이름이 변경되거나 삭제되었음에도 불구하고, 테스트 코드는 여전히 성공(Pass)으로 처리되는 '거짓 양성' 문제를 야기합니다. 오늘 우리는 이러한 '유령 호출'을 차단하고, 실제 클래스의 인터페이스를 엄격히 준수하게 만드는 spec(또는 autospec) 옵션의 가치와 활용법을 심층적으로 살펴봅니다.2. spec 옵션 유무에 따른 동작 방식 비교spec 옵션은.. 2026. 2. 20. 이전 1 다음 728x90