SpringBootTest 排除包被扫描

SpringBootTest exclude packages from being scanned

我想在使用 spring @SpringBootTest 时排除一些包被扫描,就像使用 @ComponentScan 一样。 有没有类似

@SpringBootTest(excludeFilters =@ComponentScan.Filter(
            type = FilterType.REGEX,
            pattern = "package\.\.to\.Exclude.*"))

似乎最好的解决方法是创建一个用 @SpringBootApplication 注释的 class 并在那里配置扫描配置

import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication(scanBasePackageClasses ={TestConfiguration.class})
public class TestApp {
}

然后你的单元测试你应该指定之前创建的测试class

@SpringBootTest(classes = TestApp.class)
public class UnitTestClass {
}