CtrlK
BlogDocsLog inGet started
Tessl Logo

testing

Skill: testing

40

Quality

40%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./templates/plate-playground-template/.agents/skills/testing/SKILL.md
SKILL.md
Quality
Evals
Security

Testing Goal

Keep tests in three buckets only:

  • Pure unit tests for deterministic logic.
  • Thin component or hook contract tests for real app behavior.
  • Golden input or output tests when serialized output is the contract.

Hard constraints:

  • Prefer Bun for the fast local loop.
  • Keep the default suite fast.
  • No browser or e2e coverage unless the app behavior truly needs it.
  • Coverage is a hotspot tool, not a vanity score.

Core Rules

  • Assert public behavior, not implementation detail.
  • Keep tests next to the code they cover with *.spec.ts[x].
  • Keep helpers local. Do not import one spec from another.
  • Prefer explicit assertions over snapshots.
  • Delete skipped, commented, or placeholder tests instead of babysitting them.

Seam Selection

  • Use plain function tests for pure logic.
  • Use rendered React tests for hooks, components, rerender behavior, and DOM behavior.
  • Use browser checks only when the contract is actually browser-specific.

Fixtures And Assertions

  • Keep fixtures small.
  • Use plain objects for simple state.
  • Use it.each for small behavior matrices.
  • In Bun + Testing Library, prefer render-returned queries over screen.
  • Use direct style-property assertions instead of toHaveStyle.
  • Use snapshots only when serialized output is the contract and inline assertions would be worse.

Quick Reference

  • Keep tests fast and local.
  • Start with the smallest seam that proves the behavior.
  • Prefer explicit assertions.
  • Browser checks are for real UI behavior, not lazy coverage.
Repository
udecode/plate
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.