java - Spring Boot 测试 - 我不想为特定测试加载所有 @Configuration 类

标签 java spring spring-boot

我在用 @Configuration 注释的应用程序中有六个类,并且正在编写单元测试。

我有一个 @Configuration 类用于设置 Quartz,还有一个用于设置 Camel。

在我的 Camel 单元测试中,我只想加载设置 Camel 的 @Configuration 类,因为它不关心 Quartz(反之亦然)。

我如何告诉我的 Spring Boot 测试只引导某些配置注释的类? @TestConfiguration 不会那样做...

@Configuration
public class QuartzConfig {
    ...
}

@Configuration
public class CamelConfig {
    ...
}

@RunWith(SpringRunner.class)
@SpringBootTest
@SOME ANNOTATION THAT SAYS ONLY LOAD CamelConfig.class???????
public class CamelOnlyTest {
    ....
}

最佳答案

通过使用 the classes parameter of @SpringBootTest ,您可以指定要用于配置的类。

来自文档:

public abstract Class[] classes

The annotated classes to use for loading an ApplicationContext.

关于java - Spring Boot 测试 - 我不想为特定测试加载所有 @Configuration 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49419025/

相关文章:

java - 如何使用三个表编写这个复杂的 MySQL 查询?

java - Spring Data Rest not working——寻找无限递归错误的根源

java - Spring MVC 始终对特定参数对象的所有映射应用 @Valid

java - 特定 View 的手势检测

java - 在 spring 上运行持久性测试(JUnit)时出错

spring-boot - 如何在 Spring Boot 应用程序中 Autowiring 默认的 XmlMapper

java - AndroidAnnotations 和 Dagger

java - 为 Guava Cache 选择键

java - 如何使用 java 配置配置 Spring ConversionService?

java - 我如何了解运行时是否存在 bean?