giuseppe-trisciuoglio avatar

Unit Test Bean Validation

Solid patterns for testing Jakarta Bean Validation constraints without spinning up Spring context. Covers the basics like @NotNull, @Email, @Min/@Max plus custom validators and cross-field validation. The setup is straightforward: build a Validator in @BeforeEach and assert against constraint violations. What I like here is the emphasis on testing both property paths and messages, not just violation counts. It includes parameterized test patterns and validation groups for conditional rules. The "most constraints ignore null by default" reminder in the pitfalls section will save you debugging time. Good for anyone writing DTOs with validation who wants fast unit tests instead of integration tests.

skills.sh installs
5K
GitHub stars
369
last updated
Aug 21, 2026

Install

$ npx -y skills add giuseppe-trisciuoglio/developer-kit --skill unit-test-bean-validation --agent claude-code

Installs into .claude/skills of the current project.

Files

Unit Testing Jakarta Bean Validation

Overview

This skill provides executable patterns for unit testing Jakarta Bean Validation annotations and custom validators using JUnit 5. Covers built-in constraints (@NotNull, @Email, @Min, @Max, @Size), custom @Constraint implementations, cross-field validation, and validation groups. Tests run in isolation without Spring context.

When to Use

  • Writing unit tests for Jakarta Bean Validation or JSR-380 constraints
  • Testing custom @Constraint validators and constraint violation messages
  • Testing bean validation logic in DTOs and request objects
  • Verifying cross-field validation (e.g., password matching)
  • Testing conditional validation with validation groups
  • Fast validation tests without Spring Boot context

Instructions

Sponsors

Details

Repository
github.com/giuseppe-trisciuoglio/developer-kit
Categories
Testing & QA, Documentation, Java & JVM

More from giuseppe-trisciuoglio/developer-kit

All 102
1giuseppe-trisciuoglio avatarunit-test-wiremock-rest-apigiuseppe-trisciuoglio/developer-kitProvides patterns for unit testing external REST APIs using WireMock. Stubs API responses, verifies request details, simulates failures (timeouts, 4xx/5xx error3.9Kskills.sh installs
2giuseppe-trisciuoglio avatarunit-test-application-eventsgiuseppe-trisciuoglio/developer-kitProvides patterns for unit testing Spring application events. Validates event publishing with ApplicationEventPublisher, tests @EventListener annotation behavio3.8Kskills.sh installs
3github avatarunit-test-vue-piniagithub/awesome-copilotWrite and review unit tests for Vue 3 + TypeScript + Vitest + Pinia codebases. Use when creating or updating tests for components, composables, and stores; mock1.8Kskills.sh installs
4bobmatnyc avatarwordpress-testing-qabobmatnyc/claude-mpm-skillsWordPress plugin and theme testing with PHPUnit integration tests, WP_Mock unit tests, PHPCS coding standards, and CI/CD workflows430skills.sh installs
5davila7 avatarplaywright-e2e-builderdavila7/claude-code-templatesPlan and build comprehensive Playwright E2E test suites with Page Object Model, authentication state persistence, custom fixtures, visual regression, and CI int245skills.sh installs
6giuseppe-trisciuoglio avatarunit-test-boundary-conditionsgiuseppe-trisciuoglio/developer-kitProvides edge case, corner case, boundary condition, and limit testing patterns for Java unit tests. Validates minimum/maximum values, null cases, empty collect4.2Kskills.sh installs