나는 레거시 시스템에서 일하고 있습니다 (테스트하지 않고 작성되었음을 의미합니다). 우리는 외부에서 기능을 테스트하는 통합 테스트를 작성하여 일부 시스템을 테스트하려고 시도했습니다.
이를 통해 코드의 일부가 깨질 염려없이 코드의 일부를 리팩토링 할 수 있습니다. 그러나 문제는 이러한 통합 테스트에 배포 (2 분 이상) 및 실행하는 데 몇 분이 필요하다는 것입니다. 또한 유지하기가 힘들다. 그들은 각각 수천 줄의 코드를 다루며 그중 하나가 깨지면 이유를 디버깅하는 데 몇 시간이 걸릴 수 있습니다.
나는 최근에 만들어 왔던 이러한 기능 변경에 대해 많은 단위 테스트를 작성했지만 커밋하기 전에 항상 새로운 배포를 수행하고 모든 통합 테스트를 실행하여 아무것도 놓치지 않도록합니다. 이 시점에서 나는 단위 테스트를 알고 있으며 일부 통합 테스트는 테스트와 겹칩니다.
좋은 단위 테스트가 잘못된 통합 테스트를 적절히 적용하여 해당 통합 테스트를 삭제할 수있는시기를 어떻게 알 수 있습니까?