rails-testing
Installation
SKILL.md
Rails Testing
Use for test-writing and test-review tasks. Patterns from Campfire and Fizzy test suites.
Defaults
- Minitest + fixtures. No RSpec, no FactoryBot.
- Test behavior, not implementation details.
- Keep tests deterministic and fast;
parallelize(workers: :number_of_processors). - Tests ship in the same commit/PR as the feature — not before, not later. Security fixes always include a regression test.
- Never add production complexity for testability (no test-induced design damage).
Coverage Budget (where 37signals actually spends)
- Heavy: model tests (domain invariants, concerns) and controller/integration tests (full request cycle, auth, formats).
- Light: a few system tests for the critical happy paths (one smoke test can cover signup→use); job tests only for jobs with real logic.
- None: view tests, JS/Stimulus unit tests, exhaustive channel tests. UI behavior is covered indirectly by system tests.
- Don't duplicate the same behavior assertion at multiple layers.