Language-agnostic testing principles including TDD, test quality, coverage standards, and test design patterns. Use when writing tests, designing test strategies, or reviewing test quality.
50
54%
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-principles/SKILL.mdQuality
Discovery
82%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 description that clearly communicates both what the skill covers and when to use it, with good trigger terms. Its main weaknesses are that the capabilities listed are somewhat abstract categories rather than concrete actions, and the broad 'language-agnostic' scope could create overlap with more specialized testing skills.
Suggestions
Replace abstract categories with concrete actions, e.g., 'Guides writing unit/integration/e2e tests, applying TDD workflows, setting coverage thresholds, and structuring test suites with patterns like AAA and fixtures.'
Add distinctiveness by clarifying when NOT to use this skill, e.g., 'Use for general testing guidance; defer to language-specific testing skills when available.'
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (testing) and lists some areas like TDD, test quality, coverage standards, and test design patterns, but these are still somewhat abstract categories rather than concrete actions like 'write unit tests, generate mocks, measure code coverage'. | 2 / 3 |
Completeness | Clearly answers both what ('Language-agnostic testing principles including TDD, test quality, coverage standards, and test design patterns') and when ('Use when writing tests, designing test strategies, or reviewing test quality') with explicit trigger guidance. | 3 / 3 |
Trigger Term Quality | Includes strong natural keywords users would say: 'TDD', 'tests', 'test quality', 'coverage', 'test design patterns', 'test strategies'. These are terms users naturally use when seeking testing help. | 3 / 3 |
Distinctiveness Conflict Risk | While testing is a clear domain, 'language-agnostic' makes it broad and could overlap with language-specific testing skills. The description could conflict with more specialized testing skills (e.g., a Python pytest skill or a JavaScript Jest skill). | 2 / 3 |
Total | 10 / 12 Passed |
Implementation
27%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill reads like a comprehensive testing textbook rather than a targeted skill for Claude. It extensively covers concepts Claude already knows (what unit tests are, what TDD is, what mocking is) without providing novel, project-specific, or executable guidance. The content would benefit enormously from being reduced to ~50-80 lines of opinionated, actionable rules with specific examples, moving detailed reference material to separate files.
Suggestions
Reduce content by 70-80% by removing explanations of concepts Claude already knows (test types, TDD basics, AAA pattern, mocking concepts) and keeping only project-specific rules and constraints.
Split detailed sections (Data Layer Testing, Language Paradigm considerations, Regression Testing) into separate referenced files, keeping SKILL.md as a concise overview with clear navigation links.
Replace pseudocode examples with executable code in at least one concrete language, or provide language-specific example files in a bundle.
Add explicit feedback loops for common failure scenarios (e.g., 'If coverage drops below 80%: identify untested paths → add tests → re-run coverage → verify threshold met').
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | This is extremely verbose at ~400+ lines, extensively explaining concepts Claude already knows well (TDD, AAA pattern, test types, mocking principles, CI/CD basics). Most content is textbook testing knowledge that adds no novel or project-specific value. Sections like 'TDD Benefits', 'Tests as Documentation', and explanations of unit vs integration vs E2E tests are unnecessary padding. | 1 / 3 |
Actionability | The skill provides some concrete guidance (AAA pattern pseudocode, test naming formats, directory structure) but lacks executable code in any real language. Examples are pseudocode or plain text lists (✓/✗ markers). There are no copy-paste-ready test examples, no specific framework commands, and no concrete tool invocations. | 2 / 3 |
Workflow Clarity | The TDD RED-GREEN-REFACTOR cycle is clearly sequenced with a verification step, and the 'Before Commit' checklist is useful. However, there are no feedback loops for error recovery, and the workflow for actually running tests, handling failures, or iterating is implicit rather than explicit. The verification checklist is a good start but lacks actionable commands. | 2 / 3 |
Progressive Disclosure | This is a monolithic wall of text with no references to external files and no bundle files to support it. All content is inline regardless of depth or specificity. Sections like 'Data Layer Testing', 'Testing Best Practices by Language Paradigm', and 'Regression Testing' could easily be separate referenced documents, keeping the main skill lean. | 1 / 3 |
Total | 6 / 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.
68ecb4a
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.