unit-test-config-properties

Installation
Summary

Test Spring @ConfigurationProperties bindings, validation, and type conversions without full context startup.

  • Use ApplicationContextRunner to test property binding in isolation, covering simple properties, nested structures, collections, and type conversions
  • Verify validation constraints with @Validated annotations, ensuring invalid values fail appropriately and valid configurations pass
  • Test default values, profile-specific configurations, and property name mapping (kebab-case to camelCase conversion)
  • Covers Duration, DataSize, List, Map, and Charset type conversions with practical examples for each
SKILL.md

Unit Testing Configuration Properties and Profiles

Overview

This skill provides patterns for unit testing @ConfigurationProperties bindings, environment-specific configurations, and property validation using JUnit 5. Covers testing property name mapping, type conversions, validation constraints, nested structures, and profile-specific configurations without full Spring context startup.

Key validation checkpoints:

  • Property prefix matches between @ConfigurationProperties and test properties
  • Validation triggers on @Validated classes with invalid values
  • Type conversions work for Duration, DataSize, collections, and maps

When to Use

  • Testing @ConfigurationProperties property binding
  • Testing property name mapping and type conversions
  • Validating configuration with @NotBlank, @Min, @Max, @Email constraints
  • Testing environment-specific configurations (dev, prod)
  • Testing nested property structures and collections
  • Verifying default values when properties are not specified
Related skills

More from giuseppe-trisciuoglio/developer-kit

Installs
869
GitHub Stars
246
First Seen
Feb 3, 2026