자동화 테스트(코드를 테스트하는 코드)는 큰 이점을 제공합니다 — 버그 포착, 자신감 있는 변경, 문서 역할, 빠르고 신뢰할 수 있는 제공 지원. 왜 그것을 작성하는지 이해하면 이 규율의 동기가 되며, 품질 높은 개발의 기초입니다.
자동화 테스트의 핵심 이점
✓ 버그를 일찍 포착 — 사용자 전에, 개발 중에 결함 발견 (고치기 더 저렴)
✓ 회귀 방지 — 변경이 기존 기능을 깨뜨릴 때 테스트가 포착
(모든 변경 후 실행 → 안전망)
✓ 변경할 자신감 — 테스트가 깨짐을 잡아줄 것을 알고 리팩터링하고 기능 추가
(테스트가 없으면 변경이 두렵고, 있으면 자유롭게 변경)
✓ 문서화 — 테스트는 코드가 어떻게 사용되고 무엇을 해야 하는지 보여줌
✓ 빠른 피드백 — 자동화 테스트는 몇 초 만에 실행 (느리고 오류 잦은 수동 테스트 대비)
✓ CI/CD 가능 — 자동화 테스트는 자동화되고 안전한 제공의 토대
자동화 vs 수동
수동 테스트 → 사람이 확인 → 느리고, 반복 불가, 오류 잦음, 확장 안 됨
(매 변경 후 모든 것을 손으로 재테스트하는 것은 비현실적)
자동화 테스트 → 코드가 코드를 확인 → 빠르고, 반복 가능, 일관, 지속 실행
→ 수천 개의 확인을 몇 초 만에, 모든 변경마다, 신뢰성 있게 실행
→ 자동화 테스트는 철저하고 잦은 테스팅을 실현 가능하게 만든다.
