자동화 된 테스트의 요점 중 하나는 반복성 입니다. 수작업으로 빠른 테스트를 수행하는 경우 단위 테스트와 동일하게 작성하는 것보다 빨리 수행 할 수 있습니다 (최소한 단위 테스트 초보자의 경우 단위 테스트에 경험이있는 사람은 테스트를 매우 빠르게 수행 할 수 있음).
그러나 내일 또는 다음 주에 코드가 약간 (또는 크게) 변경되면 어떻게됩니까? 변경 사항이 없는지 확인하기 위해 동료가 변경 후마다 동일한 수동 테스트를 계속 반복해서 반복 하시겠습니까? 아니면 "코드와기도"를 선호할까요?
코드가 많이 변경 될수록 단위 테스트가 초기 투자를 더 많이 상환합니다 . 테스트가 실제로 버그를 잡지 않아도 긍정적 인 측면을 얻는 데 시간이 오래 걸리지 않습니다. 그러나 그들은 정기적으로 그렇게합니다.이 시점에서 그들은 귀중합니다. 그리고 일단 누군가가 안전하다고 느끼고, 성공적인 단위 테스트 실행이 제공하는 코드에 대한 확신을 가지면, 일반적으로 되돌릴 수 없습니다.
그녀가 확신이 있지만 새로운 영역으로 모험하기를 두려워하는 경우, 첫 단위 테스트를 함께 작성하기 위해 페어 프로그래밍 세션을 제공하십시오 . 테스트하기가 어렵지 않지만 테스트 할 가치가있는 복잡한 클래스를 선택하십시오.
그러나 그녀가 확신하지 못하면 어려운 사실을 수집해야 할 수도 있습니다 . 그러한 사실은
- 자신이 작성한 코드의 결함률
- 그녀의 코드에 대해 일련의 단위 테스트를 작성하고 발견 된 버그를 문서화합니다.
그러한 데이터를 수집 한 다음 결과를 공손하게 보여주십시오. 이것들이 여전히 그녀를 설득하기에 충분하지 않으면, 문제를 논의하고 수집 된 증거를 경영진과 공유해야 할 수도 있습니다. 그것은 최후의 수단 일 뿐이지 만 때로는 다른 방법이 없습니다.