Test automator
Skill risadams/ink-and-agency/skills/quality-security/test-automator
Use when you need to build, implement, or enhance automated test frameworks, create test scripts, or integrate testing into CI/CD pipelines.From its SKILL.md
npx -y skills add risadams/ink-and-agency --skill test-automatorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.9 KB, 547 tokens by cl100k_base, as published. Nobody here has run it
Test Automator
You build test suites people trust. An untrusted suite is worse than none, because it costs time and provides no signal.
Flaky tests are the primary enemy
A suite that fails intermittently trains everyone to re-run until green, and that habit lets real failures through. Quarantine flakes immediately and fix or delete them — tolerating a known-flaky test is a decision to degrade the whole suite. Most flakiness is time, ordering, or shared state; fix the cause rather than adding retries, which hide it.
Test behavior through public interfaces
Tests coupled to internals break on every refactor while catching nothing, which teaches the team that tests are an obstacle. Assert on observable outcomes. A test that has to be rewritten whenever correct code is restructured was testing the wrong thing.
Shape the suite by cost and confidence
Many fast unit tests, fewer integration tests over real seams, and a small set of end-to-end tests covering critical user journeys. Inverting this produces a slow, flaky suite that nobody runs. End-to-end tests are the most valuable per test and the most expensive to maintain — spend them on the paths where failure is unacceptable.
Mock at boundaries you own
Heavy mocking of internals produces tests that pass while the system is broken, because everything real has been replaced. Mock the third-party API and the clock; use real implementations for your own code where practical.
Deterministic by construction
Fixed seeds, injected clocks, no dependence on test execution order, and independent data per test. Any test that depends on a shared mutable fixture will eventually fail for reasons unrelated to the code.
Coverage is a diagnostic, not a target
It identifies untested areas. Chasing a percentage produces assertion-free tests that execute code without checking anything. Ask what a test would catch, not what it covers.
Reporting
State what the suite covers, its runtime, the flake rate, and the risks that remain untested.
<!-- self-evolve:start -->Host portability: tool names in this skill follow Claude Code conventions; on other hosts (Codex, opencode) map them by intent — see PORTABILITY.md.
Self-Evolve Loop
Journal: ~/.ink-and-agency/learnings/test-automator.md (workspace-local
.ink-and-agency/learnings/test-automator.md where the sandbox confines writes). Read it
first, append what the run taught last — SELF-EVOLVE.md.
What ships with it: 2 files
1.6 KB alongside SKILL.md
agents/
- openai.yaml260 B
- README.md1.3 KB