我写我的第一ArchUnit测试:如何忽略测试类类与ArchUnit
import static com.tngtech.archunit.library.dependencies.SlicesRuleDefinition.*;
// more non-static imports
@RunWith(ArchUnitRunner.class)
@AnalyzeClasses(packages = "my.domain.project")
public class PackageStructureTests {
@ArchTest public static final ArchRule NO_CYCLES = slices().matching("my.domain.project.(**)")
.namingSlices("package:$1").should().beFreeOfCycles();
}
的问题是,它也分析了测试,不遵循简单的依赖约束类。
如何将测试限制为“生产”类?
该项目使用Maven构建,因此这些类位于不同的目录中。
仅仅使用以“Tests”结尾的名称或类似的名称是不够的,因为有许多类不是测试,而是只存在于测试类路径中。