Skip to content

docs: add npm downloads badges to all reporter READMEs#891

Merged
gibiw merged 61 commits into
mainfrom
docs/04-examples-validation-plans
Feb 13, 2026
Merged

docs: add npm downloads badges to all reporter READMEs#891
gibiw merged 61 commits into
mainfrom
docs/04-examples-validation-plans

Conversation

@gibiw

@gibiw gibiw commented Feb 13, 2026

Copy link
Copy Markdown
Contributor

Summary

Added npm downloads badges to all 9 framework reporter README files, displaying monthly download statistics next to the existing license badges.

Changes

  • ✅ Added npm downloads badge to all reporter READMEs:
    • jest-qase-reporter
    • playwright-qase-reporter
    • cypress-qase-reporter
    • mocha-qase-reporter
    • vitest-qase-reporter
    • cucumberjs-qase-reporter
    • newman-qase-reporter
    • testcafe-qase-reporter
    • wdio-qase-reporter

Badge Format

[![npm downloads](https://img.shields.io/npm/dm/PACKAGE_NAME.svg)](https://www.npmjs.com/package/PACKAGE_NAME)

Example

Before:

[![License](https://lxgaming.github.io/badges/License-Apache%202.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)

After:

[![License](https://lxgaming.github.io/badges/License-Apache%202.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
[![npm downloads](https://img.shields.io/npm/dm/jest-qase-reporter.svg)](https://www.npmjs.com/package/jest-qase-reporter)

Impact

  • 📊 Improves package visibility by showing download metrics
  • 🔗 Provides quick links to npm package pages
  • 🎯 Consistent badge placement across all reporters

Files Modified

  • qase-jest/README.md
  • qase-playwright/README.md
  • qase-cypress/README.md
  • qase-mocha/README.md
  • qase-vitest/README.md
  • qase-cucumberjs/README.md
  • qase-newman/README.md
  • qase-testcafe/README.md
  • qase-wdio/README.md

Note

Low Risk
Documentation-only changes plus .gitignore tweaks; no runtime/library code paths are modified, so functional risk is low aside from potential doc inaccuracies.

Overview
Significantly expands documentation and examples across multiple Qase JavaScript reporters.

Updates .gitignore patterns and adds ignores for CLAUDE.md and .planning/. Adds/rewrites extensive README content for CucumberJS, Cypress, and Jest reporters (including badges, quick start, configuration, usage, multi-project guidance, and new dedicated docs like attachments/steps/upgrade guides), and adds new single-framework example READMEs (e.g. CucumberJS, Newman, Playwright, TestCafe) plus clearer multi-project expectations and framework-specific behavior notes.

Written by Cursor Bugbot for commit 9b06bfa. This will update automatically on new commits. Configure here.

gibiw added 30 commits February 13, 2026 12:39
…usage)

- Adapt README-TEMPLATE.md from Python to JavaScript/TypeScript syntax
- Convert pip install to npm install --save-dev
- Update requirements from Python >= 3.9 to Node.js >= 14
- Replace Python imports with CommonJS/ES modules patterns
- Create usage-TEMPLATE.md with JavaScript API patterns
- Remove Python decorators, add placeholder for framework-specific examples
- Maintain structure and tone from Python originals
- Create ATTACHMENTS-TEMPLATE.md with qase.attach() JavaScript API
- Convert Python attachment syntax to paths/content/contentType pattern
- Create STEPS-TEMPLATE.md with async/await qase.step() pattern
- Include support for expected result and data parameters
- Create UPGRADE-TEMPLATE.md with npm install commands
- Adapt version history and migration examples to JavaScript
- Create MULTI_PROJECT-TEMPLATE.md based on Jest implementation
- Document qase.projects(mapping, name) API for multi-project support
- All templates maintain consistent structure from Python originals
- Document all common placeholders (FRAMEWORK_NAME, PACKAGE_NAME, etc.)
- Add JavaScript-specific placeholders (IMPORT_STATEMENT, RUN_COMMAND, CONFIG_LOCATION)
- Document code example placeholders for all template sections
- Include framework pattern variations for all 9 JavaScript frameworks
- Add Jest wrapper function pattern example
- Add Playwright multiple pattern support (wrapper/method/annotation)
- Add Cypress Mocha-based pattern
- Document Mocha, Vitest, Cucumber.js, Newman, TestCafe, WDIO patterns
- Include replacement guidelines and validation checklist
- Provide conditional content handling instructions
Plan 01-01: Create Master Documentation Templates
- Created 7 template files (1437 total lines)
- Adapted Python templates to JavaScript/TypeScript syntax
- Documented comprehensive placeholder convention
- Completed in 4 minutes with 3 tasks

Summary: .planning/phases/01-foundation/01-01-SUMMARY.md
State: Updated to Plan 1 of 3 completed (10% progress)
- Node.js script to detect unreplaced {{PLACEHOLDER}} patterns in markdown files
- Supports single file or recursive directory scanning
- Reports file path, line number, and placeholder text
- Returns non-zero exit code when placeholders found (for CI integration)
- Exports validateFile and scanDirectory functions for reusability
- Comprehensive matrix of API differences across all 9 JavaScript frameworks
- Import patterns table with CommonJS and ES modules examples
- Test ID linking patterns for each framework (wrapper/method/tag-based)
- Metadata methods comparison table
- Steps API variations (async vs sync, callback patterns)
- Attachments API patterns (path-based, content-based, screenshots)
- Configuration location and examples for each framework
- Run commands reference table
- Multi-project support patterns
- Summary comparison table for quick reference
- Comprehensive formatting standards for documentation code examples
- Language choice guidance (TypeScript vs JavaScript, when to use each)
- Indentation and formatting rules (2 spaces, K&R braces, single quotes)
- Code block formatting with language specifiers
- Test example patterns (meaningful names, complete tests, async/await)
- API call examples with realistic parameters and content types
- Configuration formatting (JSON, JavaScript configs, minimal vs comprehensive)
- Comment style and documentation best practices
- What to avoid (var, callbacks, console.log, incomplete code, any type)
- Example templates (tests, configs, imports, async steps)
- Quick checklist for documentation review
- Alignment with .prettierrc.json (single quotes, trailing commas)
…on plan

- Create comprehensive SUMMARY.md documenting all deliverables
- Update STATE.md with progress (2 of 3 plans complete, 20% progress)
- Record performance metrics (6 min duration, 3 tasks, 3 files)
- Document decisions (Node.js validation, comprehensive framework matrix, style guide)
- Update session continuity (stopped at 01-02-PLAN.md completion)
…orkflow

- Step-by-step application process (8 steps from gathering info to testing)
- Complete template inventory table with all 6 templates
- Framework-specific considerations for all 9 frameworks
- Bulk placeholder replacement shortcuts
- Quality checklist with 20+ verification items
- Troubleshooting section for common issues
- Maintenance procedures for template updates
- References all foundation documents (PLACEHOLDER-REFERENCE, FRAMEWORK-VARIATIONS, CODE-STYLE-GUIDE)
- 48 major sections covering complete workflow

Also fixes .gitignore to allow .planning/ directory commits (blocking issue)
…verification plan

- Created comprehensive 914-line template usage guide
- Documented 8-step template application workflow
- Verified Phase 1 foundation (11 files: 6 templates, 1 script, 3 docs)
- Updated STATE.md with plan completion and metrics
5 plans in 2 waves to apply documentation templates to all 9 frameworks:
- Wave 1 (parallel): Jest+Playwright, Cypress+Mocha, Vitest+CucumberJS, Newman+TestCafe+WDIO
- Wave 2: Cross-validate consistency + human review checkpoint
Split 02-05 (validation + checkpoint) into 02-05 (autonomous validation)
and 02-06 (human checkpoint). Added explicit Configuration Reference TABLE
validation to 02-05 for README-03 requirement. Updated 02-04 must_haves
truths to use specific "complete API reference for all applicable qase
methods" wording. Updated ROADMAP to reflect 6 plans in 3 waves.
- Applied README-TEMPLATE.md structure with Vitest-specific placeholders
- Created comprehensive usage.md with complete API reference
- Added ESM import patterns and Jest-compatible API examples
- Included troubleshooting section with 6 Vitest-specific errors
- Added integration patterns: workspace, in-source testing, concurrent tests
- Included 6 common use cases with complete examples
- All placeholders replaced and validated
- Replace Jest README.md with template-based structure
- Create comprehensive usage.md with all API methods
- Add Integration Patterns section (lifecycle hooks, Puppeteer)
- Add Common Use Cases section (5 recipes)
- Add Troubleshooting section (6 common issues)
- All placeholders replaced with Jest-specific content
- Validation passed: no unreplaced placeholders
- Replace README.md with template structure
- Add comprehensive usage.md with complete API reference
- Include Cypress-specific patterns (synchronous steps, cy commands)
- Add integration patterns (custom commands, intercept, fixtures, page objects)
- Add common use cases (API tests, screenshots, visual regression, data-driven)
- Add troubleshooting section (setupNodeEvents, attachments, headless mode)
- All placeholders replaced
- No validation errors
…orter

- Applied README-TEMPLATE.md with CucumberJS-specific adaptations
- Created comprehensive usage.md adapted for BDD/Gherkin paradigm
- Uses @QaseID tag syntax instead of programmatic wrapper functions
- Native Given/When/Then step mapping documented
- Added troubleshooting section with 5 BDD-specific errors
- Included integration patterns: World objects, hooks, tag expressions
- Added 7 common use cases including API testing with Gherkin
- Template significantly adapted for Gherkin/tag-based approach
- All placeholders replaced and validated
- Replace README.md with template structure
- Add comprehensive usage.md with complete API reference (1126 lines)
- Include Mocha-specific patterns (synchronous steps, function() syntax)
- Add integration patterns (hooks, BDD/TDD interfaces, Chai assertions, root-level hooks)
- Add common use cases (BDD patterns, timeout handling, dynamic tests, async/await, error handling, CSV data-driven, database integration)
- Add extra reporters section (parallel mode compatibility)
- Add troubleshooting section (reporter config, this context, BDD vs TDD, timeout, parallel mode)
- All placeholders replaced
- No validation errors
…e.md)

- Replace Playwright README.md with template-based structure
- Highlight dual pattern (wrapper function vs method-based)
- Create comprehensive usage.md with TypeScript examples
- Add Integration Patterns section (fixtures, page objects, parallel)
- Add Common Use Cases section (5 recipes)
- Add Troubleshooting section (6 common issues)
- All placeholders replaced with Playwright-specific content
- Validation passed: no unreplaced placeholders
- Applied README-TEMPLATE.md to Newman README.md
- Created comprehensive Newman usage.md with comment-based API patterns
- Documented Newman-specific features: comment annotations, parameters via special comments
- Added 10 common use cases and 5+ troubleshooting scenarios
- Added integration patterns for API testing workflows
- Documented limitations (no steps, no custom fields, no attachments)
- Validated: no unreplaced placeholders
- Vitest and CucumberJS documentation complete
- 2193 lines of comprehensive documentation created
- All validation passed (no unreplaced placeholders)
- 4 files created with complete API reference
- ESM patterns for Vitest, Gherkin tag patterns for CucumberJS
- Applied README-TEMPLATE.md to TestCafe README.md
- Created comprehensive TestCafe usage.md with builder pattern API
- Documented TestCafe-specific features: .meta() builder, fixture organization
- Added 10 common use cases including Page Object Model and data-driven testing
- Added 5+ troubleshooting scenarios with solutions
- Added integration patterns for TestCafe workflows
- Validated: no unreplaced placeholders
- Applied README-TEMPLATE.md to WDIO README.md
- Created comprehensive WDIO usage.md with Mocha/Jasmine and Cucumber patterns
- Documented WDIO-specific features: wdio.conf.js integration, hooks, reporter options
- Added 10 common use cases including Page Object Model and parallel execution
- Added 5+ troubleshooting scenarios with solutions
- Added integration patterns for both Mocha and Cucumber workflows
- Documented Cucumber tag support (@QaseId, @title, @suite)
- Validated: no unreplaced placeholders
- Created comprehensive SUMMARY.md documenting all changes
- Updated STATE.md: 3 of 6 plans completed in Phase 2
- Updated progress bar to 40%
- Recorded execution metrics: 29 minutes, 3 tasks, 6 files
- Added 5 new decisions for Newman, TestCafe, and WDIO patterns
- Total documentation: 3,249 lines across 6 files
- All validation passed: no unreplaced placeholders
…ucture across all frameworks

- Add Muting Tests section to CucumberJS, TestCafe, and WDIO
- Add Complete Examples section to Cypress, Mocha, TestCafe, and WDIO
- Standardize Table of Contents ordering across all frameworks
- Ensure structural consistency per README-03 requirements
- Human review approved documentation quality across all 9 frameworks
- Phase 2 success criteria validated and confirmed
- Updated STATE.md to mark Phase 2 as complete (6/6 plans)
- Created comprehensive SUMMARY.md for plan 02-06
- Updated performance metrics and decisions log
- Ready for Phase 3 (Advanced Features Documentation)
6 plans in 3 waves covering ATTACHMENTS.md, STEPS.md,
MULTI_PROJECT.md, and UPGRADE.md for all 9 frameworks.
Wave 1: Attachments + Steps for standard and unique frameworks.
Wave 2: Multi-project and upgrade guides.
Wave 3: Cross-validation and human review.
- Add Jest ATTACHMENTS.md with CommonJS examples and Jest-specific use cases
- Add Playwright ATTACHMENTS.md with TypeScript/ESM examples and page.screenshot() use case
- Both files follow template structure with framework-specific patterns
- Include file attachments, content attachments, and step attachments
- Add common use cases: test artifacts, API responses, console logs
- Zero unreplaced placeholders validated
- Create Jest STEPS.md with async/await examples and CommonJS imports
- Create Playwright STEPS.md documenting both qase.step() and native test.step()
- Include nested steps, expected results/data, attachments examples
- Add Page Object, API testing, and setup/teardown patterns
- Both files validated with zero unreplaced placeholders
gibiw added 22 commits February 13, 2026 17:17
…stCafe

- Add Newman multi-project guide with comment-based markers
- Add TestCafe multi-project guide with builder pattern
- Both files follow template structure with all required sections
- Newman uses // qase PROJECT: ids comment format in Postman collections
- TestCafe uses qase.projects({...}).create() builder pattern
- Add Jest UPGRADE.md with v2.x architecture documentation
- Add Playwright UPGRADE.md with dual pattern examples
- Add Cypress UPGRADE.md with v2->v3 migration (video attachments)
- Document current version features and compatibility notes
- Include troubleshooting sections for common issues
- All files pass validate-placeholders.js validation
- Add full JSON configuration examples to all files
- Add complete example sections with full test files
- Expand troubleshooting to 3 subsections per file
- Add Key points comparison sections
- Add See Also sections with proper links
- Preserve Playwright's unique projectsTitle and annotation patterns
- Preserve Cypress's dual pattern (pass test or title)
- Adapt CucumberJS to Gherkin tag-based approach
- Add Mocha UPGRADE.md (v1.x, synchronous steps pattern)
- Add Vitest UPGRADE.md (v1.x, Jest-compatible API)
- Add CucumberJS UPGRADE.md (v2.x, Gherkin tag-based pattern)
- Add Newman UPGRADE.md (v2.x, comment-based annotations, API limitations)
- Add TestCafe UPGRADE.md (v2.x, builder pattern with .meta())
- Add WDIO UPGRADE.md (v1.x, dual Mocha/Jasmine and Cucumber support)
- Document current version features for all frameworks
- All files pass validate-placeholders.js validation
- Validated all 36 feature guide files (4 guides x 9 frameworks)
- Confirmed zero placeholders across all Phase 3 deliverables
- Verified framework-specific patterns (imports, async/sync, APIs)
- Human review approved documentation quality
- Phase 3 officially complete
… type

- Replace all instances of contentType with type in qase-testcafe/docs/usage.md
- TestCafe uses 'type' parameter for MIME type specification (not 'contentType')
- Aligns documentation with actual working examples in examples/single/testcafe/
- Fixed qase-vitest/docs/STEPS.md to use 'type' instead of 'contentType'
- Aligns with actual API as verified in examples/single/vitest/test/
- Discovered during validation tooling development (Task 1)
- Create README.md for examples/single/cucumberjs with expected behavior section
- Create README.md for examples/single/newman with limitations and expected behavior
- Create README.md for examples/single/testcafe with framework-specific features
- Enhance examples/multiProject/README.md with per-framework expected behavior notes

All 4 README files now document:
- Prerequisites and setup instructions
- Example file descriptions
- Running tests with QASE_MODE=off for local testing
- Expected behavior when reporting to Qase
- Framework-specific patterns and limitations
- Fix import path: 'vitest-qase-reporter' -> 'vitest-qase-reporter/vitest'
- Fix attachment parameter: contentType -> type (matches actual API)
- Update parameter table and documentation references
- Align code examples with working example files in examples/single/vitest/

Task 1 of plan 04-02: Audit and fix framework-specific syntax
- Create 04-03-SUMMARY.md with comprehensive execution report
- Update STATE.md: advance to plan 3 of 4 (75% complete)
- Update metrics: 17 plans completed, 4.01 hours total
- Add 4 key decisions from framework validation work
- Self-check verification: all files and commits confirmed

Plan 04-03 achievements:
- Fixed TestCafe contentType → type parameter (10 occurrences)
- Created 3 example README files with expected behavior docs
- Enhanced multiProject README with per-framework notes
- Validated all 4 remaining frameworks use correct syntax
- Enhanced Jest, Cypress, and Vitest README files with comprehensive documentation
- Created new Playwright README with full documentation
- Added Example Files table listing all test files and their features
- Added Expected Behavior section explaining QASE_MODE=off vs QASE_MODE=testops
- Documented framework-specific patterns (steps, attachments, configuration)
- Included practical examples and configuration snippets
- Noted important framework differences (Cypress sync callbacks, Vitest withQase wrapper, Vitest type parameter)

Task 2 of plan 04-02: Add expected output/behavior documentation
- Test single and multi-project examples for all frameworks
- Use matrix strategy with Node 22 and 24
- Set QASE_MODE=off to avoid API credential requirements
- Include documentation validation jobs
- Test 10 single examples and 11 multi-project examples
- Run full validation suite (placeholders, examples, syntax)
- All requirements PASS: EX-01, EX-02, EX-04, QA-03
- Add Expected Behavior section to Mocha README (EX-02 compliance)
- Document validation results across all 9 frameworks
- Per-framework tables for placeholder, example, and syntax checks
- CI workflow verification with 31 test jobs
- CI workflow tests 31 framework-node combinations
- Final validation report confirms all Phase 4 requirements met
- Phase 4 complete: EX-01, EX-02, EX-04, QA-03 satisfied
- STATE.md updated with Phase 4 completion
- Create .planning/config/terminology.json with canonical, deprecated, and ambiguous term categories
- Define 9 canonical terms (Qase, TestOps, test case, test run, test case ID, QaseID, qase.config.json, reporter, API token)
- Define 3 deprecated terms (reporter plugin, Qase plugin, test ID)
- Define 2 ambiguous terms with context guidance (config, ID)
- Create .planning/docs/TERMINOLOGY.md as human-readable reference with rationale and examples
- Create .planning/tools/validate-terminology.js following validate-placeholders.js pattern
- Implements terminology validation with deprecated (errors), canonical (warnings), and ambiguous (warnings) checks
- Skips code blocks to avoid false positives from code examples
- Strips markdown URLs to prevent false positives from domain names
- Create .planning/tools/validate-links.js following validate-placeholders.js pattern
- Validates internal file links and anchor fragments using GitHub-compatible slug generation
- Both tools use zero npm dependencies (Node.js fs/path only)
- Both tools support --help flag and proper exit codes (0=clean, 1=issues found, 2=error)
- Both tools use ANSI colors for output and provide detailed error messages
- Add 05-01-SUMMARY.md documenting completion of terminology and link validation infrastructure
- Update STATE.md to Phase 5 Plan 1 of 2 completed
- Record 5 key decisions in STATE.md
- Update performance metrics: 19 plans completed, 4.3 hours total execution time
- Document deviation: stripped markdown URLs to prevent false positives
- Self-check passed: all 4 files created, all 2 commits verified
- Fixed deprecated term: "test ID" → "test case ID"
- Fixed capitalization: "qase" → "Qase" in prose (50+ instances)
- Fixed capitalization: "testops" → "TestOps" (10+ instances)
- Fixed broken example links to point to examples/single/ and examples/multiProject/
- Fixed LICENSE links to point to package-local LICENSE files
- Removed broken CHANGELOG.md links
- Added missing "See Also" and "Limitations" entries to usage.md TOCs
- Added terminology validation step to CI workflow
- Added internal link validation step to CI workflow
- Fixed remaining "test ID" → "test case ID" instances (8 files)
- Created comprehensive QA report documenting all Phase 5 findings

QA Report Summary:
- 689 markdown files validated
- 1 deprecated term error + 60 capitalization issues fixed
- 38 broken links fixed across 488 internal links
- 10 TOC entries added to usage.md files
- CI integration ensures ongoing quality
…ates

- Created comprehensive 05-02-SUMMARY.md documenting all fixes and decisions
- Updated STATE.md to reflect Phase 5 completion (2/2 plans)
- Marked project status as COMPLETE - all 5 phases finished
- Updated performance metrics: 20 plans total, 4.4 hours execution time
- Added 6 key decisions from Phase 5 plan 2 to state context

Phase 5 Quality Assurance complete:
- QA-01 Terminology Consistency: PASS
- QA-02 Link Validation: PASS
- All 9 frameworks validated and CI-integrated
Added npm downloads badges next to license badges for all 9 framework reporters:
- jest-qase-reporter
- playwright-qase-reporter
- cypress-qase-reporter
- mocha-qase-reporter
- vitest-qase-reporter
- cucumberjs-qase-reporter
- newman-qase-reporter
- testcafe-qase-reporter
- wdio-qase-reporter

Badges link to respective npm package pages and display monthly download counts.
Comment thread .github/workflows/examples.yml Outdated
Comment thread .planning/phases/02-core-documentation/02-03-SUMMARY.md Outdated
Comment thread .github/workflows/examples.yml Outdated
- Removed .planning/ folder from git tracking (kept locally via .gitignore)
- Removed .github/workflows/examples.yml (CI workflow for examples)

The .planning/ directory contains internal documentation planning artifacts
that should not be tracked in the repository.
…EADMEs

All three reporters have complete documentation sets (usage, attachments, steps, multi-project, upgrade guides), but their README files were missing links to some of these docs. Added complete documentation tables matching the pattern used by Jest, Playwright, Cypress, Mocha, Vitest, and CucumberJS reporters.

Changes:
- TestCafe: Added Attachments, Steps, Upgrade Guide; Fixed Multi-Project to reference local docs/
- Newman: Added Attachments, Steps, Upgrade Guide; Fixed Multi-Project to reference local docs/
- WDIO: Added Attachments, Steps, Upgrade Guide

All links validated successfully with 0 broken links.
Fixed three broken links in qase-javascript-commons/README.md that were pointing to incorrect directory structure. The examples are located in examples/multiProject/, not examples/single/multiProject/.

Changes:
- Fixed Newman example path: single/multiProject/newman → multiProject/newman
- Fixed TestCafe example path: single/multiProject/testcafe → multiProject/testcafe
- Fixed multi-project directory link: single/multiProject/ → multiProject/

All links now validated successfully.

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.

Comment thread .gitignore
*.tmp

CLAUDE.md
.planning/

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AI tool artifacts added to shared project gitignore

Low Severity

CLAUDE.md and .planning/ are personal AI development tool artifacts added to the shared project .gitignore. These are developer-specific files (Claude AI context/planning) that belong in the developer's global gitignore (~/.gitignore_global) or .git/info/exclude, not in the repository's .gitignore which is shared with all contributors.

Fix in Cursor Fix in Web

@gibiw gibiw merged commit d498cb5 into main Feb 13, 2026
51 checks passed
@gibiw gibiw deleted the docs/04-examples-validation-plans branch February 13, 2026 19:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant