如何在 Spring 启动测试中禁用 `@EnableKafka`?
How to disable `@EnableKafka` in Spring Boot tests?
我想 运行 我的集成测试,但我不知道如何禁用 @EnableKafka
。
我的应用看起来像这样:
@SpringBootApplication
@EnableKafka
public class MyApplication {
您可以为 Kafka 配置创建另一个配置文件。
@ConditionalOnProperty("kafka.enabled")
@EnableKafka
@Configuration
public class KafkaConfiguration { }
这样,然后您可以在 test.properties 文件中禁用此 属性。
勾选这个
Spring 引导带有 Spring Kafka 的自动配置,因此您不需要使用显式 @EnableKafka
。您在测试中需要做的只是排除 KafkaAutoConfiguration
:
@SpringBootTest("spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.kafka.KafkaAutoConfiguration")
您可以使用此 Spring 注释禁用 Kafka 的自动配置:
@EnableAutoConfiguration(exclude = [KafkaAutoConfiguration.class])
我想 运行 我的集成测试,但我不知道如何禁用 @EnableKafka
。
我的应用看起来像这样:
@SpringBootApplication
@EnableKafka
public class MyApplication {
您可以为 Kafka 配置创建另一个配置文件。
@ConditionalOnProperty("kafka.enabled")
@EnableKafka
@Configuration
public class KafkaConfiguration { }
这样,然后您可以在 test.properties 文件中禁用此 属性。
勾选这个
Spring 引导带有 Spring Kafka 的自动配置,因此您不需要使用显式 @EnableKafka
。您在测试中需要做的只是排除 KafkaAutoConfiguration
:
@SpringBootTest("spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.kafka.KafkaAutoConfiguration")
您可以使用此 Spring 注释禁用 Kafka 的自动配置:
@EnableAutoConfiguration(exclude = [KafkaAutoConfiguration.class])