저는 다른 팀과 협력하여 15 년 이상 사용 된 응용 프로그램을 유지 관리하고 개선하는 개발자 팀의 일원입니다. 처음 만들어 졌을 때 TDD는 들어 본 적이 없습니다.
응용 프로그램은 상당히 안정적이며 쇼 중지 버그가 거의 발생하지 않지만 일주일에 한두 개의 버그가 발생하여 서비스 품질이 크게 저하됩니다. 이러한 버그는 손가락을 가리켜 서 찾아서 수정하는 데 시간이 오래 걸리며 인터페이스 테스트 만 수행합니다. 버그를 수정하기 전에 버그를 찾는 데 많은 시간이 낭비되므로 저와 다른 개발자는 테스트 주도 개발을 제안 할 계획입니다. 새로운 점검이 곧 제공 될 예정이며, 새로운 모듈에서 거의 완전한 단위 테스트를 수행하고자합니다. 또한 기존 코드를 수정해야하는 코드 단위 (예 : 버그 수정 또는 기능 구현)에 대해 테스트 단위를 구축 할 것을 제안합니다. )이지만 문제를 일으키지 않은 코드에 대한 테스트 사례를 개발하는 데 시간을 허비하지 마십시오.
나에게 이것은 합리적인 것 같습니다. 이번 달에 수정하는 데 2 주 이상 걸렸지 만, 유닛 테스트가 완료된 경우 배포 전에 확인 될 수있는 버그가있었습니다. 그러나 우리 관리자에게는 더 많은 돈을 쓰는 것처럼 보입니다.
고객에게 단위 테스트 및 테스트 중심 개발에 돈을 쓰고 싶다고 어떻게 확신 시키나요? 단위 테스트의 ROI를 보여주는 연구가 있습니까?