Cursor-rules-java 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. Part of the skills-for-java project
git clone https://github.com/jabrena/cursor-rules-java
T=$(mktemp -d) && git clone --depth=1 https://github.com/jabrena/cursor-rules-java "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/421-frameworks-quarkus-testing-unit-tests" ~/.claude/skills/jabrena-cursor-rules-java-421-frameworks-quarkus-testing-unit-tests && rm -rf "$T"
skills/421-frameworks-quarkus-testing-unit-tests/SKILL.mdQuarkus Unit Testing
Apply fast testing strategies for Quarkus: Mockito-first, QuarkusTest when CDI wiring matters.
What is covered in this Skill?
- Pure JUnit 5 + Mockito without container boot (@ExtendWith(MockitoExtension.class))
- @QuarkusTest with @InjectMock for full CDI bean replacement
- @InjectSpy for partial mocking — real bean wrapped as spy, specific methods overridden
- REST Assured for HTTP-level @QuarkusTest resource tests
- @ParameterizedTest with @CsvSource (inline data) and @MethodSource (complex objects)
- QuarkusTestProfile and @TestProfile for test-specific configuration overrides
- Naming conventions: *Test → Surefire (fast phase), *IT → Failsafe (verify phase)
- When to escalate to integration tests (
)@422
Scope: Apply recommendations based on the reference rules and good/bad code examples.
Constraints
Compile before test refactors; verify the full suite after.
- MANDATORY: Run
or./mvnw compile
before applying any changemvn compile - PREREQUISITE: Project must compile before applying test improvements
- SAFETY: If compilation fails, stop immediately
- BLOCKING CONDITION: Compilation errors must be resolved by the user before proceeding
- VERIFY: Run
or./mvnw clean verify
after applying improvementsmvn clean verify - BEFORE APPLYING: Read the reference for detailed rules and examples
When to use this skill
- 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
Reference
For detailed guidance, examples, and constraints, see references/421-frameworks-quarkus-testing-unit-tests.md.