| name | cypress-core |
| description | Battle-tested Cypress patterns for E2E, API, component, visual, accessibility, and security testing. Covers selectors, assertions, hooks, intercepts, auth flows, debugging, and framework recipes for React, Next.js, Vue, and Angular. |
| metadata | {"author":"jovd83","version":"1.0","dispatcher-category":"testing","dispatcher-capabilities":"ui-automation, cypress-core, cypress-implementation","dispatcher-accepted-intents":"implement_ui_confirmation_test, debug_cypress_test, review_cypress_test","dispatcher-input-artifacts":"repo_context, requirements, failing_ui_scenario, existing_cypress_suite","dispatcher-output-artifacts":"cypress_test, implementation_guidance, fix_plan","dispatcher-stack-tags":"cypress, ui-testing, implementation","dispatcher-risk":"high","dispatcher-writes-files":true} |
Telemetry & Logging
[!IMPORTANT]
All usage of this skill must be logged via the Skill Dispatcher to ensure audit logs and wallboard analytics are accurate:
./log-dispatch.cmd --skill <skill_name> --intent <intent> --model <model_name> --reason <reason> (or ./log-dispatch.sh on Linux)
Cypress Core Testing
Opinionated, production-tested Cypress guidance with explicit "when to use" and "when not to use" rules.
46 reference guides covering selectors, assertions, waiting, data setup, auth, network control, accessibility, component tests, visual checks, and debugging.
Golden Rules
- Use semantic locators first: prefer
findByRole/findByLabelText over brittle CSS chains.
- Do not use arbitrary sleeps: avoid
cy.wait(2000) for synchronization.
- Use retryable assertions:
cy.get(...).should(...) is the default stability model.
- Keep tests isolated: no shared mutable state or order dependencies.
- Use
baseUrl and environment config: avoid hardcoded URLs.
- Use
cy.intercept() for external dependencies: avoid mocking your app internals.
- Use
cy.session() for repeat auth flows: cache login safely for speed.
- Avoid
{ force: true } as a habit: fix actionability or UI state first.
- Assert user-facing feedback for mutations: validate toasts, banners, and state changes.
- Capture artifacts in CI: screenshots/videos on failure are mandatory for triage.
Official References
Version Compatibility
| Dependency | Supported range | Why it matters |
|---|
| Cypress | >=13.0.0 | Core guides rely on Cypress retryability and cy.session() patterns from v13+. |
| Node.js (by Cypress major) | Cypress 13-14: >=18; Cypress 15+: 20.x, 22.x, >=24.x | Running unsupported Node versions causes install/runtime failures. |
| TypeScript (optional) | Cypress <=14: >=4; Cypress 15+: >=5 | Needed for typed config, commands, and examples in TS projects. |
@testing-library/cypress | 10.x | Enables semantic query examples such as findByRole. |
Guide Index
Writing Tests
Debugging & Fixing
Framework Recipes
Specialized Topics
Architecture Decisions