2014-12-16 1 views
4

mocha 프레임 워크를 사용하는 node.js의 응용 프로그램이 있습니다. 두 개의 자바 스크립트 소스 파일이 있는데, 어떤 코드 커버리지 (a.js와 b.js)를 사용하고 싶습니다. 이 목적으로 이스탄불을 사용하고 있습니다.여러 파일에 코드 적용

여기에 문제는 여러 파일에 대해 코드 커버리지를 취하는 방법을 얻지 못한다는 것입니다.

istanbul cover node_modules/mocha/bin/_mocha a.js 


istanbul cover node_modules/mocha/bin/_mocha a.js b.js 

을하지만 불행히도 명령 모두 나는 그것의 단지 a.js 코드를 복용 생각, 같은 코드 커버리지를 제공하고 있습니다 : 나는 다음과 같은 형식을 사용하고 있습니다. 여러 파일에 대한 코드 적용 범위를 찾는 데 필요한 해결책이 있습니까?

답변

2

여기서 문제는 이스탄불에 대한 인수가 어떻게 파싱되는지입니다.

istanbul cover node_modules/mocha/bin/_mocha -- a.js b.js 

이스탄불 --에 인수를 분할하고 왼쪽에있는 노드 스크립트에 오른쪽에있는 사람들을 전달합니다 : 예상대로 그 mocha a.js b.js 작품을 가정

, 다음이 동등한 이스탄불 명령해야한다. 제대로 작동하면 이스탄불의 보험 보상 보고서가 올바르게 작동합니다.

이보다 향상된 점은 가능한 경우 명시적인 파일 이름 대신 디렉토리에 mocha를 지정하는 것입니다. 이렇게하면 파일 이름이 바뀌면이 코드를 변경할 필요가 없습니다.

테스트를 위해 Intern.js을 사용하여 손쉽게 적용 범위를 조정할 수 있습니다. 실제로는 거의 설치하지 않고도 이스탄불을 사용하고 모든 코드를 자동으로 계측합니다.