Generate comprehensive test reports with metrics, coverage, and visualizations. Use when performing specialized testing. Trigger with phrases like "generate test report", "create test documentation", or "show test metrics".
npx claudepluginhub flight505/skill-forge --plugin test-report-generatorThis skill is limited to using the following tools:
Generate structured, human-readable test reports from raw test runner output including JUnit XML, Jest JSON, pytest results, and coverage data. Produces Markdown summaries, HTML dashboards, and CI-compatible annotations.
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Applies Acme Corporation brand guidelines including colors, fonts, layouts, and messaging to generated PowerPoint, Excel, and PDF documents.
Share bugs, ideas, or general feedback.
Generate structured, human-readable test reports from raw test runner output including JUnit XML, Jest JSON, pytest results, and coverage data. Produces Markdown summaries, HTML dashboards, and CI-compatible annotations.
--json, pytest --junitxml, or TAP)coverage-summary.json, lcov.info, or coverage.xml)**/junit.xml, **/test-results.json, **/coverage/lcov.info).test-report.md -- Markdown summary with pass/fail table, coverage stats, and failure detailstest-report.html -- Self-contained HTML report (optional)::error format)| Error | Cause | Solution |
|---|---|---|
| No test result files found | Tests did not run or output path is incorrect | Verify test runner --outputFile or --junitxml flag; check the output directory exists |
| Malformed JUnit XML | Test runner crashed mid-output or encoding issues | Validate XML with xmllint; re-run failed test suite; check for binary output in XML |
| Coverage data missing | Tests ran without --coverage flag | Add --coverage to the test command; verify coverage reporter is configured |
| Metric trend unavailable | No previous report to compare against | Generate baseline report first; store reports as CI artifacts for historical comparison |
| Report exceeds GitHub comment limit | Too many failures produce oversized Markdown | Truncate failure details to top 20; link to full report artifact |
Markdown report structure:
## Test Results -- 2026-03-10
| Metric | Value |
|--------|-------|
| Total Tests | 847 | # 847 = configured value
| Passed | 839 (99.1%) | # 839 = configured value
| Failed | 5 |
| Skipped | 3 |
| Duration | 42.3s |
### Coverage
| Category | Current | Threshold | Status |
|----------|---------|-----------|--------|
| Lines | 87.2% | 80% | PASS |
| Branches | 74.1% | 70% | PASS |
| Functions | 91.5% | 85% | PASS |
### Failed Tests
1. `src/utils/parser.test.ts` -- "handles malformed input" -- Expected Error but received null
2. `src/api/auth.test.ts` -- "rejects expired tokens" -- Timeout after 5000ms
GitHub Actions job summary integration:
cat test-report.md >> "$GITHUB_STEP_SUMMARY"
--json reporter: https://jestjs.io/docs/cli#--json