어떤 사람들은 달리 말하지만 TDD와 단위 테스트를 분리하는 것이 좋습니다. TDD는 상당히 정신적 인 변화이며 단위 테스트는 처음에는 시간이 걸리는 것으로 보입니다. 그것들을 하나의 아이템으로 생각하면 즉시 충분한 이익을 얻지 못할 위험이 있으며 TDD 및 단위 테스트를 단순히 중단하려는 유혹이 있습니다.
먼저 단위 테스트를 작성하는 것입니다. 처음에는 완벽 할 필요는 없습니다. 작은 코드 단위를 테스트하는 방법과 조롱을 사용하여 구성 요소를 격리하는 방법을 스스로에게 알려주십시오.
이것은 가장 큰 타임 테이커이지만 지금까지 가장 큰 보상을 받았습니다. 테스트하려는 웹 페이지에 더 이상 14 개의 웹 페이지를 넘길 필요가 없다는 것을 알게되면 내가 말하는 내용을 알게됩니다.
나를 위해, 큰 유레카 순간은 정규식을 테스트하려고하는 Windows 응용 프로그램이었습니다. 정규식을 테스트하려면 두 가지 양식을 작성해야합니다. NUnit을 설치하고 해당 방법에 대한 테스트를 작성하여 테스트 시간을 얼마나 빨리 절약했는지 확인했습니다. 그런 다음 에지 사례를 처리하기 위해 더 많은 테스트를 추가했습니다. 등등.
그런 다음 단위 테스트 작성을 배우십시오. 많은 개별 테스트를 빠르게 작성하고 작성하는 취성 테스트 간의 균형을 알아 봅니다. 이것은 매우 쉽습니다. 교훈은 이상적으로는 각 테스트마다 한 가지만 테스트하는 것이지만 시간이 오래 걸리는 법을 빨리 배우므로 모든 코드 변경에서 중단되는 테스트를 작성할 때까지 규칙에 약간의 구부림을 시작한 다음 올바른 균형으로 돌아갑니다 (후자보다 전자에 더 가깝습니다).
내가 말했듯이 TDD는 당신이 일하는 방식에있어서 중요한 정신적 변화입니다. 그러나 어쨌든 테스트를 작성하고 나면 개발 프로세스에 많은 시간이 걸리지 않습니다. 그리고 당신은, 당신의 코딩 스타일이 당신의 눈앞에서 개선되는 것을 볼 것이라고 약속합니다. 또는 오히려 당신이 그것을 떨어 뜨리지 않으면 그것은 당신을위한 것이 아닙니다.
마지막으로 염두에 두어야 할 것은 TDD가 단위 테스트에만 국한되지 않는다는 것입니다. 합격 테스트 중심 설계는 TDD의 모든 부분입니다. 그것들을 당신의 마음에 섞이지 않는 또 다른 좋은 이유.