diff options
| author | Craig Jennings <c@cjennings.net> | 2026-04-19 13:16:07 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-04-19 13:16:07 -0500 |
| commit | e50c732d7138c18749b96b57004a3e23f31bbaef (patch) | |
| tree | fd3738d4f252692a06c3a4f3e162736aaf2a1b6a /memorize/SKILL.md | |
| parent | 2d026369b616e51199579ff039cc34be4d5c2ef9 (diff) | |
| download | rulesets-e50c732d7138c18749b96b57004a3e23f31bbaef.tar.gz rulesets-e50c732d7138c18749b96b57004a3e23f31bbaef.zip | |
feat(rules): port key testing principles from quality-engineer prompt
Additions to claude-rules/testing.md:
- Testing pyramid proportions (70-80% unit / 15-25% integration / 5-10% e2e)
- Integration Tests section: docstring must name 'Components integrated:'
and mark real vs mocked; when-to-write heuristics
- Signs of Overmocking: 'would the test pass if the function body was
NotImplementedError?' plus three more sharp questions
- Testing Code That Uses Frameworks: test your integration, not the
framework itself
- Test Real Code, Not Copies: never inline prod code into tests
- Error Behavior, Not Error Text: test type + key values, not exact prose
- If Tests Are Hard to Write, Refactor the Code: hard-to-test is a code
signal, not a test signal; extract focused helpers
- Anti-patterns list extended
Addition to languages/elisp/claude/rules/elisp-testing.md:
- Interactive vs Internal split pattern: cj/foo wraps cj/--foo; test the
internal directly, skip UI mocks
Source: ~/.emacs.d/ai-prompts/quality-engineer.org (personal reference,
kept as an extended prompt separate from these rules).
Diffstat (limited to 'memorize/SKILL.md')
0 files changed, 0 insertions, 0 deletions
