[C# 단위테스트] 단위테스트 목표
- C#/단위테스트
- 2021. 11. 22. 21:11
참조
- 단위 테스트 생산성과 품질을 위한 단위 테스트 원칙과 패턴
단위 테스트 현황
- 실무에서 단위테스트는 필수로 자리를 잡았습니다.
- 대부분의 프로그래머는 단위 테스트를 실천하고 중요성에 대해 인지합니다.
- 단위테스트는 더 이상 논쟁거리가 아니고 그냥 써야 하는 것입니다.
단위 테스트의 목표
- 흔히 단위 테스트 활동이 더 나은 설계로 이어진다고 생각합니다.
- 이는 사실입니다. 코드 베이스에 대해 단위 테스트 작성이 필요하면 일반적으로 더 나은 설계로 이러집니다.
- 하지만 단위 테스트의 주 목표는 아닙니다. 더 나은 설계는 단지 좋은 부수 효과일 뿐입니다.
- 단위 테스트의 목표는, 소프트웨어 프로젝트의 지속 가능한 성장을 가능하게 하는 것입니다.
- 지속성과 확장성이 핵심이며, 이를 통해 장기적으로 개발 속도를 유지할 수 있습니다.
좋은 테스트와 좋지 않은 테스트를 가르는 요인
- 지속 가능한 프로젝트 성장을 위해서는 고품질 테스트에만 집중해야 합니다.
- 고품질 테스트만이 테스트 스위트에 남을 만한 테스트 유형입니다.
단위 테스트에서 커버리지 지표란?
- 커버리지 지표는 좋은 부정 지표이지만 나쁜 긍정 지표도 뜻합니다.
- 커버리지 숫자가 낮으면 문제 징후라 할 수 있습니다.
- 코드베이스에 테스트되지 않은 코드가 많다는 뜻입니다.
- 그러나 높은 숫자도 별 의미는 없습니다.
- 그러므로 코드 커버리지를 측정하는 것은 품질 테스트 스위트로 가는 첫 걸음 이라고 생각하면 됩니다.
정리
- 코드는 점점 나빠지는 경향이 있다. 지속적인 정리와 리팩터링 등과 같은 적절한 관리가 없으면 시스템은 점점 더 복잡해지고 흐트러집니다.
- 단위 테스트를 작성하는 것이 중요합니다.
- 단위 테스트의 목표는 소프트웨어 프로젝트가 지속적으로 성장하게 하는 것입니다.
- 모든 테스트를 똑같이 작성할 필요는 없습니다.
- 단위 테스트 코드 기능은 좋은 리트머스 시험이지만, 한 방향으로만 작동합니다. 좋은 부정 지표이지만 나쁜 긍정 지표이기도 합니다.
- 성공적인 테스트 스위트는 다음과 같습니다.
- 개발 주기에 통합돼 있다.
- 코드베이스 중 가장 중요한 부분만을 대상으로 합니다.
- 최소한의 유지비로 최대의 가치를 끌어냅니다.
728x90
'C# > 단위테스트' 카테고리의 다른 글
[C# 단위테스트] xUnit 파일시스템(IFileSystem) Mock데이터 사용법 (0) | 2021.12.17 |
---|---|
[C# 단위테스트] xUnit Collection(컬렉션) 단위 테스트 (0) | 2021.12.05 |
[C# 단위테스트] xUnit FlunetAssertions 이용하여 문자형, 불리안 테스트 하기 (0) | 2021.11.21 |
[C# 단위테스트] xUnit FluentAssertions 이용하여 숫자형 테스트 하기 (0) | 2021.11.18 |
[C# 단위테스트] xUnit FluentAssertions 사용하기 (0) | 2021.11.18 |
이 글을 공유하기