【问题标题】:How can I test that a Spring Boot application fails to build context?如何测试 Spring Boot 应用程序无法构建上下文?
【发布时间】:2023-02-16 00:08:57
【问题描述】:

如果错误设置了特定的环境变量,我想测试我的条件配置是否失败。我想要一个设置一些测试环境属性并断言 Spring 上下文无法启动的测试。我怎样才能做到这一点?

Spring Boot提供了@SpringBootTest,但是需要Spring配置正确,我想测试相反的场景。

【问题讨论】:

    标签: java spring spring-boot unit-testing


    【解决方案1】:

    也许这会有所帮助:

    class ContextloadApplicationTests {
        @Test
        void contextLoadsError() {
            // set environment variables here
            Assertions.assertThrows(UnsatisfiedDependencyException.class, () -> {
                ApplicationContext context = 
                    new AnnotationConfigApplicationContext("com.example.contextload");
            });
        }
    }
    

    这将尝试加载 applicationcontext 并预计它是不正确的。

    【讨论】:

    • 不加载配置文件。似乎与@SpringBootApplication 的工作方式不同
    猜你喜欢
    • 2018-01-20
    • 2019-11-17
    • 1970-01-01
    • 2019-05-02
    • 1970-01-01
    • 1970-01-01
    • 2018-07-11
    • 2019-01-17
    • 1970-01-01
    相关资源
    最近更新 更多