istanbul report 将coverage.json文件生成icov report 如何控制文件被去掉过滤
时间: 2024-11-27 11:21:44 浏览: 20
Istanbul Report 是一个 JavaScript 测试覆盖率分析工具,它用于将 `coverage.json` 文件转换成易于理解和可视化的报告。若想通过 Istanbul 控制哪些文件从最终的 icov 报告中移除或过滤掉,你可以配置 `.istanbul.yml` 或者直接在命令行中指定选项。
以下是几个步骤来操作:
1. **设置`.istanbul.yml`**:
在项目根目录下创建或编辑 `.istanbul.yml` 文件,可以添加一个 `filter` 或 `exclude` 部分来指定需要排除的路径模式。例如:
```yaml
filter:
- "!**/node_modules/**" # 排除 node_modules 目录
- "!**/dist/**" # 排除 build 输出目录
```
2. **使用命令行选项**:
使用 Istanbul 的 CLI 工具运行时,可以通过 `-f` 或 `--filter` 选项传递自定义规则,比如:
```
nyc report -r lcovonly -f '!**/path/to/exclude.js'
```
这里 `!**/path/to/exclude.js` 表示排除特定的.js文件。
3. **针对单次测试**:
对于单次运行测试并忽略某些文件,可以在测试脚本中使用 Istanbul 的 `--include-covered-files` 选项来临时控制。
记住,`exclude` 和 `filter` 规则可以是相对路径,所以确保它们是相对于 `.istanbul.yml` 文件的位置。
阅读全文