用于忽略 JUnit 测试的 FindBugs 过滤器文件
我需要为 findbugs ant 脚本设置一个过滤器文件,该脚本仅扫描 src/* 文件,而不扫描 test/* 文件。
检查所有类同时忽略名称中带有“test”的任何文件名或包名称的语法是什么?
I need to set up a filter file for my findbugs ant script that scans only the src/* files and not the test/* files.
What is the syntax for checking all classes while ignoring any filename or package name with 'test' in the name?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
FindBugs 实际上扫描编译后的类文件,而不是
sourcePath
。 如果您将 src/* 和 test/* 文件编译到不同的目录,则可以仅使用嵌套的
元素。如果 src/* 和 test/* 都编译到单个目录,则这将不起作用。 在这种情况下,请使用 过滤器文件 并排除与测试相对应的包或类名称。
其中
exclude.xml
如下所示:FindBugs is actually scanning the compiled class files, not the
sourcePath
. If you are compiling your src/* and test/* files to the different directories, you could just use the nested<class...>
element.That won't work if src/* and test/* are both compiled to a single directory. In that case, use a filter file and exclude the packages or class names that correspond to tests.
where
exclude.xml
looks like:顺便说一句,用 FindBugs 覆盖单元测试也是一个好主意。 没有理由对测试使用较低的质量标准。 测试中的错误就是错误。
当然,如果你第一次运行FindBugs,可能会有很多错误报告,但如果你留意的话,错误数量会随着时间的推移而减少。
By the way, it is a good idea to cover unit tests with FindBugs as well. There is no reason for using lower quality standards towards tests. Bugs in test are just that, bugs.
Sure, if you run FindBugs first time, there might be many bug reports, but the bug count will come down overtime if you pay any attention to them.