CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

perl-testing

Perl testing patterns using Test2::V0, Test::More, prove runner, mocking, coverage with Devel::Cover, and TDD methodology.

Quality

75%

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 ./skills/perl-testing/SKILL.md

The canonical home for this skill is perl-testing in affaan-m/ECC

SKILL.md
Quality
Evals
Security

Quality

Content

71%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 is highly actionable, with executable, copy-paste-ready Perl and shell commands covering assertions, deep comparison, mocking, coverage, and CI, and the TDD workflow is clearly sequenced with a verification step. It loses points on token efficiency by re-teaching Test::More basics Claude already knows and including motivational padding, and on progressive disclosure by inlining everything into one long file instead of splitting reference material into bundle files. Trimming the known-material sections and moving the legacy Test::More and coverage guides into references/ would raise both dimensions without losing value.

Suggestions

Cut sections that re-teach known material — the basic Test::More assertions (is/ok/like/is_deeply), the "Why Test2?" bullet list, and the closing "Remember: Tests are your safety net..." line — and drop or shrink the Quick Reference table that duplicates examples already shown inline.

Move reference-grade material into bundle files (e.g., references/test-more-legacy.md and references/coverage.md) and keep SKILL.md as a lean overview with clearly signaled one-level-deep links, per the progressive_disclosure rubric.

Add an explicit error-recovery feedback loop to the TDD workflow, e.g., "If prove fails, fix the minimal implementation and re-run before moving to REFACTOR," to reach anchor 5 on workflow clarity.

DimensionReasoningScore

Conciseness

The bulk is dense, reference-grade code, but several sections re-teach what Claude already knows ("The standard Perl testing module — widely used, ships with core", the "Why Test2?" bullet list, basic is/ok/like assertions), the Quick Reference table duplicates already-shown examples, and the closing "Remember: Tests are your safety net..." line is pure padding. It is noticeably tighter than anchor 2's padded tutorial prose, but the redundant sections keep it from anchor 4.

3 / 5

Actionability

Nearly every section provides copy-paste-ready, executable guidance: complete test files (use v5.36; use Test2::V0; ... done_testing), concrete prove invocations, a .proverc, a CI coverage-threshold one-liner, and specific Test::MockModule patterns with a flagged anti-pattern. This matches anchor 5 — the only gaps (prose-only TestHelper guidance, the unshown HTTP::Tiny mock) are negligible.

5 / 5

Workflow Clarity

The TDD workflow is explicitly sequenced ("Step 1: RED — Write a failing test", "Step 2: GREEN — Write minimal implementation", "Step 3: REFACTOR") with per-step code and the verify command "Run: prove -lv t/unit/calculator.t", plus the checkpoint "All tests must pass before merge". It falls short of anchor 5 because there is no explicit fail→fix→rerun error-recovery loop, but checkpoints are present, keeping it above anchor 3.

4 / 5

Progressive Disclosure

This is a single ~475-line SKILL.md with no bundle files (references/, scripts/, assets/ are all absent) and no offloaded references; section headers are clear (ruling out anchor 2), but reference-grade material that belongs in separate files — the legacy Test::More guide, the Devel::Cover command guide, the Quick Reference table — is fully inlined, leaving SKILL.md far from an overview. This matches anchor 3: some structure, but content that should be separate is inline.

3 / 5

Total

15

/

20

Passed

Description

70%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.

The description is specific, tool-rich, and highly distinct, naming the exact frameworks and utilities of the Perl testing ecosystem. Its main weakness is completeness: it states only "what" and entirely omits "when to use it" trigger guidance, which caps that dimension at 3. Adding a "Use when..." clause with natural trigger phrases would lift the description to top-tier with minimal editing.

Suggestions

Append an explicit trigger clause, e.g., "Use when writing, running, or debugging Perl tests, migrating Test::More suites to Test2, or checking test coverage with Devel::Cover."

Add natural keyword variations users actually say — "unit tests", ".t files", "TAP" — to broaden trigger-term coverage toward anchor 5.

DimensionReasoningScore

Specificity

The description lists several specific capabilities — "mocking", "coverage with Devel::Cover", "TDD methodology", "prove runner" — tied to named tools, going beyond anchor 3's 1-2 concrete actions. It falls short of anchor 5 because everything is phrased as noun-phrase topics with no action verbs stating what the skill actually does with these tools.

4 / 5

Completeness

It clearly answers "what" ("Perl testing patterns using Test2::V0, Test::More, prove runner, mocking, coverage with Devel::Cover, and TDD methodology") but contains no "Use when..." clause or any equivalent explicit trigger guidance for "when". Per the rubric guideline, a missing trigger clause caps completeness at 3, which also matches the anchor 3 example of a clear "what" with no "when".

3 / 5

Trigger Term Quality

It includes natural terms a Perl developer would actually say — "Perl testing", "Test2::V0", "Test::More", "prove", "mocking", "coverage", "TDD" — matching anchor 4's "good keyword coverage; a few natural terms missing". It is not anchor 5 because common variations like "unit tests", ".t files", or "TAP" are absent.

4 / 5

Distinctiveness Conflict Risk

The description carves a clear niche via Perl-only tooling — "Test2::V0", "Test::More", "prove runner", "Devel::Cover" — so it is unlikely to trigger for non-Perl testing or general Perl skills. This matches anchor 5's "clear niche with distinct triggers; minimal conflict risk"; anchor 4's "minor overlap risk" would understate how unambiguously Perl-specific these triggers are.

5 / 5

Total

16

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

valeriibeck-star/claude-skills

Path

skills/perl-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.