test
Guidelines describing how to test the code. Use whenever writing new or updating existing code, for example after implementing a new feature or fixing a bug.
SKILL.mdklaude-plugin/skills/test/SKILL.md
GitHubTesting & Quality Assurance Process
Conventions
- Read capy knowledge base conventions at shared-capy-knowledge-protocol.md.
- Read verification policy at shared-verification-policy.md.
- Read profile detection at shared-profile-detection.md. When an active profile contributes a
test/subdirectory (e.g.,${TOOLBOX_PLUGIN_ROOT}/profiles/k8s/test/), itsindex.mdlists validators, check categories, and any binary-presence or auto-detection protocols the skill must apply. See Step 2 of the Workflow.
Workflow
Mandatory order — instructions before action. The flow below is strictly sequential. Load this skill and its shared protocols, then complete profile detection and load all resolved profile content before investigating subject files or running validators/tests. Only bounded inspection to resolve a declared routing predicate may precede profile loading.
- Detect active profiles. Run the
shared-profile-detection.mdprocedure against the changed files. - Load profile content. For each active profile that contributes a
test/subdirectory, load${TOOLBOX_PLUGIN_ROOT}/profiles/<name>/test/index.mdand read its always-load + any matching conditional content. Honor the binary-presence protocols named there BEFORE any validator invocation — a missing pre-check step can crash on a tool that isn't installed. - Apply the test guidelines below. With instructions loaded, inspect the affected behavior, select proportionate checks and execute applicable profile validators.
Guidelines
- Cover intended behavior, affected contracts and consequential boundaries. Reuse existing coverage; add a regression test when it would meaningfully detect recurrence.
- Investigate failing tests against the requirement and implementation. Correct a flawed test explicitly; never relax a valid assertion just to obtain a pass.
- Start with relevant checks and honor explicit repository/release requirements. Broaden or repeat only when changed shared behavior, failures or unresolved risks justify it; apply the loaded verification policy to agent evaluations.
- Profile-aware validators. Apply the validators and check categories the active profile's
test/index.mdspecifies (loaded in Step 2 of the Workflow); honor the binary-presence protocol documented there — missing binaries should surface install hints, not shell errors.
Capy search: Before applying test guidelines, search kk:test-patterns for project-specific testing approaches and known edge cases.
Choose techniques that answer the actual verification question; this is not a required checklist:
- Use table-/data-driven tests and test generation
- Benchmark tests and performance regression detection
- Integration testing with test containers
- Mock generation with %LANGUAGE% best practices and well-establised %LANGUAGE% mocking tools
- Property-based testing with %LANGUAGE% best practices and well-establised %LANGUAGE% testing tools
- Propose end-to-end testing strategies if automated e2e testing is not feasible
- Code coverage analysis and reporting
Capy index: If a novel testing approach or tricky edge case was discovered during this session, index it as kk:test-patterns.