测试覆盖率分析器Skill test-coverage-analyzer

测试覆盖率分析器是一种技能,用于分析代码测试覆盖率报告,识别测试漏洞,并根据业务优先级推荐测试改进计划,以提升软件质量。关键词:测试覆盖率、代码测试、漏洞识别、优先级分析、软件质量、测试优化、覆盖率指标、测试策略。

测试 0 次安装 2 次浏览 更新于 3/9/2026

name: test-coverage-analyzer description: 分析测试覆盖率报告,识别漏洞,并推荐测试的优先区域。在审查覆盖率、查找未测试代码或规划测试改进时使用。

测试覆盖率分析器

分析测试覆盖率并识别测试漏洞。

快速开始

运行覆盖率并分析结果:

# JavaScript/TypeScript
npm test -- --coverage

# Python
pytest --cov=src --cov-report=term-missing

# Go
go test -cover ./...

说明

步骤 1: 生成覆盖率报告

JavaScript/TypeScript (Jest):

npm test -- --coverage --coverageReporters=text --coverageReporters=lcov

JavaScript/TypeScript (Vitest):

vitest run --coverage

Python (pytest):

pytest --cov=src --cov-report=html --cov-report=term-missing

Go:

go test -coverprofile=coverage.out ./...
go tool cover -html=coverage.out

步骤 2: 分析覆盖率指标

查看这些关键指标:

  • 行覆盖率: 执行的行的百分比
  • 分支覆盖率: 测试的条件分支的百分比
  • 函数覆盖率: 调用的函数的百分比
  • 语句覆盖率: 执行的语句的百分比

目标阈值:

  • 关键代码: 80%+ 覆盖率
  • 标准代码: 60%+ 覆盖率
  • UI/配置: 40%+ 覆盖率

步骤 3: 识别漏洞

寻找:

  • 未覆盖的函数: 覆盖率为 0% 的函数
  • 部分覆盖: 覆盖率 <50% 的函数
  • 缺失分支: 未测试的 if/else 路径
  • 错误路径: 未测试的 catch 块
  • 边界情况: 未测试的边界条件

步骤 4: 优先测试

高优先级 (首先测试):

  • 覆盖率为 0% 的业务逻辑
  • 安全关键函数
  • 支付/交易代码
  • 数据验证逻辑
  • 错误处理路径

中等优先级 (其次测试):

  • API 端点
  • 数据库操作
  • 实用函数
  • 配置逻辑

低优先级 (如果有时间):

  • 简单的 getters/setters
  • UI 展示逻辑
  • 类型定义
  • 生成代码

步骤 5: 创建行动计划

对于每个漏洞:

  1. 识别未测试的代码
  2. 确定所需的测试类型(单元/集成/e2e)
  3. 估计工作量(小/中/大)
  4. 分配优先级(高/中/低)
  5. 创建测试实施任务

常见模式

模式: 查找未测试文件

# Jest
npm test -- --coverage --collectCoverageFrom='src/**/*.{js,ts}' --coverageThreshold='{"global":{"lines":0}}'

# pytest
pytest --cov=src --cov-report=term-missing | grep "0%"

模式: 检查特定模块

# Jest
npm test -- path/to/module --coverage

# pytest
pytest tests/test_module.py --cov=src.module --cov-report=term-missing

模式: 强制执行覆盖率阈值

// package.json (Jest)
{
  "jest": {
    "coverageThreshold": {
      "global": {
        "branches": 70,
        "functions": 70,
        "lines": 70,
        "statements": 70
      }
    }
  }
}

高级内容

更多详细信息,请见: