如何告诉SpringBootTest加载所有必需的类而无需显式指定它们

xqkwcwgp  于 2023-01-13  发布在  Spring
关注(0)|答案(2)|浏览(162)

据我所知,您有两个选择与SpringBootTests:
1.加载整个应用程序
1.通过显式指定类,只加载所需的内容
然而,如果您执行2.,根据您想要测试的应用程序部分的大小,您将得到一个很长的类列表

@pringBootTest
@ContextConfiguration(classes = {
        A.class, B.class, C.class, D.class, E.class,
        F.class, G.class, H.class, I.class, J.class, 
        K.class, L.class, M.class, N.class, O.class, 
        P.class, Q.class, R.class
})

每当您要测试的部分内容发生变化时,您必须找出缺少了什么bean手动将它们添加到列表中

是否有任何方法可以告诉Spring您是否希望测试A.class以自动检测并自动加载依赖项?

B级、C级、D级、E级、F级、G级、H级、I级、J级、K级、L级、M级、N级、O级、P级

zaqlnxep

zaqlnxep1#

只需完全忽略@ContextConfiguration@SpringBootTest将创建整个应用程序上下文。

2vuwiymt

2vuwiymt2#

有一种方法可以减少手工工作。首先,需要将测试类所需的所有bean分组到一个用@Configuration注解的配置类中。

@Configuration
    public class ConfigClass{

//define all necessary Beans here required for testing

    }

然后需要将用@Configuration注解的类作为值赋予classes属性

@ContextConfiguration(classes={ConfigClass.class})

相关问题