CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/hypothesis-testing

Authors property-based tests in Python using Hypothesis - wires `@given` with `strategies` (`st.integers`, `st.text`, `st.lists`, `st.from_regex`, `st.composite`), uses `assume()` / `.filter()` for preconditions, configures via `@settings(max_examples=..., deadline=...)`, and exploits Hypothesis's automatic shrinking to find the falsifying example. Integrates with pytest fixtures + parametrize. Use when a Python project needs PBT to catch edge cases the example-based tests miss - bug clusters around input ranges / boundary values / interaction between fields.

80

Quality

100%

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

Overview
Quality
Evals
Security
Files

Quality

Content

100%

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

The body is a tight, executable walkthrough that progressively discloses detail to a real reference file, with sequenced steps and a genuine validate/lock-in feedback loop. It assumes Claude's intelligence throughout and never pads.

DimensionReasoningScore

Conciseness

Lean and efficient — it assumes Claude's competence, never explains what PBT or pytest is, and each step's prose earns its place beside the code. It does not pad with library background or basic concepts.

3 / 3

Actionability

Every step ships executable, copy-paste-ready code: strategies catalog, composite draw(), .filter()/assume(), @settings, round-trip, metamorphic, pytest fixture, and CI seed — none are pseudocode.

3 / 3

Workflow Clarity

A clearly sequenced Step 1–9 progression with a real feedback loop in Step 9 (copy the falsifying example into @example to lock in the regression) and a reproducibility checkpoint in Step 6/9 (derandomize/--hypothesis-seed).

3 / 3

Progressive Disclosure

The body is an overview that defers the full strategies catalog, @settings table, anti-patterns, and limitations to the one-level-deep, clearly signaled references/hypothesis-reference.md, which exists and matches the body's references.

3 / 3

Total

12

/

12

Passed

Description

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.

The description is specific, trigger-rich, and explicitly pairs a what-clause with a when-clause, hitting the top anchor on every dimension. It stays in third person and avoids vague fluff.

DimensionReasoningScore

Specificity

Lists multiple concrete, API-level actions: "wires `@given` with `strategies`", "uses `assume()` / `.filter()` for preconditions", "configures via `@settings(max_examples=..., deadline=...)`", and "exploits Hypothesis's automatic shrinking".

3 / 3

Completeness

Explicitly answers both what (authors PBT, wires @given with strategies, configures @settings) and when ("Use when a Python project needs PBT to catch edge cases the example-based tests miss").

3 / 3

Trigger Term Quality

Covers the natural terms a PBT user would actually say — "property-based tests", "Hypothesis", "PBT", "edge cases", "boundary values", "pytest fixtures" — rather than generic jargon.

3 / 3

Distinctiveness Conflict Risk

Occupies a clear niche (Hypothesis PBT in Python) with distinct triggers and is unlikely to overlap with sibling skills (fast-check, proptest, jqwik, quickcheck) named in the body.

3 / 3

Total

12

/

12

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.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Reviewed

Table of Contents