在Spring中的单元测试中继承java配置类

时间:2015-09-29 14:22:07

标签: spring unit-testing

我正在为具有大量配置类的纯java-config样式应用程序编写单元测试。为了测试一些高级逻辑,我必须导入一包配置。所以,最后,上下文声明看起来有点:

@ContextConfiguration(
    classes = {
            // Common application configurations
            BaseBusinessConfiguration.class, BusinessServicesConfiguration.class, 
            nts.trueip.gatekeeper.logic.configuration.ContextConfiguration.class,
            ControllersConfiguration.class, FactoriesConfiguration.class, CachingConfiguration.class,
            InterpretersConfiguration.class, UtilConfiguration.class, ValidatorsConfiguration.class,
            // Common test environment configurations
            MockedReposConfiguration.class, TestServicesConfiguration.class,
            // Local test configuration
            LogicTestConfiguration.class 
    }
    )

我必须为项目中的每个测试类指定它们,并且它们中的大多数始终是相同的,只有一些特定的配置可能会有所不同。 根据@ContextConfiguration规范,可以从测试超类继承位置和初始化器,但不能继承类。

是否有任何做法可以避免批量配置,在超类/某些边类中移动某些部分?

1 个答案:

答案 0 :(得分:0)

尽管Spring没有配置继承功能,但@Import注释在合成风格中也能很好地用于同一目的。