我想编写一个自定义 CodeNarc 规则来验证 Grails 集成测试类的某些方面。例如,Spock 集成测试应该扩展 IntegrationSpec;不是规范。
但要做到这一点,我需要在访问规则中的类时过滤集成测试,我不知道该怎么做。
一个想法是查看源文件路径以查看它是否在 中test/integration
,但我不知道是否可以获取文件的源路径。?还有其他想法吗?
您绝对可以根据路径(以及类名)限制规则应用。看一下配置规则CodeNarc 页面。
特别是,您可能正在寻找applyToClassNames
anddoNotApplyToClassNames
属性或applyToFileNames
anddoNotApplyToFileNames
属性,它们应该在任何内置规则和扩展所提供AbstractRule
类的任何自定义规则上都可用。