.cursor/skills/app-testing/SKILL.md
Testing implementation guidance for application code. Load when deciding what to test, how to split tests across layers, or how to avoid redundant tests.
npx skillsauth add poko8nada/corp_site-type01 app-testingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
docs/behavior.md is the lightweight map of expected behavior and current test
coverage.
Use behavior to record:
未作成 / 不要Use this skill to decide:
When behavior changes or test ownership changes, update docs/behavior.md too.
Test the boundary that owns the behavior. Do not duplicate the same contract across route, feature, and utility tests unless each layer truly owns a different risk.
What owns the behavior?
├─ Shared pure logic or adapter → unit test
├─ Feature-specific processing or rendering → feature test
├─ Critical cross-page flow → E2E test
└─ Small interactive UI detail only → component test
Use unit tests for code that is reusable and framework-light.
Good fit:
These tests should verify:
Use feature tests for behavior owned by one feature boundary.
Good fit:
Feature tests should receive explicit inputs whenever possible. Avoid making them depend on the full route or framework surface unless the feature truly owns that dependency.
Use component tests sparingly.
They are most useful when:
Do not reach for component tests just because JSX exists.
Use E2E for critical user journeys that cross multiple boundaries.
Good fit:
Do not use E2E to cover behavior that is already well protected by feature tests unless the end-to-end risk is materially different.
Before adding a test, ask:
If the answer to the second question is yes, prefer deleting the weaker test instead of adding another.
Use names that describe the behavior and condition:
returns not-found when the record does not existrenders retry state when loading failsredirects to login when the session is missingAvoid names that only describe the function or file.
development
Bootstraps project documentation for an existing repository by reading the codebase, README, tests, and package metadata, then creates or updates docs/overview.md, docs/behavior.md, and ADRs when significant architectural decisions are discovered. Use when asked to document a repo, extract project purpose, write overview/behavior docs, review an existing codebase, or capture architecture decisions from source.
development
Creates or updates docs/overview.md — the project's purpose and background. Load when starting a new project, when the project's goals or context have changed, or when docs/overview.md does not exist. Covers what to write, what to omit, and how to keep the document agent-friendly.
documentation
Implements a new feature using docs-first delivery, boundary-driven structure, and skeleton-first execution. Load when adding a route, feature, or new user-visible behavior.
tools
Manages GitHub Issues using gh CLI — creation, decomposition, update, and close. Load when asked to create a new issue, break down a large task into issues, update issue status or labels, or close an issue after a PR is merged. Human decides whether to create an issue. Agent handles all gh CLI operations.