configure-tests
Test frameworks: Vitest, Jest, pytest, cargo-nextest. Use when setting up test infrastructure, migrating to a modern framework, or validating coverage config.
What this skill does
# /configure:tests Check and configure testing frameworks against best practices (Vitest, Jest, pytest, cargo-nextest). ## When to Use This Skill | Use this skill when... | Use another approach when... | |------------------------|------------------------------| | Setting up testing infrastructure | Just running tests (use `/test:run` skill) | | Checking test framework configuration | Tests already properly configured | | Migrating to modern test frameworks (Vitest, pytest, nextest) | Writing individual tests (write tests directly) | | Validating coverage configuration | Debugging failing tests (check test output) | | Ensuring test best practices | Simple project with no testing needed | ## Context - Package.json: !`find . -maxdepth 1 -name \'package.json\'` - Pyproject.toml: !`find . -maxdepth 1 -name \'pyproject.toml\'` - Cargo.toml: !`find . -maxdepth 1 -name \'Cargo.toml\'` - Test config files: !`find . -maxdepth 1 \( -name 'vitest.config.*' -o -name 'jest.config.*' -o -name 'pytest.ini' -o -name '.nextest.toml' \)` - Pytest in pyproject: !`grep -c 'tool.pytest' pyproject.toml` - Test directories: !`find . -maxdepth 2 -type d \( -name 'tests' -o -name '__tests__' -o -name 'test' \)` - Test scripts in package.json: !`grep -m5 -o '"test[^"]*"' package.json` - Coverage config: !`grep -l 'coverage' vitest.config.* jest.config.*` - Project standards: !`find . -maxdepth 1 -name '.project-standards.yaml' -type f` **Modern testing stack preferences:** - **JavaScript/TypeScript**: Vitest (preferred) or Jest - **Python**: pytest with pytest-cov - **Rust**: cargo-nextest for improved performance ## Parameters Parse these from `$ARGUMENTS`: | Flag | Description | |------|-------------| | `--check-only` | Report status without offering fixes | | `--fix` | Apply all fixes automatically without prompting | | `--framework <framework>` | Override framework detection (`vitest`, `jest`, `pytest`, `nextest`) | ## Version Checking **CRITICAL**: Before flagging outdated versions, verify latest releases: 1. **Vitest**: Check [vitest.dev](https://vitest.dev/) or [GitHub releases](https://github.com/vitest-dev/vitest/releases) 2. **Jest**: Check [jestjs.io](https://jestjs.io/) or [npm](https://www.npmjs.com/package/jest) 3. **pytest**: Check [pytest.org](https://pytest.org/) or [PyPI](https://pypi.org/project/pytest/) 4. **cargo-nextest**: Check [nexte.st](https://nexte.st/) or [GitHub releases](https://github.com/nextest-rs/nextest/releases) Use WebSearch or WebFetch to verify current versions before reporting outdated frameworks. ## Execution Execute this testing framework compliance check: ### Step 1: Detect framework Identify the project language and existing test framework: | Indicator | Language | Detected Framework | |-----------|----------|-------------------| | `vitest.config.*` | JavaScript/TypeScript | Vitest | | `jest.config.*` | JavaScript/TypeScript | Jest | | `pyproject.toml` [tool.pytest] | Python | pytest | | `pytest.ini` | Python | pytest | | `Cargo.toml` | Rust | cargo test | | `.nextest.toml` | Rust | cargo-nextest | If `--framework` flag is provided, use that value instead. ### Step 2: Analyze current state Read the detected framework's configuration and check completeness. For each framework, verify: **Vitest:** - Config file exists (`vitest.config.ts` or `.js`) - `globals: true` configured for compatibility - `environment` set appropriately (jsdom, happy-dom, node) - Coverage configured with `@vitest/coverage-v8` or `@vitest/coverage-istanbul` - Watch mode exclusions configured **Jest:** - Config file exists (`jest.config.js` or `.ts`) - `testEnvironment` configured - Coverage configuration present - Transform configured for TypeScript/JSX - Module path aliases configured **pytest:** - `pyproject.toml` has `[tool.pytest.ini_options]` section - `testpaths` configured - `addopts` includes useful flags (`-v`, `--strict-markers`) - `markers` defined for test categorization - `pytest-cov` installed **cargo-nextest:** - `.nextest.toml` exists - Profile configurations (default, ci) - Retry policy configured - Test groups defined if needed ### Step 3: Report results Print a compliance report with: - Detected framework and version - Configuration check results for each item - Test organization (unit/integration/e2e directories) - Package scripts status (test, test:watch, test:coverage) - Overall issue count and recommendations If `--check-only`, stop here. ### Step 4: Apply fixes (if --fix or user confirms) Install dependencies and create configuration using templates from [REFERENCE.md](REFERENCE.md): 1. **Missing config**: Create framework config file from template 2. **Missing dependencies**: Install required packages 3. **Missing coverage**: Add coverage configuration with 80% threshold 4. **Missing scripts**: Add test scripts to package.json 5. **Missing test directories**: Create standard test directory structure ### Step 5: Set up test organization Create standard test directory structure for the detected language. See directory structure patterns in [REFERENCE.md](REFERENCE.md). ### Step 6: Configure CI/CD integration Check for test commands in GitHub Actions workflows. If missing, add CI test commands using the CI templates from [REFERENCE.md](REFERENCE.md). ### Step 7: Handle migration (if upgrading) If migrating between frameworks (e.g., Jest to Vitest, unittest to pytest), follow the migration guide in [REFERENCE.md](REFERENCE.md). ### Step 8: Update standards tracking Update `.project-standards.yaml`: ```yaml standards_version: "2025.1" last_configured: "<timestamp>" components: tests: "2025.1" tests_framework: "<vitest|jest|pytest|nextest>" tests_coverage_threshold: 80 tests_ci_integrated: true ``` For detailed configuration templates, migration guides, CI/CD integration examples, and directory structure patterns, see [REFERENCE.md](REFERENCE.md). ## Agentic Optimizations | Context | Command | |---------|---------| | Detect test framework | `find . -maxdepth 1 \( -name 'vitest.config.*' -o -name 'jest.config.*' -o -name 'pytest.ini' \) 2>/dev/null` | | Check coverage config | `grep -l 'coverage' package.json pyproject.toml 2>/dev/null` | | List test files | `find . \( -path '*/tests/*' -o -path '*/test/*' -o -name '*.test.*' -o -name '*.spec.*' \) 2>/dev/null \| head -n 10` | | Quick compliance check | `/configure:tests --check-only` | | Auto-fix configuration | `/configure:tests --fix` | ## Error Handling - **No package.json found**: Cannot configure JS/TS tests, skip or error - **Conflicting frameworks**: Warn about multiple test configs, require manual resolution - **Missing dependencies**: Offer to install required packages - **Invalid config syntax**: Report parse error, offer to replace with template ## See Also - `/configure:coverage` - Configure coverage thresholds and reporting - `/configure:all` - Run all compliance checks - `/test:run` - Universal test runner - `/test:setup` - Comprehensive testing infrastructure setup - **Vitest documentation**: https://vitest.dev - **pytest documentation**: https://docs.pytest.org - **cargo-nextest documentation**: https://nexte.st
Related in Code Review
gstack
IncludedFast headless browser for QA testing and site dogfooding. Navigate pages, interact with elements, verify state, diff before/after, take annotated screenshots, test responsive layouts, forms, uploads, dialogs, and capture bug evidence. Use when asked to open or test a site, verify a deployment, dogfood a user flow, or file a bug with screenshots. (gstack)
startup-due-diligence
IncludedLegal due diligence review for seed-stage and Series A startups (US, Delaware C-Corp focus). Supports both investor and founder perspectives. Capabilities include: (1) Interactive document review and issue spotting; (2) Document request list generation; (3) Cap table and SAFE/convertible note analysis; (4) Red flag identification with severity ratings; (5) Diligence report generation. TRIGGERS: due diligence, DD, startup investment, cap table review, Series A, seed round, investor diligence, legal review startup, SAFE analysis, convertible note, 409A, founder vesting.
interview-master
IncludedThis skill should be used when the user asks to "generate interview questions", "prepare for interview", "optimize resume", "conduct mock interview", "analyze git commits for resume", "generate resume from code", "review my resume", or mentions interview preparation, career assistance, or extracting project experience from git history. Provides comprehensive interview and career development guidance for both job seekers and interviewers.
fix-issue
IncludedFixes GitHub issues using parallel analysis agents for root cause investigation, code exploration, and regression detection. Reads issue context from gh CLI, searches codebase and memory for related patterns, generates a fix with tests, and links the resolution back to the issue via PR. Includes prevention analysis to avoid recurrence. Use when debugging errors, resolving regressions, fixing bugs, or triaging issues.
sf-apex
IncludedGenerates and reviews Salesforce Apex code with 150-point scoring. TRIGGER when: user writes, reviews, or fixes Apex classes, triggers, test classes, batch/queueable/schedulable jobs, or touches .cls/.trigger files. DO NOT TRIGGER when: LWC JavaScript (use sf-lwc), Flow XML (use sf-flow), SOQL-only queries (use sf-soql), or non-Salesforce code.
swift-development
IncludedComprehensive Swift development for building, testing, and deploying iOS/macOS applications. Use when Claude needs to: (1) Build Swift packages or Xcode projects from command line, (2) Run tests with XCTest or Swift Testing framework, (3) Manage iOS simulators with simctl, (4) Handle code signing, provisioning profiles, and app distribution, (5) Format or lint Swift code with SwiftFormat/SwiftLint, (6) Work with Swift Package Manager (SPM), (7) Implement Swift 6 concurrency patterns (async/await, actors, Sendable), (8) Create SwiftUI views with MVVM architecture, (9) Set up Core Data or SwiftData persistence, or any other Swift/iOS/macOS development tasks.