AgentSkillsCN

js-generate-coverage

自包含的命令,用于生成与分析代码覆盖率。

SKILL.md
--- frontmatter
name: js-generate-coverage
description: Self-contained command for coverage generation and analysis
user-invocable: true
allowed-tools: Skill, Read, Glob, Grep, Bash

JavaScript Coverage Report Skill

Self-contained skill that generates test coverage reports and analyzes results.

Parameters

  • files - (Optional) Specific files to check coverage for
  • workspace - (Optional) Workspace name for monorepo projects

Usage Examples

code
/js-generate-coverage
/js-generate-coverage workspace=frontend
/js-generate-coverage files=src/utils/validator.js

Workflow

Step 1: Generate Coverage

Execute npm coverage command:

bash
npm run test:coverage > target/npm-coverage-output.log 2>&1
# Or with workspace:
npm run test:coverage --workspace={workspace} > target/npm-coverage-output.log 2>&1

Parse build output (if needed):

bash
python3 .plan/execute-script.py pm-dev-frontend:cui-javascript-project:npm-output parse-npm-output \
    --log target/npm-coverage-output.log --mode structured

This generates coverage reports in coverage/ directory.

Step 2: Analyze Coverage

Load skill and execute workflow:

code
Skill: pm-dev-frontend:js-implement-tests
Execute workflow: Analyze Coverage

Or run script directly:

bash
python3 .plan/execute-script.py pm-dev-frontend:js-implement-tests:js-coverage analyze --report coverage/coverage-summary.json
# Or for LCOV format:
python3 .plan/execute-script.py pm-dev-frontend:js-implement-tests:js-coverage analyze --report coverage/lcov.info --format lcov

Script returns structured JSON with overall_coverage, by_file, and low_coverage_files.

Step 3: Return Coverage Results

json
{
  "overall_coverage": {
    "line_coverage": 87.3,
    "branch_coverage": 82.1
  },
  "low_coverage_files": [...],
  "summary": {...}
}

Related

  • Skill: pm-dev-frontend:js-implement-tests - Analyze Coverage workflow
  • Skill: pm-dev-frontend:cui-javascript-project - Parse npm Build Output workflow
  • Skill: /js-implement-tests - Add tests for low-coverage areas