彩票走势图

自动化测试工具Parasoft C/C++ test 自动化用户指南(十六):静态分析的分析类型

翻译|使用教程|编辑:李显亮|2021-07-09 11:33:52.107|阅读 365 次

概述:Parasoft C++testC++test 可以进行静态分析,全面代码审查,运行时错误检测,并在单元测试和组件测试中集成覆盖率分析。本系列文章将为自动化用户提供基础操作指南,本文将介绍parasoft中静态分析的分析类型。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

Parasoft C/C++test针对C/C++开发的专业白盒自动化测试方案,能有效提高软件开发效率和代码质量。C++test 可以进行静态分析,全面代码审查,运行时错误检测,并在单元测试和组件测试中集成覆盖率分析。


基于模式的分析

基于模式的分析检测源代码中已知会导致基于编程标准(例如 CWE 和 OWASP)的软件缺陷的构造。基于模式的静态分析有助于确保开发人员遵循编码最佳实践、单元测试最佳实践以及组织的开发政策。此分析类型和以下所有分析类型均使用内置或用户定义的测试配置执行。

代码重复分析

Parasoft C/C++test 可以检查重复代码,帮助您改进应用程序设计并降低维护成本。在代码重复分析期间,代码被解析为更小的语言元素(标记)。令牌根据一组规则进行分析,这些规则指定什么应该被视为重复代码。分析令牌有两种类型的规则:

  • 查找单个标记重复项的简单规则,例如字符串文字
  • 查找多个令牌重复项的复杂规则,例如,重复的方法或语句

在分析过程中运行 Find Duplicated Code 内置测试配置,执行代码重复检测规则:

builtin://Find Duplicated Code

代码重复分析

Parasoft C/C++test 可以计算多个代码指标,例如代码复杂度、对象之间的耦合或缺乏内聚度,可以帮助您了解代码中潜在的弱点。在分析期间运行 Metrics 测试配置以执行指标分析规则:

1builtin://Metrics


设置指标阈值

您可以设置上限和下限,以便在计算出的度量超出指定值范围时报告静态分析结果。例如,如果您想限制项目中的逻辑行数,您可以配置指标测试配置,以便在逻辑行数指标超出限制时报告结果。

内置的 Metrics 测试配置包括默认阈值。有一些规则,例如文件数 (METRIC.NOF),无法为其设置阈值。

可以使用以下方法指定指标阈值:

  • 通过使用 DTP 中的测试配置界面(详见 DTP 用户手册中的“报告中心>测试配置>编辑测试配置>指标选项卡”)。
  • 通过使用 IDE 中的界面编辑 Metrics 测试配置(请参阅 创建自定义测试配置)。
  • 通过手动编辑测试配置文件:
    1. 将内置 Metrics 测试配置 ( <INSTALL_DIR>/configs/builtin)复制到用户配置目录 ( <INSTALL_DIR>/configs/user)。 2. 在编辑器中打开复制配置并将[METRIC.ID].ThresholdEnabled属性设置为true。 3.[METRIC.ID].Threshold按照以下格式在属性中配置上下边界:[METRIC.ID].Threshold=l [lower boundary value] g [upper boundary value] 4. 保存测试配置并使用自定义指标测试配置运行分析。

流量分析

Flow Analysis 是一种静态分析技术,它使用多种分析技术(包括应用程序执行路径的模拟)来识别可能触发运行时缺陷的路径。检测到的缺陷包括使用未初始化的内存、空指针解引用、被零除、内存和资源泄漏。

由于此分析涉及识别和跟踪复杂路径,因此它会暴露通常会逃避静态代码分析和单元测试的错误,并且很难通过手动测试或检查找到。

Flow Analysis 在不执行代码的情况下暴露错误的能力对于具有遗留代码库和嵌入式代码(此类错误的运行时检测无效或不可能)的用户特别有价值。

在分析期间运行 Flow Analysis 测试配置之一以执行流分析规则:

builtin://Flow Analysis Fast

builtin://Flow Analysis Standard

builtin://Flow Analysis Aggressive


Parasoft——领先的自动化测试工具,满足绝大多数行业标准

Parasoft是一家专门提供软件测试解决方案的公司,帮助企业打造无缺陷的软件。

从开发到质量检查,Parasoft的技术通过集成静态和运行时分析,单元、功能和API测试,以及服务虚拟化,在不牺牲质量和安全性的情况下加快软件交付,节约交付成本。

强大的报告和分析功能可帮助用户快速查明有风险的代码区域,并了解新代码更改如何影响其软件质量,而突破性的技术将人工智能和机器学习添加到软件测试中,使组织更容易采用和扩展跨开发和测试团队的有效的软件测试实践。

Parasoft针对C/C++、Java、.NET和嵌入式的开发测试都有着30多年的深入研究,很多全国500强企业使用Parasoft的产品实现了软件快速、高质量的交付。



自动化测试工具Parasoft C/C++ test 自动化用户指南(十一):Visual Studio设置


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP