비공개 메서드 단위 테스트 단위 테스트를 하려고 비공개 메서드를 노출하면 기본 원칙 중 하나인 식별할 수 있는 동작만 테스트하는 것을 위반한다. 비공개 메서드를 직접 테스트하는 대신, 포괄적인 식별할 수 있는 동작으로서 간접적으로 테스트하는 것이 좋다. 비공개 메서드를 절대 테스트하지 말라는 규칙에도 예외가 있다. 예외를 이해하려면 코드의 공개 여부와 목적 간의 관계를 다시 살펴봐야 한다. 식별할 수 있는 동작 구현 세부 사항 공개 좋음 나쁨 비공개 해당 없음 좋음 테스트로 유출된 도메인 지식 도메인 지식을 테스트로 유출하는 것 또한 흔한 안티 패턴임 보통 복잡한 알고리즘을 다루는 테스트에서 일어난다. 테스트를 작성할 때는 특정 구현을 암시하지 말라. 단위 테스트에서는 예상 결과를 하드코딩하는 것이 좋다..