正则表达式 – 如何忽略Coverity Connect分析结果中的JAVA测试?

前端之家收集整理的这篇文章主要介绍了正则表达式 – 如何忽略Coverity Connect分析结果中的JAVA测试?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用Coverity扫描我的项目是否存在安全问题.

我想知道的是如何从缺陷提交后可用的分析结果中排除任何java测试(注意:集成和单元).

我确实使用maven来构建项目,并使用标志-Dmaven.skip.test = true排除了单元测试.
尽管这使得Coverity不进行扫描单元测试,但它仍然使扫描集成测试.

我项目中的所有集成测试都在文件标题中包含“Test”一词.因此,我开始查看Coverity中提供的过滤器部分.我当时尝试的是一个正则表达式(.*(!?(Test).*)$)但它没有用.似乎覆盖率支持两个匹配的字符(*和? – 见下图),而它似乎不支持任何负面的环顾.

enter image description here

有没有什么好方法可以轻松,干净的方式完成这项任务?

解决方法

由于Coverity依赖于您的Maven构建,因此您可以排除:

>通过添加-Dmaven.skip.test = true编译和执行单元测试(通过Surefire插件)和集成测试(通过Failsafe插件)
>通过-DskipTests执行单元测试和集成测试
>通过-DskipITs执行集成测试

相反,如果您在单独的Maven模块中进行集成测试,则可以通过配置文件直接将其从Maven构建中排除,如下例所示 – 请参阅要启动的聚合器的pom.xml和maven命令行的摘要

<modules>
  <!-- remove 'my-it-module' from this list -->
</modules>
<profiles>
    <profile><id>build-it</id>
        <activation><activeByDefault>true</activeByDefault></activation>
        <modules><module>my-it-module</module></modules>
    </profile>
</profiles>

然后mvn安装-P!build-it

猜你在找的正则表达式相关文章