2014-02-27 2 views
7

여러 입력을 여러 번 실행하고 참조 결과와 비교하여 테스트 한 Python 프로그램이 있습니다.Python 스크립트를 여러 번 실행하여 결합 된 코드 적용 방법

모든 테스트를 결합하여 코드 적용 범위를 얻고 싶습니다. 따라서 완전한 커버리지를 얻기 위해 사용해야하는 추가 입력 집합이 있는지 확인할 수 있습니다. 나는 커버리지 모듈을 살펴 봤지만 어떻게 할 수 있을지는 모른다.

실마리가 있습니까?

답변

3

Ned Batchelder의 coverage.pyfeature to combine the results of multiple runs입니다. 정확하게 찾고있는 것 같습니다.

+0

네, 맞습니다. 이를 사용하여 여러 데이터 세트, 여러 Python 버전 또는 여러 종속성 선택 항목 (예 : 다른 버전의 미들웨어 또는 지원 모듈)에서 실행할 수 있습니다. 쉘 스크립트에서 여러 테스트 실행을 "조정"할 수는 있지만 더 잘 수행 할 수 있습니다. [tox] (https://tox.readthedocs.org/en/latest/) 테스트 러너는 초기 가상 환경을 자동으로 생성합니다 그 (것)들에있는 시험을 달린다; 가장 단순한 테스트 설정 이상으로 권장됩니다. –

9

동일한 컴퓨터에서 실행중인 경우 -a 옵션을 사용하여 실행하십시오.이 옵션을 사용하면 여러 통화에서 수신 가능 데이터가 누적됩니다.

예 :

coverage erase 

coverage run -a <command> [arguments, ...] 

repeat coverage run -a <command> ... as many times as needed. 

coverage report 

coverage html 

문서 :이 도움이 http://coverage.readthedocs.org/en/latest/cmd.html#data-file

희망.

관련 문제