CtrlK
BlogDocsLog inGet started
Tessl Logo

421-frameworks-quarkus-testing-unit-tests

Use when you need to write fast unit tests for Quarkus applications — including pure tests with @ExtendWith(MockitoExtension.class), @QuarkusTest with @InjectMock for full CDI mock replacement, @InjectSpy for partial CDI bean mocking, REST Assured for resource-focused tests, @ParameterizedTest with @CsvSource / @MethodSource, QuarkusTestProfile for test-specific configuration overrides, and naming conventions (*Test → Surefire, *IT → Failsafe). For framework-agnostic Java use @131-java-testing-unit-testing. This should trigger for requests such as Add or improve unit tests in a Quarkus project; Reduce slow @QuarkusTest usage with Mockito-first tests; Add @InjectSpy partial mocking or QuarkusTestProfile configuration in Quarkus tests; Convert repeated test methods to @ParameterizedTest with @CsvSource or @MethodSource; Write fast pure unit tests for Quarkus services. Part of Plinth Toolkit

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

71%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-structured overview skill: clear coverage list, a gated workflow with compile-before/verify-after checkpoints, and proper progressive disclosure to a real, verified reference file. The main weakness is redundancy — the Constraints section repeats one rule four times and the 'When to use' section restates the description — plus a missing recovery step when post-change verification fails.

Suggestions

Consolidate the Constraints section to three bullets — compile before applying, stop and escalate to the user if compilation fails, run `clean verify` after — removing the PREREQUISITE/BLOCKING CONDITION restatements of the same rule.

Drop the 'When to use this skill' section: it duplicates the frontmatter description's trigger phrases verbatim and adds no body-specific information.

Add a short failure path to workflow step 4 (e.g., 'If `clean verify` fails, fix and re-run before reporting') to close the feedback loop after applying changes.

DimensionReasoningScore

Conciseness

The body is mostly lean and assumes Claude's Quarkus/JUnit knowledge, but the Constraints section states the same compile rule four ways ("MANDATORY: Run ./mvnw compile", "PREREQUISITE: Project must compile", "SAFETY: If compilation fails, stop immediately", "BLOCKING CONDITION: Compilation errors must be resolved by the user") and "When to use this skill" duplicates the description's trigger phrases verbatim. This is 'mostly efficient but includes some unnecessary explanation or could be tightened' rather than the noticeably padded anchor 2, since the redundancy is confined to two short sections.

3 / 5

Actionability

Gives concrete, executable commands ("Run `./mvnw compile` or `mvn compile`", "Run `./mvnw clean verify` or `mvn clean verify`") and names specific mechanisms (@InjectMock, @InjectSpy, QuarkusTestProfile, *Test/*IT conventions), deferring code patterns to the verified reference file. Not a 5 because the body itself contains no code examples for the common cases — everything pattern-level lives in the reference — and not a 3 because the commands given are directly runnable and the coverage list is concrete.

4 / 5

Workflow Clarity

The four-step workflow (read reference and assess context → gather scope → apply changes → run verification and report) is clearly sequenced, with an explicit compile-before gate ("MANDATORY: Run ./mvnw compile... before applying any change") and a verify-after step. Not a 5 because there is no feedback loop for verification failure — the workflow says "summarize what changed, what was verified" but not what to do if `clean verify` fails — leaving a minor validation gap at anchor 4.

4 / 5

Progressive Disclosure

The body is a concise overview with a single clearly-signaled, one-level-deep reference ([references/421-frameworks-quarkus-testing-unit-tests.md](references/421-frameworks-quarkus-testing-unit-tests.md)), which exists and holds the detailed rules and examples (verified on disk, 661 lines). The reference is surfaced three times (workflow step 1, "BEFORE APPLYING", and the Reference section) and no detail content that belongs in the reference is inlined. This matches the anchor for a clear overview with well-signaled, one-level-deep references.

5 / 5

Total

16

/

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: concrete capability list, explicit 'Use when' guidance with enumerated natural trigger phrases, and explicit routing boundaries to sibling skills. The only deduction is the rubric-mandated penalty for second-person voice ('Use when you need to...'), which costs it one point on specificity; rephrasing in third person ('Use when the user needs to...' or 'Use for requests such as...') would restore a perfect score.

DimensionReasoningScore

Specificity

The description lists many concrete, specific actions — "pure tests with @ExtendWith(MockitoExtension.class)", "@QuarkusTest with @InjectMock for full CDI mock replacement", "@InjectSpy for partial CDI bean mocking", "QuarkusTestProfile for test-specific configuration overrides", "naming conventions (*Test → Surefire, *IT → Failsafe)" — which on content alone matches the comprehensive anchor 5. However, it opens in second person ("Use when you need to write fast unit tests..."), and the rubric explicitly penalizes second-person voice by reducing the specificity score by 1, bringing it to 4.

4 / 5

Completeness

Both halves are explicit: the 'what' is "write fast unit tests for Quarkus applications — including pure tests with @ExtendWith(MockitoExtension.class)..." and the 'when' appears twice — "Use when you need to write fast unit tests for Quarkus applications" and "This should trigger for requests such as: Add or improve unit tests in a Quarkus project...". This clearly and explicitly answers both what AND when with concrete trigger phrases, matching anchor 5.

5 / 5

Trigger Term Quality

It enumerates natural request phrasings users would actually say — "Add or improve unit tests in a Quarkus project", "Reduce slow @QuarkusTest usage with Mockito-first tests", "Convert repeated test methods to @ParameterizedTest", "Write fast pure unit tests for Quarkus services" — plus the technical keywords (Quarkus, Mockito, REST Assured, @InjectSpy) users would mention. This gives comprehensive coverage of natural terms including variations, matching anchor 5; no penalty applies to this dimension.

5 / 5

Distinctiveness Conflict Risk

The niche is narrow (Quarkus unit testing specifically) and it actively routes away neighboring skills: "For framework-agnostic Java use @131-java-testing-unit-testing" and, in the body, escalation to @422 integration tests. Quarkus-specific annotations make accidental triggering by generic Java testing requests unlikely — a clear niche with distinct triggers, matching anchor 5.

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.

Repository
jabrena/plinth
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.