문제

ASP.NET MVC 웹 앱에서 TDD를 실행하고 있습니다.

DI 컨테이너 (Castle Windsor)를 통해 유형의 올바른 인스턴스화를 보여주기 위해 통합 테스트를 작성하는 것이 표준 관행입니까?

그렇다면 용기를 조롱하거나 단순히 사용 하시겠습니까?

아니면 ... 이것은 단순히 어떤 이유로 든 끝나지 않습니까?

감사.

도움이 되었습니까?

해결책

용어 테스트 시험 중심의 개발에서 일반적으로 의미로 해석됩니다 단위 테스트가 아닙니다 완성 테스트, 따라서 순수한 TDD 프로세스에서는 모든 종류의 통합 테스트를 작성하고 실행하는 표준 관행을 고려하지 않습니다.

이것은 통합 테스트를 작성하고 실행하는 것이 가치가 없다는 것을 의미하지는 않습니다. TDD의 표준 관행으로 간주되지는 않습니다. 그러나 일반적으로 민첩한 개발을 포괄하기 위해 범위를 약간 확장하면 대부분의 민첩한 조직은 자동 수락 테스트를 유지하고 실행하는 실습의 표준 부분이라고 생각합니다.

묻는 것과 같은 통합 테스트는 이러한 유형의 프로세스에 잘 맞습니다. 개발 기계에서 자주 수행하고 싶지는 않지만 여전히 지속적인 통합 (CI) 빌드 또는 적어도 매일 빌드 (복잡성에 따라 다름)를 사용합니다.

이를 수락 테스트로 보면 DI 컨테이너가 전체 스택을 예상대로 해결하도록하는 것이 가장 합리적입니다. 즉,이 경우에는 모의가 없을 것입니다. 실제 거래를 테스트해야합니다.

그러나 결론은 다음과 같습니다. 그것이 당신을 위해 작동한다면, 그것을하십시오. 민첩한/린 개발은 교리에 관한 것이 아닙니다. 팀을 가장 생산적으로 만드는 기술을 끊임없이 찾아서 적용하는 것입니다. 다른 사람들의 실수와 성공으로부터 귀중한 학습 일 수 있지만 궁극적으로 팀에 가장 적합한 것을 실험하고 측정해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top