test-focus

- Project files: !find . -maxdepth 1 \( -name 'pyproject.toml' -o -name 'package.json' -o -name 'Cargo.toml' -o -name 'go.mod' \)

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "test-focus" with this command: npx skills add laurigates/claude-plugins/laurigates-claude-plugins-test-focus

Context

  • Project files: !find . -maxdepth 1 ( -name 'pyproject.toml' -o -name 'package.json' -o -name 'Cargo.toml' -o -name 'go.mod' )

  • Playwright config: !find . -maxdepth 1 -name 'playwright.config.*'

  • Vitest config: !find . -maxdepth 1 ( -name 'vitest.config.' -o -name 'vite.config.' )

  • Jest config: !find . -maxdepth 1 -name 'jest.config.*'

  • Pytest config: !find . -maxdepth 1 ( -name pyproject.toml -o -name setup.cfg ) -exec grep -l 'pytest' {} +

  • Package.json exists: !find . -maxdepth 1 -name 'package.json' -type f

Parameters

  • $1 (required): Test file path or pattern (e.g., login.spec.ts , tests/e2e/auth.spec.ts )

  • --serial : Force sequential execution with single worker (useful for WebGL, database tests)

  • --debug : Run in debug/headed mode for visual debugging

Your task

Run a single test file in fail-fast mode for rapid development iteration. Stop immediately on first failure to minimize feedback time.

  1. Detect test framework and construct command

Playwright (if playwright.config.* exists):

Standard fail-fast

bunx playwright test "$FILE" --max-failures=1 --reporter=line

With --serial (WebGL, shared state)

bunx playwright test "$FILE" --max-failures=1 --workers=1 --reporter=line

With --debug

bunx playwright test "$FILE" --max-failures=1 --headed --debug

Vitest (if vitest.config.* or vite.config.* exists):

Standard fail-fast

bunx vitest run "$FILE" --bail=1 --reporter=dot

With --serial

bunx vitest run "$FILE" --bail=1 --pool=forks --poolOptions.threads.singleThread --reporter=dot

With --debug

bunx vitest run "$FILE" --bail=1 --inspect-brk

Jest (if jest.config.* exists):

Standard fail-fast

bunx jest "$FILE" --bail --silent

With --serial

bunx jest "$FILE" --bail --runInBand --silent

With --debug

bunx jest "$FILE" --bail --runInBand

pytest (Python projects):

Standard fail-fast

python -m pytest "$FILE" -x -v --tb=short

With --serial (already serial by default)

python -m pytest "$FILE" -x -v --tb=short

With --debug

python -m pytest "$FILE" -x -v --tb=long -s

Cargo test (Rust projects):

Standard fail-fast

cargo test --test "$FILE" -- --test-threads=1

With --debug

cargo test --test "$FILE" -- --test-threads=1 --nocapture

Go test:

Standard fail-fast

go test -v -failfast "$FILE"

With --debug

go test -v -failfast "$FILE" -count=1

  1. Execute the test

Run the constructed command. Capture and display output.

  1. Analyze results

If the test passes:

Duration: Xs

Ready for next iteration or file.

If the test fails:

Duration: Xs

First failure: Test: [test name] Error: [brief error message] Location: [file:line]

Quick actions:

  • Fix the issue and re-run: /test:focus [same file]
  • Debug visually: /test:focus file --debug
  • See full output: /test:run file
  1. Provide rerun command

Always show the exact command to rerun:

Rerun: /test:focus $FILE

Time savings context

Focused testing dramatically reduces feedback time:

Approach Typical Duration Use Case

/test:focus

2-30 seconds Iterating on single file

/test:quick

30 seconds Unit tests after changes

/test:full

5-30 minutes Before commit/PR

Agentic optimizations

Context Flags

Playwright fast --max-failures=1 --reporter=line

Playwright WebGL --max-failures=1 --workers=1 --reporter=line

Vitest fast --bail=1 --reporter=dot

Jest fast --bail --silent

pytest fast -x -v --tb=short

Error handling

  • If file not found: List similar test files with glob and suggest corrections

  • If framework not detected: Show available package.json scripts containing "test"

  • If test times out: Suggest --serial flag or increasing timeout

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

ruff-linting

No summary provided by upstream source.

Repository SourceNeeds Review
General

imagemagick-conversion

No summary provided by upstream source.

Repository SourceNeeds Review
General

jq json processing

No summary provided by upstream source.

Repository SourceNeeds Review