Parasoft教您如何将静态分析集成到日常工作流程中!

翻译|行业资讯|编辑:黄竹雯|2019-08-15 16:49:25.817|阅读 50 次

概述:在本文中,将了解到如何通过有效的日常工作流程最大限度地提高静态分析的采用率。

要在项目中成功采用静态分析,采用确保开发人员易于使用且易于访问的静态分析工具非常重要,可提前是需要提供有用的可操作信息。在本文中,将了解到如何通过有效的日常工作流程最大限度地提高静态分析的采用率。

该部分是关于如何将静态分析工具集成到您的日常工作流程中

确保您的静态分析采用在您的项目中取得成功,确保工具易于使用且开发人员可以轻松访问,提前是提供有用的可操作信息。这最好在开发人员使用的环境(IDE)中实现,如 Eclipse 或 Visual Studio。静态分析警告的提供方式与IDE中的编译器错误相同,并且这些警告会在代码中突出显示,以便更轻松地进行分析和修复。例如,请参阅 Parasoft Jtest 在Eclipse中集成的静态分析警告的屏幕截图:

1.png

正如您在Eclipse中的Java应用程序的上述示例中所看到的,Parasoft Jtest的静态分析结果在警告/错误视图 ➀ 中提供,并且可以与任何其他错误消息进行交互。选择错误会使编辑器窗格 ➁ 显示相关代码行,这也会在代码中显示控制流跟踪,该跟踪可用于跟踪警告的根本原因。如果需要补救,可以像往常一样通过项目导航视图 ➂ 提交代码。

那么开发人员在分析每个警告时会做些什么呢?可以在流程图中描述,如下图所示:

2.png

第1步:聚合和过滤警告

它首先聚合和过滤静态分析结果,这是确定优先级并关注关键警告的关键第一步。通常,质量保证和团队负责人会考虑质量目标,并围绕此目标构建分析配置。例如,为了提高安全性,将启用与安全性相关的检查器以及诸如CERT C的安全编码标准。

第2-4步:调查,确定优先级并修复警告

然后,开发人员根据团队制定的政策和产品的成熟度,调查并修复他们发现的警告。在绿地项目(新建项目)中,大多数警告都会被调查并优先处理,因为代码量相对较小,而在成熟的后期阶段,过滤和优先级将更加严格,因此开发人员只能处理真正的关键警告。在任何一种情况下,过程都是相同的。

第5步:来源登记

在响应静态分析警告进行更改后,将代码检入版本控制并在下一次构建期间再次进行分析。这种简短而紧凑的反馈循环在编写和修改代码时极大地提高了代码的质量和安全性。

集成到构建系统和持续集成管道中

静态分析工具和构建系统的主要集成点是通过命令行界面。以这种方式使用的静态分析有点像构建结构中的编译器。文件以相同的方式处理,尽管输出不是可执行文件,而是存储在存储库中的结果,由文件和内部版本编号索引。

例如,通过 Parasoft C/C++test,这由Parasoft的报告和分析系统(Parasoft DTP)处理,该系统既是存储库,也是分析结果的智能引擎。该分析和附带信息将反馈给每个开发人员,并通过Parasoft的门户网站提供给管理人员和团队负责人。

3.png

在上图中,您将看到我们如何将Parasoft静态分析工具集成到持续集成管道中。Parasoft DTP是警告的中央存储库和分析引擎。

总结

将静态分析集成到日常工作流中需要开发人员直接在IDE中访问静态分析,以及执行项目范围分析,报告和管理的能力。直接支持开发人员使用代码,以及团队负责人和管理人员,他们可以使用自己的趋势信息和报告访问相同的信息,这对于在项目中完全利用静态分析至关重要。


想要了解Parasoft、Parasoft SOAtest、Parasoft Virtualize更多信息或资源的朋友,请点击这里~

1565166511625_12201A8E-ADC2-4723-A4C7-A25BEBC0575B(1).png



标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果

文章转载自:Parasoft官方博客 https://blog.parasoft.com/integrating-static-analysis-into-everyday-workflows

登录 慧都网发表评论


暂无评论...

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关厂商
相关产品
Parasoft C/C++test

Parasoft C/C++test – 针对 C/C++ 开发的综合性代码质量保障工具,有效提高开发团队工作效率和软件质量。

Parasoft Jtest

Parasoft Jtest是一款Java自动化测试工具。能够无缝集成Parasoft SOAtest。

在线客服 在线QQ 电话咨询
400-700-1020
反馈
在线客服系统
live chat