CtrlK
BlogDocsLog inGet started
Tessl Logo

testing-guide

Write tests for an FSH feature — xUnit + Shouldly + NSubstitute + AutoFixture, with naming and AAA conventions. Use when adding unit/handler/validator/entity tests. Full rules in .agents/rules/testing.md + integration-testing.md.

68

Quality

86%

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

SKILL.md
Quality
Evals
Security

Quality

Content

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

A well-crafted, lean skill body: it leads with the stack and explicit not-X alternatives, gives per-test-type templates, preserves project-specific gotchas, and defers bulk detail to referenced rule files. The main gaps are placeholder-templated code (fine for a generation convention) and no explicit run-to-verify loop tying the Run section back into the writing workflow.

DimensionReasoningScore

Conciseness

Every section is dense with project-specific knowledge and zero padding: naming conventions, mock patterns ("assert the specific token, not the default (NSubstitute fills optional params with default)"), and run commands. Nothing explains concepts Claude already knows; every token earns its place.

5 / 5

Actionability

Concrete code templates for handler, validator, and entity tests plus executable run commands ("dotnet test src/Tests/{X}.Tests") cover the common cases. The {Entity}/{X} placeholders keep it from being copy-paste ready, but they are deliberate templates rather than pseudocode — mostly executable with minor gaps.

4 / 5

Workflow Clarity

The body progresses logically by test type and ends with a Run section (unit, architecture, coverage) that functions as verification, plus an explicit guardrail ("Don't weaken these to make a change pass — fix the code"). It lacks an explicit write-then-run feedback loop statement, leaving minor validation gaps versus the 5 anchor.

4 / 5

Progressive Disclosure

The body acts as an overview with clearly signaled one-level-deep pointers ("Detailed conventions + integration-test gotchas live in .agents/rules/testing.md and .agents/rules/integration-testing.md"), and bulk detail is appropriately split out of SKILL.md. The pointers use bare repo paths rather than linked bundle files and no bundle directory exists, so navigation is good but not fully polished.

4 / 5

Total

17

/

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: it states a concrete capability with a precise stack, gives an explicit and specific 'Use when' trigger covering the main test types, and points to where full rules live. Only minor refinements — a few extra natural trigger synonyms — would push it to top marks.

DimensionReasoningScore

Specificity

Quotes like "Write tests for an FSH feature — xUnit + Shouldly + NSubstitute + AutoFixture, with naming and AAA conventions" name the domain, the exact stack, and concrete conventions. Minor gaps: it doesn't mention running tests or coverage, keeping it just short of the comprehensive anchor.

4 / 5

Completeness

The what is explicit ("Write tests for an FSH feature — xUnit + Shouldly + NSubstitute + AutoFixture, with naming and AAA conventions") and the when is an explicit concrete trigger ("Use when adding unit/handler/validator/entity tests"), with a pointer to full rules. Both are clearly and explicitly answered with concrete trigger phrases.

5 / 5

Trigger Term Quality

"Use when adding unit/handler/validator/entity tests" plus stack names (xUnit, NSubstitute) give good natural-keyword coverage users would actually say. A few common variations ("test suite", "regression tests", "integration tests") are missing, so it falls between the good (4) and comprehensive (5) anchors.

4 / 5

Distinctiveness Conflict Risk

Scoping to "an FSH feature" and a specific stack (NSubstitute not Moq, Shouldly not FluentAssertions) carves a clear niche. The broad "write tests" trigger could still overlap with a generic testing skill, so minor overlap risk remains.

4 / 5

Total

17

/

20

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 — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
fullstackhero/dotnet-starter-kit
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.