CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/jqwik-testing

Authors property-based tests for the JVM (Java + Kotlin) using jqwik - wires `@Property` test methods, `@ForAll` parameter annotations, `Arbitraries.integers/strings/etc` generators, custom `@Provide` arbitraries, and the JUnit 5 platform integration. Use when a JVM project needs PBT - alternative to JUnit-QuickCheck and Vavr's property-checking; tightly integrates with JUnit 5 so property tests run alongside conventional unit tests in the same Maven / Gradle pipeline.

75

Quality

94%

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

85%

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 well-structured, code-first tutorial that splits detail appropriately into a single real reference file and gives fully executable guidance at every step. The only weakness is conciseness: the pinned version number is repeated inline instead of being isolated to the reference's version note.

Suggestions

Replace the inline `1.9.3` pins in the Maven and Gradle snippets with a single "use the current version (see references/jqwik-reference.md)" note, or centralize the version in the reference file and reference it once, to avoid time-sensitive staleness bloating the body.

Trim the "(more than Hypothesis's 100 or proptest's 256)" comparison — it spends context budget on cross-library trivia Claude already knows.

Consider collapsing the two explanatory lines after Step 2's code ("The `@Property` annotation marks a property test ...") since the annotations are self-documenting to a jqwik user, keeping only the non-obvious 1000-defaults fact.

DimensionReasoningScore

Conciseness

Mostly lean and code-forward, but the pinned version `1.9.3` is repeated inline in Step 1 rather than confined to a version/deprecated section, and the Hypothesis/proptest comparison line spends tokens on context Claude already has — the time-sensitive version per the guideline pulls this below the lean anchor.

2 / 3

Actionability

Every step ships executable, copy-paste-ready code — Maven/Gradle deps, Java property examples, the configuration table, and `mvn test`/`gradle test` CI commands — with no pseudocode gaps.

3 / 3

Workflow Clarity

Eight clearly sequenced steps (Install → basic property → constraints → @Provide → catalog → statistics → config → CI) with running tests in Step 8 acting as the verification checkpoint; this is reference-style content rather than a destructive/batch operation, so the missing-feedback-loop cap does not apply.

3 / 3

Progressive Disclosure

The body is an overview that pushes lookup tables (full constraint-annotation table, half-bounded/sets/maps/subsetOf catalog, anti-patterns, limitations, version note) to the real one-level-deep `references/jqwik-reference.md`, with each pointer clearly signaled inline.

3 / 3

Total

11

/

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 third-person, concrete, and complete: it names specific jqwik APIs, states both what it does and when to use it with an explicit "Use when" trigger, and carves out a distinct JVM-only niche. It earns top marks on all four dimensions.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — "wires `@Property` test methods, `@ForAll` parameter annotations, `Arbitraries.integers/strings/etc` generators, custom `@Provide` arbitraries, and the JUnit 5 platform integration" — matching the multi-action anchor.

3 / 3

Completeness

Explicitly answers both what ("Authors property-based tests for the JVM (Java + Kotlin) using jqwik ...") and when ("Use when a JVM project needs PBT"), satisfying the explicit-trigger anchor rather than capping at 2.

3 / 3

Trigger Term Quality

Includes natural terms users would say for this domain — "property-based tests", "PBT", "jqwik", "JUnit-QuickCheck", "Vavr", "JUnit 5", "Maven / Gradle" — giving good coverage of the phrasing a user reaches for.

3 / 3

Distinctiveness Conflict Risk

Scoped tightly to JVM/Java/Kotlin + jqwik and names alternatives (JUnit-QuickCheck, Vavr), giving it a clear niche unlikely to conflict with the per-language sibling skills.

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