좋은 의도에도 불구하고 팀은 테스팅 안티패턴 — 테스트를 깨지기 쉽고, 느리고, 신뢰할 수 없고, 가치 낮게 만드는 관행 — 에 빠집니다. 이를 인식하고 피하는 것이 건강하고 가치 있는 테스트 스위트를 유지하는 데 중요합니다.
테스트 품질 안티패턴
✗ 구현 세부사항 테스트 → 테스트가 내부에 결합 → 매 리팩터링마다 깨짐
(깨지기 쉬움) → 대신 동작/결과를 테스트
✗ 불안정한(flaky) 테스트 → 간헐적 실패가 신뢰 침식 → 사람들이 실패 무시 (진짜도)
✗ 과도한 mocking → 모든 것을 mock → 테스트가 mock 상호작용을 검증, 실제 동작 아님;
깨지기 쉽고 거짓 자신감을 줌
✗ 의미 있는 어서션 없는 테스트 → 코드를 실행하지만 아무것도 검증 안 함 (거짓 커버리지)
✗ 여러 가지를 확인하는 거대한 테스트 → 무엇이 실패했는지 불명확; 유지보수 어려움
구조적·전략적 안티패턴
✗ 아이스크림 콘 → 대부분 느린 E2E/수동, 단위 테스트 소수 → 느리고, 깨지기 쉽고, 비싼 스위트
✗ 상호의존적 테스트 / 공유 가변 상태 → 순서 의존, 불안정, 취약
✗ 프레임워크 / 사소한 코드 테스트 → 가치 낮음; 테스트할 필요 없는 것을 테스트
✗ 커버리지 숫자 쫓기 → 백분율 달성만을 위해 가치 낮은 테스트 작성
✗ 느린 테스트 → 실행을 꺼리게 함 → 빠른 피드백 가치를 무력화
