2014-11-04 6 views
1

커버리지 플러그인으로 nose2 테스트를 실행 중입니다. 필자는 데코레이터, 클래스 선언 및 함수 정의가 그 아래에있는 "실제 코드"라고해도 표시되어 있지 않음을 알았습니다. 나는 this answer을 발견했다.nose2 커버리지 플러그인 타이밍

nose2를 통해 어떻게하면됩니까? 내가 NOSE_WITH_COVERAGE=True을 수출하려했지만 그게 아무 것도하지 않는 것 같았습니다.

추가 컨텍스트 : 궁극적으로 우리는 Jenkins에 이러한 테스트를 연결하려고합니다.

도착 : 과 함께 [coverage] 섹션을 추가하면 nose2.cfg이 작동하지 않습니다.

답변

0

먼저 범위를 시작하는 어리석은 방법은 범위를 실행하는 데 코를 사용하는 대신 적용 범위를 사용하여 코를 실행하는 것입니다. 대신 예를 들어

$ coverage run -m nose2 blah blah blah 

을 한 후 바로 blah blah blah에서 코 범위 옵션을 생략 :

$ nose2 blah blah blah 

당신은 사용할 수 있습니다.

+0

@swizzard : 사용했던 명령 줄을 정확하게 표시해야합니다. 문제는 일반적인 문제이며, 범위 내에서 코를 돌리는 것이 최선의 해결책입니다. 그것은 당신을 위해 작동합니다. –

+0

'coverage run -m nose2 --plugin nose2.plugins.junitxml --junit-xml'은 테스트되지 않은 코드가 under-counted가되어 "covered"로 간주되는 것을 역전시킵니다. – swizzard

+0

@swizzard : 왜 그렇게 될지 모르겠다. 전자 메일에 세부 정보 (복제 단계 포함)를 보낼 수있는 경우 해당 정보의 맨 아래로 이동할 수 있습니다. –