기본적으로 kcov는 코드 적용 결과에 테스트 기능을 포함한 모든 소스 파일을 포함합니다. 이렇게하면보고 된 커버리지 비율이 왜곡됩니다. kcov에게 테스트 기능을 제외 시키라고 어떻게 말합니까? 예를 들어kcov를 사용할 때 코드 적용 범위에서 테스트 기능을 제외하려면 어떻게합니까?
:
#[test]
fn foo() {
...
}
kcov이 foo
에 대한 커버리지 데이터를보고,하지만 난 그것을 제외하려는.
기본적으로 kcov는 코드 적용 결과에 테스트 기능을 포함한 모든 소스 파일을 포함합니다. 이렇게하면보고 된 커버리지 비율이 왜곡됩니다. kcov에게 테스트 기능을 제외 시키라고 어떻게 말합니까? 예를 들어kcov를 사용할 때 코드 적용 범위에서 테스트 기능을 제외하려면 어떻게합니까?
:
#[test]
fn foo() {
...
}
kcov이 foo
에 대한 커버리지 데이터를보고,하지만 난 그것을 제외하려는.
다른 파일에서 테스트 코드를 사용하고 kcov
인수 (통합 테스트의 경우) 또는 --exclude-pattern=_test.rs
(foo.rs에 대한 모든 테스트를 foo_test.rs로 이동하는 경우)을 사용하십시오.
또 다른 방법은 kcov
인수 --exclude-region='#[cfg(test)]:#[cfg(testkcovstopmarker)]'
를 사용하여 각 파일 중 마지막에만 테스트하고 다음없는 비 테스트 코드를가하거나 rustc
를 만들기 위해 후 필요하지 않은 정의를 정지 마커 #[cfg(testkcovstopmarker)]
을 추가 있는지 확인하는 것입니다 행복. (kcov
은 한 줄에있는 영역의 시작 및 끝 문자열을 찾습니다.)
(포함 된 문자열을 기준으로 줄을 제외 할 수도 있지만 Rust의 테스트 제외는 작동하지 않습니다.)
kcov를 실행하는 방법에 대한 자세한 정보를 제공해주십시오. –