Implement comprehensive testing strategies using Jest, Vitest, and Testing Library for unit tests, integration tests, and end-to-end testing with mocking, fixtures, and test-driven development. Use when writing JavaScript/TypeScript tests, setting up test infrastructure, or implementing TDD/BDD workflows.
76
71%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./tests/ext_conformance/artifacts/agents-wshobson/javascript-typescript/skills/javascript-testing-patterns/SKILL.mdQuality
Discovery
100%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 strong skill description that clearly articulates specific capabilities (testing frameworks, test types, techniques), includes abundant natural trigger terms that developers would use, and explicitly states both what the skill does and when to use it. The description is concise yet comprehensive, covering the domain thoroughly without unnecessary verbosity.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions and tools: 'Jest, Vitest, and Testing Library for unit tests, integration tests, and end-to-end testing with mocking, fixtures, and test-driven development.' This covers specific frameworks, test types, and techniques. | 3 / 3 |
Completeness | Clearly answers both 'what' (implement testing strategies using specific tools for specific test types) and 'when' (explicit 'Use when writing JavaScript/TypeScript tests, setting up test infrastructure, or implementing TDD/BDD workflows'). | 3 / 3 |
Trigger Term Quality | Includes strong natural keywords users would say: 'Jest', 'Vitest', 'Testing Library', 'unit tests', 'integration tests', 'end-to-end testing', 'mocking', 'fixtures', 'TDD', 'BDD', 'JavaScript/TypeScript tests', 'test infrastructure'. These cover a wide range of terms a developer would naturally use. | 3 / 3 |
Distinctiveness Conflict Risk | Clearly scoped to JavaScript/TypeScript testing with specific frameworks (Jest, Vitest, Testing Library) and methodologies (TDD/BDD). This is a well-defined niche that is unlikely to conflict with other skills like general coding, deployment, or non-JS testing skills. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
42%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill is a comprehensive but excessively verbose testing reference that dumps every common testing pattern inline rather than being a concise, well-structured guide. While the code examples are high quality and executable, the content includes many trivial patterns Claude already knows (calculator tests, basic CRUD, simple hooks) and fails to organize its substantial length into a navigable structure with progressive disclosure. It reads more like a tutorial blog post than an efficient skill document.
Suggestions
Reduce content by 60-70%: remove trivial examples (calculator, basic CRUD, useCounter) and focus on non-obvious patterns like complex mocking, DI testing, integration test setup, and timer testing that Claude is less likely to know.
Split into multiple files: create separate references for mocking-patterns.md, integration-testing.md, frontend-testing.md, and fixtures.md, with SKILL.md serving as a concise overview with links.
Add a clear TDD workflow section with sequenced steps and validation checkpoints (e.g., 1. Write failing test → 2. Run and verify red → 3. Implement minimal code → 4. Run and verify green → 5. Refactor → 6. Run full suite).
Remove the 15-item best practices list—these are generic testing principles Claude already knows—and replace with project-specific decision guidance (e.g., when to choose Jest vs Vitest, when to use snapshot tests vs assertion tests).
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Extremely verbose at ~700+ lines. Includes trivial patterns Claude already knows (testing pure functions like add/divide, basic class CRUD tests, simple hook tests). The calculator example, UserService CRUD, and useCounter hook are textbook examples that add no novel value. The 15-item best practices list restates common knowledge. | 1 / 3 |
Actionability | All code examples are fully executable TypeScript with proper imports, complete test files, and realistic patterns. Config files for Jest and Vitest are copy-paste ready, and mocking patterns show real-world usage with nodemailer, fetch, and dependency injection. | 3 / 3 |
Workflow Clarity | The skill presents patterns but lacks a clear workflow for setting up testing from scratch or a TDD cycle. There's no sequenced process with validation checkpoints—it's a reference catalog of patterns rather than a guided workflow. The integration test section shows setup/teardown but doesn't guide through the overall testing strategy decision process. | 2 / 3 |
Progressive Disclosure | Monolithic wall of text with everything inline. At this length, mocking patterns, integration testing, frontend testing, and fixtures should each be in separate referenced files. No content is split out despite the document being extremely long and covering many distinct topics. | 1 / 3 |
Total | 7 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (1022 lines); consider splitting into references/ and linking | Warning |
Total | 10 / 11 Passed | |
6e3d68c
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.