如何在使用摩卡和instanbul時從覆蓋率報告中排除文件夾和文件(按路徑)?使用摩卡和伊斯坦布爾時從排除範圍中排除文件
我想通過配置來排除,而不是
/*istanbul ignore next*/
在每個文件
。
(詹金斯生成的報告使用)
感謝,
如何在使用摩卡和instanbul時從覆蓋率報告中排除文件夾和文件(按路徑)?使用摩卡和伊斯坦布爾時從排除範圍中排除文件
我想通過配置來排除,而不是
/*istanbul ignore next*/
在每個文件
。
(詹金斯生成的報告使用)
感謝,
可以忽略匹配的文件使用-x
參數一定的規律。
istanbul help cover
...
-x <exclude-pattern> [-x <exclude-pattern>]
one or more fileset patterns e.g. "**/vendor/**"
...
如何在配置文件中執行此操作,例如GruntFile? – nottinhill
取決於您用來包裝伊斯坦布爾的咕嚕庫。在'grunt-karma'中,我排除了像這樣的文件夾('app/tests'):'{...,preprocessors ['app/{*。js,!(tests)/ **/*。js} '] = ['coverage'],...}' – Blaise
我你的情況我會使用以下方法:
istanbul -x "**/pattern/to/exclude/**" cover _mocha -- --recursive -R tap test/ > test.tap && istanbul report clover – snoof 9 hours ago
您只需通過添加多個-x
選項排除多個模式。
感謝您的建議,
這是解決方案:
istanbul cover -x '**/config/**' _mocha -- --recursive -R tap test/ > test.tap && istanbul report clover
如果運行istanbul help config
你會看到伊斯坦布爾的默認配置。您可以將默認配置複製/粘貼到源樹的根目錄下的.istanbul.yml
文件中,然後將排除項存儲在其中。
這裏是我的樣子(這可以很容易地排除許多目錄):
verbose: false
instrumentation:
root: .
extensions:
- .js
default-excludes: true
excludes: ['**/tinymce/**', '**/lib/**', '**/tools/**', '**/build/**']
embed-source: false
variable: __coverage__
compact: true
preserve-comments: false
complete-copy: false
save-baseline: false
baseline-file: ./coverage/coverage-baseline.json
include-all-sources: true
include-pid: false
es-modules: false
reporting:
print: summary
reports:
- lcov
dir: ./tools/coverage
watermarks:
statements: [50, 80]
lines: [50, 80]
functions: [50, 80]
branches: [50, 80]
report-config:
clover: {file: clover.xml}
cobertura: {file: cobertura-coverage.xml}
json: {file: coverage-final.json}
json-summary: {file: coverage-summary.json}
lcovonly: {file: lcov.info}
teamcity: {file: null, blockName: Code Coverage Summary}
text: {file: null, maxCols: 0}
text-lcov: {file: lcov.info}
text-summary: {file: null}
hooks:
hook-run-in-context: false
post-require-hook: null
handle-sigint: false
check:
global:
statements: 0
lines: 0
branches: 0
functions: 0
excludes: []
each:
statements: 0
lines: 0
branches: 0
functions: 0
excludes: []
您確定排除可以將include-all-sources設置爲true嗎? 儀表: 根:SRC 包括,所有來源:真 詳細:真 不包括: 「\ * \ */src目錄/客戶/ \ * \ *」] 報告: DIR: 「覆蓋」 而我仍然在我的報告中獲取客戶端文件。 –
你是如何調用伊斯坦布爾? – JME
你說的是什麼意思? –
你如何運行伊斯坦布爾?我問,因爲有一個命令行選項來排除文件。 – JME