CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/restassured-testing

Strengthens and speeds up JVM API test suites - assertions so loose that an empty `200 OK` passed for three days, a 220-test suite spending fourteen minutes mostly waiting on sequential HTTP calls, or endpoints exercised through a hand-rolled JDK HTTP client with JSON parsed by hand. Authors REST Assured (Java) tests in the given().when().then() BDD-style DSL: status code and JSON / XML path assertions, authentication (Basic, OAuth2, API key), Maven / Gradle dependencies, JUnit 5 execution, and Surefire / JaCoCo reports for CI gating. Use when the project is on the JVM and its API tests miss real assertions, run too slowly, or are written by hand.

72

Quality

90%

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

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 strong, code-first authoring guide: executable end-to-end examples from dependencies to CI, dense anti-pattern guidance, and coherent sequencing. Weaknesses are minor — a few sentences of DSL re-explanation, pinned versions that will rot, no explicit local-run validation step before CI, and a 45-line CI workflow inlined that could live in a reference file.

Suggestions

Add a local verification checkpoint to the authoring flow (e.g., "Run mvn -B verify locally and confirm tests appear under target/failsafe-reports/ before opening the PR") to close the author → CI feedback loop.

Move the full CI workflow YAML to a references/ file (e.g., references/ci-integration.md) and keep a minimal inline snippet, keeping SKILL.md as the overview.

Cut the given/when/then role explanation, collapse the repeated "(Per [restassured-usage][usage].)" citations into a single References note, and flag the pinned versions (6.0.0, actions/checkout@v5) as time-sensitive so they are easy to spot and refresh.

DimensionReasoningScore

Conciseness

Mostly lean and code-first: dense Anti-patterns and Limitations tables, no background explainer of what API testing is. A few things could be trimmed: "given() configures the request (params, headers, body, auth); when() issues the HTTP verb; then() asserts the response" re-explains DSL mechanics Claude already knows, the citation line "(Per [restassured-usage][usage].)" is repeated after five snippets, and pinned time-sensitive versions ("6.0.0", "actions/checkout@v5") sit outside any old-patterns section, which the version-number guideline penalizes. This sits above anchor 3 (only some unnecessary explanation) but below anchor 5's every-token-earns-its-place.

4 / 5

Actionability

Fully executable end-to-end: complete Maven and Gradle dependency snippets, canonical static imports, working assertion snippets for status code, JSON path, and XML path, all three auth styles, a full copy-paste JUnit 5 test class (OrdersApiIT with @BeforeAll baseURI setup and env-var token), and a complete GitHub Actions workflow including "mvn -B verify -Dfailsafe.includes='**/*IT.java'". Common cases are covered copy-paste ready, matching anchor 5 rather than anchor 4's 'minor gaps'.

5 / 5

Workflow Clarity

The install → author → authenticate → CI sequence is coherent, and the Anti-patterns table doubles as a checklist ("Strict naming: `*Test.java` for unit (`mvn test`); `*IT.java` for integration (`mvn verify`)"; "Always assert at least one body field"). It stays below anchor 5 because there is no explicit local validation checkpoint or feedback loop between authoring and CI (e.g., run "mvn -B verify" and check failsafe reports before pushing), and above anchor 3 because the sequence and most checkpoints are present. No destructive or batch operations, so the validation cap does not apply.

4 / 5

Progressive Disclosure

Well-organized single-file structure with clear section headers and clearly signaled one-level-deep external links (reference-style [readme] and [usage] definitions resolved in the References section). No bundle files exist (references/, scripts/, assets/ are absent), and at ~300 lines everything is navigable — though the 45-line CI workflow YAML is the kind of material that could be split into a references/ file. Anchor 4's "good structure; most content appropriately placed; minor organization gaps" fits better than anchor 5's ideal overview-plus-split-files shape.

4 / 5

Total

17

/

20

Passed

Description

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

An excellent description: explicit what and when with concrete trigger phrases, comprehensive concrete capabilities, natural trigger vocabulary, and a clearly staked-out JVM niche. The only deductions are the lengthy failure-scenario narrative up front and a mild 'speeds up' over-claim relative to the skill's own no-native-parallelism limitation.

Suggestions

Trim the opening scenario narrative (the empty 200 OK, the 220-test suite, the hand-rolled JDK client) to one short symptom clause and lead with the capability list — the three illustrative failure stories pad the description without adding proportional trigger value.

Soften "Strengthens and speeds up JVM API test suites" to what the skill directly provides (DSL authoring plus JUnit 5-level parallel execution), since the body itself states REST Assured has no native parallelism.

DimensionReasoningScore

Specificity

The action list is comprehensive and concrete — "Authors REST Assured (Java) tests in the given().when().then() BDD-style DSL: status code and JSON / XML path assertions, authentication (Basic, OAuth2, API key), Maven / Gradle dependencies, JUnit 5 execution, and Surefire / JaCoCo reports for CI gating" — matching anchor 5's coverage. However, the ~40-word opening ("a 220-test suite spending fourteen minutes mostly waiting on sequential HTTP calls") is illustrative narrative rather than capability, and "Strengthens and speeds up" mildly over-claims given the body's stated "No native parallelism" limitation, which the anti-fluff/anti-over-claim guidelines penalize. It is far above anchor 3 ("1-2 concrete actions") but just below the top anchor, so 4.

4 / 5

Completeness

Both halves are explicit: a clear what ("Authors REST Assured (Java) tests in the given().when().then() BDD-style DSL: status code and JSON / XML path assertions, authentication (Basic, OAuth2, API key), Maven / Gradle dependencies, JUnit 5 execution, and Surefire / JaCoCo reports for CI gating") and an explicit when with concrete trigger phrases ("Use when the project is on the JVM and its API tests miss real assertions, run too slowly, or are written by hand"). This is exactly anchor 5's shape; anchor 4 would require the 'when' to be less explicit.

5 / 5

Trigger Term Quality

It contains the natural terms a user would actually say when needing this skill: "REST Assured", "JVM", "API test suites", "Java", "Maven / Gradle", "JUnit 5", "status code", "assertions", and symptom phrasings like "API tests miss real assertions, run too slowly, or are written by hand". Coverage is comprehensive (no file extensions are relevant to this tool), so it fits anchor 5 rather than anchor 4's "a few natural terms missing".

5 / 5

Distinctiveness Conflict Risk

A clear niche pinned by the named tool and scope: "Use when the project is on the JVM" plus REST Assured-specific triggers, with minimal conflict risk against sibling API-testing skills targeting non-JVM stacks (postman-collections is JSON-driven, tavern-testing is Python). The only marginal adjacency is a cross-platform DSL like Karate that can also run on the JVM, which is not enough to drop below anchor 5's "clear niche with distinct triggers".

5 / 5

Total

19

/

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.

Reviewed

Table of Contents