如何在Azure DevOps流水线中让Vitest生成Cobertura格式覆盖率报告?
Vitest生成Cobertura覆盖率报告适配Azure DevOps
Vitest完全支持生成Cobertura格式的覆盖率报告,配置方式简单直接,具体步骤如下:
1. 安装覆盖率依赖
如果项目还未安装Vitest的覆盖率工具,先安装官方推荐的@vitest/coverage-v8:
npm install -D @vitest/coverage-v8
2. 修改Vitest配置文件
在vitest.config.ts(或vitest.config.js)中添加覆盖率配置,指定生成Cobertura格式报告:
import { defineConfig } from 'vitest/config' export default defineConfig({ test: { coverage: { provider: 'v8', reporter: [ 'text', // 控制台输出文本报告 'cobertura' // 生成Cobertura格式XML报告 ], reportsDirectory: './coverage' // 报告输出目录,可自定义 } } })
3. 配置Azure DevOps流水线
运行测试生成覆盖率报告后,在流水线YAML中添加PublishCodeCoverageResults任务收集报告:
- task: PublishCodeCoverageResults@1 inputs: codeCoverageTool: 'Cobertura' summaryFileLocation: '$(System.DefaultWorkingDirectory)/coverage/cobertura-coverage.xml' failIfCoverageEmpty: false # 根据需求设置是否为空时失败
额外提示
- 若需要本地查看HTML格式报告,只需在
reporter数组中添加'html'即可。 - 确保流水线中执行的测试命令为
npx vitest run --coverage,触发覆盖率报告生成。
内容的提问来源于stack exchange,提问作者QuickQuestion
相关产品推荐
相关产品推荐

