From ffc822d8529616b63708ce0e704740d87be823ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Nicoll?= Date: Thu, 23 Oct 2025 11:10:44 +0200 Subject: [PATCH] Revisit metrics and tracing test properties This commit renames 'spring.test.metrics.auto-configure' and 'spring.test.tracing.auto-configure' for consistency with the non-test properties. It also adds a configuration metadata entry for 'spring.test.observability.auto-configure' that's superseded by these two properties. Closes gh-47776 --- .../META-INF/spring-configuration-metadata.json | 7 +++++++ .../autoconfigure/MetricsContextCustomizerFactory.java | 3 +-- .../META-INF/spring-configuration-metadata.json | 4 ++-- .../MetricsContextCustomizerFactoryTests.java | 10 +++++----- .../autoconfigure/TracingContextCustomizerFactory.java | 3 +-- .../META-INF/spring-configuration-metadata.json | 4 ++-- .../TracingContextCustomizerFactoryTests.java | 8 ++++---- 7 files changed, 22 insertions(+), 17 deletions(-) diff --git a/core/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring-configuration-metadata.json b/core/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring-configuration-metadata.json index 7d6486d28e1..3670d8af1ef 100644 --- a/core/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring-configuration-metadata.json +++ b/core/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring-configuration-metadata.json @@ -6,6 +6,13 @@ "description": "Whether auto-configuration of JSON testers is enabled.", "defaultValue": "true" }, + { + "name": "spring.test.observability.auto-configure", + "deprecation": { + "reason": "Superseded by 'spring.test.metrics.export' and 'spring.test.tracing.export'.", + "level": "error" + } + }, { "name": "spring.test.print-condition-evaluation-report", "type": "java.lang.Boolean", diff --git a/module/spring-boot-micrometer-metrics-test/src/main/java/org/springframework/boot/micrometer/metrics/test/autoconfigure/MetricsContextCustomizerFactory.java b/module/spring-boot-micrometer-metrics-test/src/main/java/org/springframework/boot/micrometer/metrics/test/autoconfigure/MetricsContextCustomizerFactory.java index 14e0c773e05..af9efc3ceb7 100644 --- a/module/spring-boot-micrometer-metrics-test/src/main/java/org/springframework/boot/micrometer/metrics/test/autoconfigure/MetricsContextCustomizerFactory.java +++ b/module/spring-boot-micrometer-metrics-test/src/main/java/org/springframework/boot/micrometer/metrics/test/autoconfigure/MetricsContextCustomizerFactory.java @@ -41,8 +41,7 @@ import org.springframework.test.context.TestContextAnnotationUtils; */ class MetricsContextCustomizerFactory implements ContextCustomizerFactory { - // TODO spring.test.metrics.export? - static final String AUTO_CONFIGURE_PROPERTY = "spring.test.metrics.auto-configure"; + static final String AUTO_CONFIGURE_PROPERTY = "spring.test.metrics.export"; @Override public ContextCustomizer createContextCustomizer(Class testClass, diff --git a/module/spring-boot-micrometer-metrics-test/src/main/resources/META-INF/spring-configuration-metadata.json b/module/spring-boot-micrometer-metrics-test/src/main/resources/META-INF/spring-configuration-metadata.json index a6c1795d0d7..35a5c3e9f1c 100644 --- a/module/spring-boot-micrometer-metrics-test/src/main/resources/META-INF/spring-configuration-metadata.json +++ b/module/spring-boot-micrometer-metrics-test/src/main/resources/META-INF/spring-configuration-metadata.json @@ -1,9 +1,9 @@ { "properties": [ { - "name": "spring.test.metrics.auto-configure", + "name": "spring.test.metrics.export", "type": "java.lang.Boolean", - "description": "Whether metrics should be auto-configured in tests.", + "description": "Whether metrics export should be auto-configured in tests.", "defaultValue": false } ] diff --git a/module/spring-boot-micrometer-metrics-test/src/test/java/org/springframework/boot/micrometer/metrics/test/autoconfigure/MetricsContextCustomizerFactoryTests.java b/module/spring-boot-micrometer-metrics-test/src/test/java/org/springframework/boot/micrometer/metrics/test/autoconfigure/MetricsContextCustomizerFactoryTests.java index c612055ef9b..150d1019a7d 100644 --- a/module/spring-boot-micrometer-metrics-test/src/test/java/org/springframework/boot/micrometer/metrics/test/autoconfigure/MetricsContextCustomizerFactoryTests.java +++ b/module/spring-boot-micrometer-metrics-test/src/test/java/org/springframework/boot/micrometer/metrics/test/autoconfigure/MetricsContextCustomizerFactoryTests.java @@ -94,18 +94,18 @@ class MetricsContextCustomizerFactoryTests { ContextCustomizer customizer = createContextCustomizer(NoAnnotation.class); ConfigurableApplicationContext context = new GenericApplicationContext(); MockEnvironment environment = new MockEnvironment(); - environment.setProperty("spring.test.metrics.auto-configure", "true"); + environment.setProperty("spring.test.metrics.export", "true"); context.setEnvironment(environment); applyCustomizerToContext(customizer, context); assertThatMetricsAreEnabled(context); } @Test - void metricsCanBeDisabledViaProperty() { + void metricsExportCanBeDisabledViaProperty() { ContextCustomizer customizer = createContextCustomizer(NoAnnotation.class); ConfigurableApplicationContext context = new GenericApplicationContext(); MockEnvironment environment = new MockEnvironment(); - environment.setProperty("spring.test.metrics.auto-configure", "false"); + environment.setProperty("spring.test.metrics.export", "false"); context.setEnvironment(environment); applyCustomizerToContext(customizer, context); assertThatMetricsAreDisabled(context); @@ -116,7 +116,7 @@ class MetricsContextCustomizerFactoryTests { ContextCustomizer customizer = createContextCustomizer(MetricsExportEnabled.class); ConfigurableApplicationContext context = new GenericApplicationContext(); MockEnvironment environment = new MockEnvironment(); - environment.setProperty("spring.test.metrics.auto-configure", "false"); + environment.setProperty("spring.test.metrics.export", "false"); context.setEnvironment(environment); applyCustomizerToContext(customizer, context); assertThatMetricsAreEnabled(context); @@ -127,7 +127,7 @@ class MetricsContextCustomizerFactoryTests { ContextCustomizer customizer = createContextCustomizer(MetricsExportDisabled.class); ConfigurableApplicationContext context = new GenericApplicationContext(); MockEnvironment environment = new MockEnvironment(); - environment.setProperty("spring.test.metrics.auto-configure", "true"); + environment.setProperty("spring.test.metrics.export", "true"); context.setEnvironment(environment); applyCustomizerToContext(customizer, context); assertThatMetricsAreDisabled(context); diff --git a/module/spring-boot-micrometer-tracing-test/src/main/java/org/springframework/boot/micrometer/tracing/test/autoconfigure/TracingContextCustomizerFactory.java b/module/spring-boot-micrometer-tracing-test/src/main/java/org/springframework/boot/micrometer/tracing/test/autoconfigure/TracingContextCustomizerFactory.java index 8ec991b5a80..e181ea36654 100644 --- a/module/spring-boot-micrometer-tracing-test/src/main/java/org/springframework/boot/micrometer/tracing/test/autoconfigure/TracingContextCustomizerFactory.java +++ b/module/spring-boot-micrometer-tracing-test/src/main/java/org/springframework/boot/micrometer/tracing/test/autoconfigure/TracingContextCustomizerFactory.java @@ -41,8 +41,7 @@ import org.springframework.test.context.TestContextAnnotationUtils; */ class TracingContextCustomizerFactory implements ContextCustomizerFactory { - // TODO spring.test.tracing.export? - static final String AUTO_CONFIGURE_PROPERTY = "spring.test.tracing.auto-configure"; + static final String AUTO_CONFIGURE_PROPERTY = "spring.test.tracing.export"; @Override public ContextCustomizer createContextCustomizer(Class testClass, diff --git a/module/spring-boot-micrometer-tracing-test/src/main/resources/META-INF/spring-configuration-metadata.json b/module/spring-boot-micrometer-tracing-test/src/main/resources/META-INF/spring-configuration-metadata.json index 54334d8c829..eec6c6af935 100644 --- a/module/spring-boot-micrometer-tracing-test/src/main/resources/META-INF/spring-configuration-metadata.json +++ b/module/spring-boot-micrometer-tracing-test/src/main/resources/META-INF/spring-configuration-metadata.json @@ -1,9 +1,9 @@ { "properties": [ { - "name": "spring.test.tracing.auto-configure", + "name": "spring.test.tracing.export", "type": "java.lang.Boolean", - "description": "Whether tracing should be auto-configured in tests.", + "description": "Whether tracing export should be auto-configured in tests.", "defaultValue": false } ] diff --git a/module/spring-boot-micrometer-tracing-test/src/test/java/org/springframework/boot/micrometer/tracing/test/autoconfigure/TracingContextCustomizerFactoryTests.java b/module/spring-boot-micrometer-tracing-test/src/test/java/org/springframework/boot/micrometer/tracing/test/autoconfigure/TracingContextCustomizerFactoryTests.java index 4cc74225e9e..e3fc5c42a48 100644 --- a/module/spring-boot-micrometer-tracing-test/src/test/java/org/springframework/boot/micrometer/tracing/test/autoconfigure/TracingContextCustomizerFactoryTests.java +++ b/module/spring-boot-micrometer-tracing-test/src/test/java/org/springframework/boot/micrometer/tracing/test/autoconfigure/TracingContextCustomizerFactoryTests.java @@ -93,7 +93,7 @@ class TracingContextCustomizerFactoryTests { ContextCustomizer customizer = createContextCustomizer(NoAnnotation.class); ConfigurableApplicationContext context = new GenericApplicationContext(); MockEnvironment environment = new MockEnvironment(); - environment.setProperty("spring.test.tracing.auto-configure", "true"); + environment.setProperty("spring.test.tracing.export", "true"); context.setEnvironment(environment); applyCustomizerToContext(customizer, context); assertThatTracingExportIsEnabled(context); @@ -104,7 +104,7 @@ class TracingContextCustomizerFactoryTests { ContextCustomizer customizer = createContextCustomizer(NoAnnotation.class); ConfigurableApplicationContext context = new GenericApplicationContext(); MockEnvironment environment = new MockEnvironment(); - environment.setProperty("spring.test.tracing.auto-configure", "false"); + environment.setProperty("spring.test.tracing.export", "false"); context.setEnvironment(environment); applyCustomizerToContext(customizer, context); assertThatTracingExportIsDisabled(context); @@ -115,7 +115,7 @@ class TracingContextCustomizerFactoryTests { ContextCustomizer customizer = createContextCustomizer(TracingExportEnabled.class); ConfigurableApplicationContext context = new GenericApplicationContext(); MockEnvironment environment = new MockEnvironment(); - environment.setProperty("spring.test.tracing.auto-configure", "false"); + environment.setProperty("spring.test.tracing.export", "false"); context.setEnvironment(environment); applyCustomizerToContext(customizer, context); assertThatTracingExportIsEnabled(context); @@ -126,7 +126,7 @@ class TracingContextCustomizerFactoryTests { ContextCustomizer customizer = createContextCustomizer(TracingExportDisabled.class); ConfigurableApplicationContext context = new GenericApplicationContext(); MockEnvironment environment = new MockEnvironment(); - environment.setProperty("spring.test.tracing.auto-configure", "true"); + environment.setProperty("spring.test.tracing.export", "true"); context.setEnvironment(environment); applyCustomizerToContext(customizer, context); assertThatTracingExportIsDisabled(context);