Write automated tests using RSpec, Capybara, and FactoryBot for Rails applications. Use when implementing features, fixing bugs, or when the user mentions testing, specs, RSpec, Capybara, or test data. Avoid using rails console or server for testing.
65
77%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/testing-patterns/SKILL.mdQuality
Discovery
89%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a solid skill description with excellent completeness and trigger term coverage. It clearly identifies when to use the skill and includes relevant natural language keywords. The main weakness is that the 'what' portion could be more specific about the types of tests or concrete actions performed beyond the general 'write automated tests'.
Suggestions
Expand the capability list with more specific actions, e.g., 'Write unit specs, request specs, system tests, create test factories, and simulate browser interactions using RSpec, Capybara, and FactoryBot for Rails applications.'
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (automated tests for Rails) and key tools (RSpec, Capybara, FactoryBot), but doesn't list multiple specific concrete actions beyond 'write automated tests'. Could specify types of tests (unit, integration, system), or actions like 'create factories, write request specs, simulate browser interactions'. | 2 / 3 |
Completeness | Clearly answers both 'what' (write automated tests using RSpec, Capybara, and FactoryBot for Rails applications) and 'when' (implementing features, fixing bugs, or when user mentions testing/specs/RSpec/Capybara/test data). Also includes a helpful negative boundary ('Avoid using rails console or server for testing'). | 3 / 3 |
Trigger Term Quality | Includes strong natural trigger terms: 'testing', 'specs', 'RSpec', 'Capybara', 'test data', 'implementing features', 'fixing bugs'. These are terms users would naturally use when requesting test-related help in a Rails context. | 3 / 3 |
Distinctiveness Conflict Risk | Clearly scoped to Rails testing with specific tools (RSpec, Capybara, FactoryBot). The combination of framework (Rails) and specific testing libraries creates a distinct niche unlikely to conflict with other skills. | 3 / 3 |
Total | 11 / 12 Passed |
Implementation
64%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a solid, actionable testing skill with excellent concrete examples, particularly the let vs let! comparison and the Turbo confirm dialog helper. Its main weaknesses are moderate verbosity (explaining things Claude already knows, a useless 'Future Topics' section), and the lack of an integrated workflow tying the individual patterns together. The content would benefit from trimming redundant explanations and splitting detailed helper code into referenced files.
Suggestions
Remove the 'Tech Stack' descriptions, 'General Guidelines' platitudes, and the empty 'Future Topics' section—these waste tokens without adding actionable value.
Add a brief workflow sequence at the top showing the test-writing process: e.g., 1) Create factory, 2) Write spec, 3) Run `bundle exec rspec path/to/spec`, 4) Verify output, 5) Fix failures.
Extract the Turbo confirm helper setup into a separate referenced file (e.g., TURBO_CONFIRM_HELPER.md) to reduce the main file length and improve progressive disclosure.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is mostly efficient but includes some unnecessary content. The 'Tech Stack' section explains what RSpec, Capybara, and FactoryBot are (which Claude already knows). The 'General Guidelines' section contains generic advice like 'keep tests focused and readable.' The let vs let! section is thorough but could be tightened—the 'Key Insight' at the end repeats what was already demonstrated. The 'Future Topics' section adds zero value. | 2 / 3 |
Actionability | The skill provides fully executable, copy-paste ready code examples throughout: validation testing patterns with build, system test examples with let/let!, Turbo confirm dialog helpers with complete setup instructions, and data-testid element selection with both view and spec code. All examples are concrete and specific to the Rails/RSpec ecosystem. | 3 / 3 |
Workflow Clarity | The skill provides clear patterns for individual testing concerns (validation testing, system tests, element selection) but lacks an overall workflow sequence for writing tests. There are no explicit validation checkpoints—for example, no guidance on running tests after writing them, verifying factory validity, or handling test failures systematically. The test command is listed but not integrated into a workflow. | 2 / 3 |
Progressive Disclosure | The content is well-organized with clear headers and logical grouping, but it's a long monolithic file (~200 lines) with no references to external files. The Turbo confirm helper setup and detailed let/let! examples could be split into separate reference files. The 'Future Topics' section hints at content that doesn't exist. For a skill of this length and breadth, some content splitting would improve navigation. | 2 / 3 |
Total | 9 / 12 Passed |
Validation
100%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 11 / 11 Passed
Validation for skill structure
No warnings or errors.
4d83977
Table of Contents
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.