Writes and reviews automated tests test-first, in each language's test framework. Use when writing, changing, or reviewing tests, fixing a bug in a project with tests, or adding behavior that tests should cover.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# Writing tests
Tests are what make code safe to change. Martin's rule is that test code is as important as production code, so it gets the same care for names, structure, and simplicity. Code-level rules live in the writing-clean-code skill.
## Test-driven development
Use the test-first cycle for new logic and for bug fixes when the project has a test suite, unless the user asks for a different workflow.
1. **Red.** Write the smallest test that fails for the next piece of behavior. A compile error counts as failing.
2. **Green.** Write only enough production code to make that test pass.
3. **Refactor.** Clean up production and test code while all tests stay green.
Work in small steps and run the tests after each one. As the tests get more specific, the code gets more generic, so never answer a new test with an `if` for that exact input. If the code only passes by special-casing test data, the design is wrong.
For a bug fix, first write a test that reproduces the bug and watch it fail for the right reason, then fix the code.
## What makes a test clean
…
The line at the top of this page pins the label git:20261015.18f69f5, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
GET https://markdownregistry.com/api/v1/artifacts/art_crukkzl4d2t3g7ux
GET https://markdownregistry.com/api/v1/resolve?ref=dayfinggg/openai-codex-agent-skills/writing-tests
GET https://markdownregistry.com/api/v1/blob/98132e086a53d187dc6f359500c5aab51ca261aa5437597c231a09e65e09a4df
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
dayfinggg/openai-codex-agent-skills · codex/skills/adding-observability/SKILL.md · Adds and reviews logs, metrics, traces, error reporting, and health endpoints with OpenTelemetry and structured…
dayfinggg/openai-codex-agent-skills · codex/skills/applying-clean-architecture/SKILL.md · Structures applications with business rules at the center and frameworks, databases, and UI behind ports and adapters…
dayfinggg/openai-codex-agent-skills · codex/skills/applying-design-patterns/SKILL.md · Chooses, introduces, and removes design patterns such as Strategy, Factory, Adapter, and Observer, starting from a real…
dayfinggg/openai-codex-agent-skills · codex/skills/building-resilient-services/SKILL.md · Makes service code survive slow and failing dependencies with timeouts, retries, circuit breakers, idempotent handlers…
dayfinggg/openai-codex-agent-skills · codex/skills/designing-http-apis/SKILL.md · Designs and reviews HTTP and REST JSON APIs by current standards for methods, status codes, errors, and OpenAPI…
dayfinggg/openai-codex-agent-skills · codex/skills/designing-user-interfaces/SKILL.md · Designs, builds, and reviews user interfaces for web and mobile with usability heuristics, WCAG 2.2 AA, and design…
dayfinggg/openai-codex-agent-skills · codex/skills/managing-dependencies-and-ci/SKILL.md · Adds, updates, and removes dependencies and hardens CI with maintained packages, committed lockfiles, pinned images and…
dayfinggg/openai-codex-agent-skills · codex/skills/planning-implementation/SKILL.md · Studies a coding task in a larger codebase before any edit, settles open decisions with the user, agrees on a short…
dayfinggg/openai-codex-agent-skills · codex/skills/recording-architecture-decisions/SKILL.md · Records architecture decisions as ADRs in the repository's format or MADR and draws C4 diagrams as text. Use when asked…
dayfinggg/openai-codex-agent-skills · codex/skills/releasing-software/SKILL.md · Versions and publishes software by SemVer with trusted publishing, provenance, and SBOMs. Use when bumping a version…
dayfinggg/openai-codex-agent-skills · codex/skills/securing-llm-features/SKILL.md · Secures code that uses large language models against prompt injection, excessive agency, unsafe output handling, data…
dayfinggg/openai-codex-agent-skills · codex/skills/working-with-3d-graphics/SKILL.md · Builds, scripts, and reviews 3D work in Blender, Unreal Engine 5, three.js, React Three Fiber, Babylon.js, and glTF…
amplifthq/openmeld · .agents/skills/writing-tests/SKILL.md · Gates whether a new test should exist and forces it to be efficient, protecting CI from low-value test bloat. Use…
zaxbyhub/opencode-swarm · .claude/skills/writing-tests/SKILL.md · Claude Code adapter for opencode-swarm test authoring rules. Use before creating or modifying tests in this repository.
zaxbyhub/opencode-swarm · .agents/skills/writing-tests/SKILL.md · Codex adapter for opencode-swarm test authoring rules. Use before creating or modifying any test file in this…
zaxbyhub/opencode-swarm · .opencode/skills/writing-tests/SKILL.md · Guidelines for writing, organizing, and maintaining tests in the opencode-swarm repository. Covers framework rules…
iliaal/ai-skills · skills/writing-tests/SKILL.md · Generic test writing discipline: test quality, real assertions, anti-patterns, and rationalization resistance. Use when…
ahgraber/skills · skills/writing-tests/SKILL.md · Use when writing or reviewing tests in any language, or diagnosing a suite that is slow, brittle, or hard to read…
cristhianzl/claude-skills-czl · configs/agnostic/skills/writing-tests/SKILL.md · Write unit, integration, and E2E tests that follow the testing pyramid, the Arrange-Act-Assert pattern, the…