Skip to content
Agentmart
Submit a tool

testing-best-practices

Support QA and testing work across formats: planning checks, writing test cases, reviewing coverage, designing Playwright browser and component integration…

Skill by siberiacancode

IndexedMIT★ 23
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/siberiacancode-testing-best-practices

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Support QA and testing work across formats: planning checks, writing test cases, reviewing coverage, designing Playwright browser and component integration tests, creating locators, and keeping automated tests focused on observable product behavior.

Use cases: frontend, testing, writing

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 3

  • codeload.github.com · found in install command
  • reactuse.org · found in code
  • testing-library.com · found in code

Files it touches

  • ~/.claude/skills/testing-best-practices

What's inside

Skill name
testing-best-practices
Description
Support QA and testing work across formats: planning checks, writing test cases, reviewing coverage, designing Playwright browser and component integration tests, creating locators, and keeping automated tests focused on observable product behavior.
License
MIT
Instructions
91 lines in SKILL.md · view on GitHub

Files (30)

  • AGENTS.md
  • README.md
  • SKILL.md
  • metadata.json
  • _sections.md · rules/
  • _template.md · rules/
  • integration-test-browser.md · rules/
  • integration-test-component.md · rules/
  • integration-test-conventions.md · rules/
  • integration-test-grill.md · rules/
  • integration-test-locator-testids.md · rules/
  • integration-test-mocks.md · rules/
  • integration-test-server.md · rules/
  • integration-test-setup.md · rules/
  • hook-listeners.md · rules/references/
  • hook-web-api.md · rules/references/
  • testcase-content.md · rules/
  • testcase-conventions.md · rules/
  • testcase-file-structure.md · rules/
  • testcase-grill.md · rules/
  • testcase-naming.md · rules/
  • testcase-preconditions.md · rules/
  • testcase-testit-xlsx-export.md · rules/
  • testcase-testit-xlsx-read.md · rules/
  • unit-test-conventions.md · rules/
  • unit-test-function.md · rules/
  • unit-test-grill.md · rules/
  • unit-test-react-component-compound.md · rules/
  • unit-test-react-component-standalone.md · rules/
  • unit-test-react-hook.md · rules/

SKILL.md (first lines)

# Testing Best Practices

Practical QA guidance for turning product behavior, requirements, and code paths into useful checks. Use this skill for manual test cases, test plans, coverage reviews, automation scenarios, unit tests, Playwright browser and component integration tests, locators, `/unit-test-grill`, `/integration-test-grill`, and `/testcase-grill`.

The central idea is not a specific framework. The central idea is testing discipline:

- Start from the user-visible or public contract: what must work, what may fail, and what must never happen.
- Choose the right testing format for the risk: exploratory notes, manual test cases, regression checklist, unit coverage, integration scenario, or automation task.
- Make every check prove a meaningful behavior, requirement, branch, state transition, error path, or cleanup guarantee.
- Keep coverage focused. Test independent dimensions separately, avoid noisy Cartesian products, and skip arbitrary edge values that only retest the platform.
- Preserve project reality by reading nearby tests, existing QA artifacts, product flows, schemas, and automation conventions before adding new structure.
- Treat integration-test locators and test data as maintained testing APIs, changing schema, implementation, and affected checks together.

Use the specific rule files after choosing the testing subject. The current detailed rules cover automated unit tests, semantic integration locators, and repository-stored product test cases; for other QA formats, apply the core defaults in this file and keep the output concrete enough for a tester or automation engineer to execute.

## When to Apply

Reference these guidelines when:

- Creating manual test cases, smoke checks, regression suites, acceptance scenarios, or exploratory charters.
- Generating, revising, reviewing, or reorganizing structured test cases stored in the repository's test-case catalog.
- Planning or reviewing automation coverage for application behavior.
- Adding or reviewing automated tests for code.
- Looking for missing behavioral coverage, branch coverage, state transitions, cleanup checks, or error paths.
- Deciding how to name, order, and scope checks inside a test file or QA checklist.
- Creating or reviewing a locator for integration tests, including the semantic name, schema path, JSX attribute, and affected checks.
- Invoking `/unit-test-grill` to turn code behavior into a checklist without writing test code.
- Invoking `/integration-test-grill` to map confirmed product cases to browser or component automation without writing test code.
- Invoking `/testcase-grill` to turn a page or block into a list of owned test cases without writing them into the catalog.

## QA Defaults

- Write each check around one behavior or requirement, with clear preconditions, action, and expected result when the format needs those fields.
- Separate smoke, critical-path, regression, negative, boundary, permission, data-state, and recovery checks when that distinction changes execution priority.
- Prefer scenario names that describe the promised behavior, not the implementation detail.
- Include setup data, environment assumptions, and cleanup only when they affect reproducibility.
- Mark automation candidates by stability and value: repeated critical paths, high-risk regressions, deterministic state, and reliable assertions come first.
- Do not automate a scenario until its expected result, data requirements, and locator strategy are stable enough to maintain.
- In reviews, report concrete missing checks or unstable assumptions; do not use coverage percentages or technology names as the main finding.

## Rule Map

Read [unit-test-conventions](rules/unit/unit-test-conventions.md) before any subject-specific unit-test rule.

- [unit-test-function](rules/unit/unit-test-function.md) - Public inputs, owned transformations, branches, errors, and async collaborator boundaries.
- [unit-test-react-hook](rules/unit/unit-test-react-hook.md) - Public hook contract, changing arguments, async work, cleanup, and browser/listener behavior.
- [unit-test-react-component-standalone](rules/unit/unit-test-react-component-standalone.md) - Independent component DOM, props, state, interactions, and accessibility.
- [unit-test-react-component-compound](rules/unit/unit-test-react-component-compound.md) - Public parts and the state, context, behavior, and accessibility relationships between them.
- [unit-test-grill](rules/unit/unit-test-grill.md) - Scenario-planning mode for `/unit-test-grill`, split into existing tests to improve and new tests to create.

Read [integration-test-conventions](rules/integration/integration-test-conventions.md) before any application integration-test rule.

- [integration-test-browser](rules/integration/integration-test-browser.md) - When a case requires navigation, browser-owned state, application bootstrap, or another full-browser boundary.
- [integration-test-component](rules/integration/integration-test-component.md) - Realistic mounted feature boundaries, wrappers, providers, and observable component integration behavior.
- [integration-test-server](rules/integration/integration-test-server.md) — Public server entry points and service orchestration.
- [integration-test-mocks](rules/integration/integration-test-mocks.md) - Scenario-owned mock state, case IDs, handlers, and colocated file structure.
- [integration-test-locator-testids](rules/integration/integration-test-locator-testids.md) - Semantic test-ID schema, reuse, generated constants, and conditional `@siberiacancode/testids` usage.
- [integration-test-setup](rules/integration/integration-test-setup.md) — Test-case preconditions, component wrappers, router and query state, mounting, and readiness.
- [integration-test-grill](rules/integration/integration-test-grill.md) - Test-case-driven automation planning, split into existing autotests to improve and new browser or component tests to create.

Read [testcase-conventions](rules/testcase/testcase-conventions.md) before any subject-specific test-case rule.

- [testcase-file-structure](rules/testcase/testcase-file-structure.md) - Folder and file ownership, coverage duplication, and where child screens and reusable blocks live.
- [testcase-naming](rules/testcase/testcase-naming.md) - Dot-separated hierarchy, exact interface labels, and fixed forms for loading, empty-list, and data cases.
- [testcase-content](rules/testcase/testcase-content.md) - Atomic cases, user-oriented actions, concrete expected results, and the split between design, functional, and data checks.
- [testcase-preconditions](rules/testcase/testcase-preconditions.md) - Case-file, folder, and global precondition scope.
- [testcase-grill](rules/testcase/testcase-grill.md) - Case-planning mode for `/testcase-grill`, split into existing cases to improve and new cases to create.

## How to Use

1. Identify the testing goal: manual QA, test-case design, coverage review, automation planning, automated test implementation, or integration-test design.
2. Identify the object under test: product flow, requirement, API, data state, function, UI behavior, hook, component, or cross-component integration.
3. Choose the output format that matches the request. For manual QA, write executable test cases or a prioritized checklist. For automation, write stable scenarios or code-level tests.
4. For unit tests, read the shared conventions and then exactly the subject rule that matches the code under test.
5. For browser-API or listener hooks, read the linked reference from the hook rule only when that behavior is present.
6. For integration tests, read the shared conventions, then exactly the rules needed for the chosen browser or component boundary, mocks, locators, or grill mode.
7. For repository-stored test cases, read the test-case conventions and then exactly the rule that matches the task: structure when choosing or reorganizing files, naming when writing `name`, content when writing steps and expected results, preconditions when adding or moving setup, and the grill rule when listing cases before writing them.

## Automated Test Defaults

- Existing repository conventions override generic testing preferences.
- Inspect the same module's tests first, then the closest comparable tests, neighboring layer tests, existing helpers, and only then the implementation.
- Imitate the closest working pattern with the smallest structural change necessary; do not redesign the suite or add new abstractions unless comparable tests already use them or correctness requires it.
- Add scenarios only from explicit behavior, implementation branches the project normally covers, analogous tests, user requirements, regressions, or established coverage patterns.
- When no relevant project convention exists, use `Should <observable behavior>`, colocated tests, direct setup, `forEach` only for truly repeated cases, and combined cases only when dimensions interact.

## Full Compiled Document

For the compiled overview, see [AGENTS.md](AGENTS.md).

From siberiacancode/agent-skills, MIT.

Signals

Stars
23
Forks
1
Open issues
0
Last commit (this folder)
Oct 10, 2026 (20 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from siberiacancode

Cite this page

testing-best-practices skill. Agent Mart. https://agentmart.dev/skills/siberiacancode-testing-best-practices (last updated 2026-10-24)