CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

cloudflare-workers-testing

Comprehensive testing guide for Cloudflare Workers using Vitest and @cloudflare/vitest-pool-workers. Use for test setup, binding mocks (D1/KV/R2/DO), integration tests, or encountering test failures, mock errors, coverage issues.

63

Quality

79%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./plugins/cloudflare-workers/skills/cloudflare-workers-testing/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

67%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body delivers highly actionable, Workers-specific guidance with a strong error-prevention structure and a well-signaled reference layer. Its main weaknesses are padding (generic testing best practices and triple-repeated rules), inline version-sensitive details, and three broken 'templates/' file pointers that don't resolve in the actual bundle.

Suggestions

Cut the generic testing advice Claude already knows (descriptive test names, group related tests, don't test implementation details) and deduplicate the wait-on-execution-context rule, which appears in Critical Rules #2, DON'T #2, and Error #4 — keep one canonical statement.

Fix or remove the broken 'templates/' references: templates/vitest-config.ts, templates/basic-test.ts, and templates/binding-mock-test.ts do not exist in the bundle, and the '/workers-debug' command is unverifiable.

Consolidate time-sensitive version/date details (Last Verified, version pins, 'New in 2025') into a single versions/migration section so they don't penalize the main content's efficiency.

DimensionReasoningScore

Conciseness

The Workers-specific content (cloudflare:test imports, waitOnExecutionContext, isolated storage, wrangler configPath) earns its tokens, but the body pads with material Claude already knows: generic best practices ('Use descriptive test names', 'Test error cases', 'Group related tests', 'Don't test implementation details'), a redundant Table of Contents, and the wait-on-execution-context rule repeated three times (Critical Rules #2, DON'T #2, Error #4). Version/date-sensitive details ('Last Verified: 2025-01-27', version pins, 'New in 2025') are sprinkled inline rather than isolated in a deprecated/versions section, which the guidelines penalize. This is 'mostly efficient but includes some unnecessary explanation or could be tightened' — clearly below the lean 4 anchor and above the padded 2 anchor.

3 / 5

Actionability

Nearly all guidance is copy-paste ready: complete vitest.config.ts, a full first test with imports, exact install commands ('bun add -D vitest @cloudflare/vitest-pool-workers'), per-error cause→fix blocks, and concrete per-binding test code. Minor gaps keep it from 5: 'bun test / # or bunx vitest' conflates Bun's own test runner with Vitest, use-case snippets rely on imports established earlier, and the queue-consumer mock batch omits required message shape details. It sits comfortably at 'mostly executable guidance; concrete code or commands with minor gaps'.

4 / 5

Workflow Clarity

The Quick Start is a clean numbered sequence (install → config → first test → run), and the 'Top 8 Errors Prevented' section provides cause→fix→prevention feedback loops covering the common failure modes, which functions as error recovery for the test-run cycle. It is not a 5 because validation is implicit rather than explicit (no 'confirm the test passes green' checkpoint or an integrated triage decision tree in the workflow itself), leaving 'most checkpoints present; minor validation gaps'.

4 / 5

Progressive Disclosure

The body is a well-structured overview with a dedicated 'When to Load References' section giving explicit per-file load conditions, and the five references/*.md files plus two scripts/*.sh exist and are one level deep with no nested references. However, scoring against the actual bundle: the three referenced 'templates/' files (templates/vitest-config.ts, templates/basic-test.ts, templates/binding-mock-test.ts) do not exist in the bundle, and the '/workers-debug' command pointer is unverifiable — broken navigation targets that keep this at 'good structure; references mostly clear; minor organization gaps' rather than the fully navigable 5 anchor.

4 / 5

Total

15

/

20

Passed

Description

83%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: concrete domain and tooling, an explicit 'Use for...' clause with realistic trigger conditions, and good natural-keyword coverage. Its only weaknesses are the 'Comprehensive' buzzword framing and a few missing synonyms such as 'unit tests'.

DimensionReasoningScore

Specificity

The description names the domain ('testing guide for Cloudflare Workers using Vitest and @cloudflare/vitest-pool-workers') and several concrete capability areas — 'test setup, binding mocks (D1/KV/R2/DO), integration tests' — with only minor gaps. It is not a 5 because 'Comprehensive testing guide' is padded framing rather than a concrete action, and the action list is topic-level rather than enumerating distinct specific actions like the 5-anchor example.

4 / 5

Completeness

It explicitly answers both: what ('Comprehensive testing guide for Cloudflare Workers using Vitest and @cloudflare/vitest-pool-workers') and when ('Use for test setup, binding mocks (D1/KV/R2/DO), integration tests, or encountering test failures, mock errors, coverage issues') with concrete trigger phrases. This matches the 5 anchor's structure of a clear what plus an explicit 'Use when...' with specific triggers; it is clearly above the 4 anchor where the 'when' is only serviceable.

5 / 5

Trigger Term Quality

Natural phrases a user would say are well covered: 'test setup', 'integration tests', 'test failures', 'mock errors', 'coverage issues', plus product names (Vitest, @cloudflare/vitest-pool-workers, D1/KV/R2/DO). A few natural synonyms are missing ('unit tests', 'wrangler', 'TDD'), so it does not reach the comprehensive-synonym coverage of the 5 anchor.

4 / 5

Distinctiveness Conflict Risk

The Cloudflare Workers + Vitest/vitest-pool-workers pairing carves a clear niche with minimal conflict against generic testing skills. Minor overlap risk remains with sibling Cloudflare plugin skills that also cover per-binding testing (cloudflare-d1, cloudflare-kv, etc.), matching the 4 anchor ('mostly distinct; minor overlap risk with closely related skills') rather than the 5 anchor's minimal-conflict profile.

4 / 5

Total

17

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (815 lines); consider splitting into references/ and linking

Warning

metadata_field

'metadata' should map string keys to string values

Warning

Total

14

/

16

Passed

Repository

secondsky/claude-skills

Path

plugins/cloudflare-workers/skills/cloudflare-workers-testing/SKILL.md

Reviewed

Table of Contents

Is this your skill?

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.