실행 경로를 기록하는 이유
테스트가 모두 통과해도 검사하지 않은 코드가 남아 있을 수 있다. Coverlet은 실행된 지점을 기록하고 결과 파일로 정리해 이러한 공백을 찾도록 돕는다. 줄이 실행되었다는 사실과 그 줄의 동작을 충분히 검증했다는 사실은 서로 다르다. 높은 비율만으로 검사의 품질을 판단하지 않는다.
수집이 이루어지는 과정
대상 어셈블리와 기호 정보를 바탕으로 실행 지점을 기록할 코드를 삽입한다. 테스트 뒤 기록을 읽어 커버리지 결과를 만들고 원래 어셈블리를 복원한다. 포함하거나 제외할 범위를 명확히 정해야 보고서의 분모가 무엇인지 알 수 있다. 결과 형식은 선택한 연동 방식에 맞춰 사용한다.
실행기와 연동 선택
VSTest 계열의 수집기와 MSBuild 연동을 Microsoft Testing Platform용 확장과 구분해야 한다. 실행기가 다른데 기존 옵션만 옮기면 같은 방식으로 동작한다고 기대할 수 없다. 저장소 문서에는 미출시 기능이 포함될 수 있으므로 실제 설치한 버전의 지원 범위를 확인한다. 테스트 대상의 재빌드 여부처럼 수집 조건도 결과 생성에 영향을 준다.
관련 문서
Pytest-cov / NUnit / MSTest / TUnit