CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

pytest

Pytest testing patterns for Python. Trigger: When writing Python tests - fixtures, mocking, markers.

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 ./curated/pytest/SKILL.md
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 lean, highly actionable pytest patterns reference — every section is executable code and the common cases are covered. Its main weaknesses are that much of the material duplicates knowledge Claude already has and there is no workflow guidance for applying the patterns to a real codebase.

DimensionReasoningScore

Conciseness

The body is almost entirely lean code examples with no hand-holding prose — no 'what is pytest' explanation, no library comparisons. However, much of it restates standard pytest knowledge Claude already has (basic fixture syntax, patch/MagicMock, parametrize), and the trailing '## Keywords' section is filler duplicating the description, so not every token earns its place.

4 / 5

Actionability

Every example is complete, executable pytest code and every command in the Commands section is copy-paste ready. The examples cover the common cases: fixtures with teardown and scopes, conftest sharing, patch/mock with assertion, parametrize tables, markers, async tests, and run/filter commands.

5 / 5

Workflow Clarity

As a single-purpose pattern reference with unambiguous, well-separated sections, it avoids the validation cap and reads clearly. It falls short of 5 because there is no sequencing for the real-world task (configure markers in pytest.ini/pyproject, write tests, run with -x/-k/-m) and no guidance on when to choose each pattern.

4 / 5

Progressive Disclosure

No bundle files exist and the body has no external references; content is organized into clear, well-labeled sections appropriate to a patterns reference. It does not reach 5 because at ~175 lines everything is inline with no pointers to deeper material, and content such as the full markers/commands reference could arguably live in a separate file.

4 / 5

Total

17

/

20

Passed

Description

65%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 has an explicit and well-formed trigger clause with natural keywords, but the capability statement is a bare domain label. Naming concrete actions (fixtures, mocking, parametrize, markers as things this skill helps do) would lift both specificity and completeness.

Suggestions

Replace the vague 'Pytest testing patterns for Python' with concrete actions, e.g. 'Write pytest tests with fixtures, mocking, parametrize, and custom markers' — this converts topic nouns into capabilities and raises specificity.

Broaden trigger coverage with common user phrasings such as 'unit tests', 'test suite', 'conftest', or 'parametrize' to reach comprehensive natural-term coverage.

Narrow the trigger slightly (e.g. 'When writing or running tests with pytest') to reduce overlap risk with generic Python-testing or unittest skills.

DimensionReasoningScore

Specificity

The description names the domain ("Pytest testing patterns for Python") but contains no concrete actions — 'fixtures, mocking, markers' are topic nouns, not capabilities like 'write fixtures' or 'mock services'. This matches the anchor 'names the domain but actions are minimal or generic'; it falls short of anchor 3, which requires 1-2 concrete actions.

2 / 5

Completeness

An explicit "Trigger: When writing Python tests - fixtures, mocking, markers" clause clearly answers 'when', but the 'what' ("Pytest testing patterns for Python") is a domain label without concrete capabilities. Both are present and the 'when' is explicit, yet the vague 'what' keeps it below anchor 5.

4 / 5

Trigger Term Quality

"Pytest", "Python tests", "fixtures", "mocking", and "markers" are natural phrases users would say when needing this skill. Coverage is good but misses common variations such as 'unit tests', 'test suite', 'conftest', or 'parametrize', keeping it below anchor 5.

4 / 5

Distinctiveness Conflict Risk

Naming the specific tool 'pytest' gives it a clear niche, but the broad trigger "When writing Python tests" could overlap with a generic Python-testing or unittest skill. Mostly distinct with minor overlap risk — anchor 4 rather than 5's 'minimal conflict risk'.

4 / 5

Total

14

/

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

Gentleman-Programming/Gentleman-Skills

Path

curated/pytest/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.