Cursor-rules-java 702-technologies-wiremock
Use when you need framework-agnostic WireMock guidance — stub design, JSON or programmatic mappings, precise request matching, response bodies and faults, classpath fixtures, isolation and reset between tests, verification of calls, dynamic ports and base URLs, and avoiding flaky stubs — without choosing Spring Boot, Quarkus, or Micronaut. 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/702-technologies-wiremock" ~/.claude/skills/jabrena-cursor-rules-java-702-technologies-wiremock && rm -rf "$T"
skills/702-technologies-wiremock/SKILL.mdWireMock best practices
Help teams use WireMock effectively for HTTP dependency stubbing with stable, isolated tests.
What is covered in this Skill?
- Stub isolation: per-test registration,
, avoiding leaked global stubsresetAll() - Request matching: method, path, headers, query, body patterns; when broad patterns are acceptable
- Responses: status, headers, JSON/XML bodies,
/ classpath fixtures, fault simulation (delays, errors)bodyFileName - Dynamic ports and propagating base URLs into the system under test
- Verification of outbound HTTP calls and debugging unmatched requests
- Clear delegation to framework integration-test skills for test class layout and extensions
Scope: Portable WireMock behavior only. For
, BaseIntegrationTest
WireMockExtension, and stack-specific integration tests, use @132-java-testing-integration-testing, @322-frameworks-spring-boot-testing-integration-tests, @422-frameworks-quarkus-testing-integration-tests, or @522-frameworks-micronaut-testing-integration-tests. For OpenAPI contract quality, use @701-technologies-openapi.
Constraints
Keep recommendations at the WireMock and HTTP-stub layer unless the user explicitly asks for framework integration. After editing this repository's XML sources, regenerate skills and verify the build.
- MANDATORY: Run
or./mvnw compile
before proposing Java or Maven changes in the same change setmvn compile - FRAMEWORK: Defer
/@SpringBootTest
/@QuarkusTest
and extension setup to@MicronautTest
or the matching@132-java-testing-integration-testing
/322
/422
integration-test skill522 - CONTRACTS: Defer OpenAPI document structure and linting to
@701-technologies-openapi - MANDATORY: Regenerate skills with
after editing skill or system-prompt XML in this repo./mvnw clean install -pl skills-generator - VERIFY: Run
or./mvnw clean verify
before promoting changesmvn clean verify
When to use this skill
- Design or review WireMock stubs (JSON mappings or Java DSL)
- Improve request matching, isolation, or reset strategy for HTTP mocks
- Add or fix verification of outbound HTTP calls to a WireMock server
- Debug flaky tests involving WireMock or unmatched request journals
- Stub external HTTP APIs in tests with stable fixtures and dynamic ports
Reference
For detailed guidance, examples, and constraints, see references/702-technologies-wiremock.md.