Roy Osherove의 The Unit of Unit Testing을 읽고 있습니다. 저자는 코드 냄새에 대한이 노트를 가지고있는 7.2 절 유지 보수 가능한 테스트 작성에있다.
참고 : 외부 테스트에서 볼 수 있도록 내부 상태를 리팩터링 할 때 코드 냄새 (코드 디자인 또는 로직에 문제가 있음)로 간주 될 수 있습니까? 공동 작업자를 노출시키기 위해 리팩토링 할 때 코드 냄새가 아닙니다. 리팩토링하고 공동 작업자가 없으면 코드 냄새가납니다 (따라서 스텁하거나 조롱 할 필요가 없습니다).
편집 : 저자가 "협업 자"가 의미하는 것은 의존성입니다. 종속성에 대한 그의 예로는 데이터베이스에 액세스하거나 OS의 파일 시스템에 액세스하는 클래스가 있습니다. 여기에서 스텁을 정의하고 공동 작업 자라는 단어를 사용하기 시작합니다.
스텁 기존위한 제어 대체 의존성 (또는 협력자 시스템에서).
저자는이 코드 냄새의 예를 가지고 있지 않으며 이것이 어떻게 보일지 이해하고 이해하는 데 어려움을 겪고 있습니다. 누군가 이것을 조금 더 설명하고 구체적인 예를 제공 할 수 있습니까?