QAC/QAC++静态软件测试工具介绍

QAC/QAC++是英国编程研究公司(Programming Research Ltd)专业进行C和C++语言规则的检查工具,在十几年里,QAC/QAC++产品一直处于静态编程规则检查领域的领先地位,PRL公司有多名专家参与MISRA和其它标准的起草和编写工作。PRL公司积累了深厚的经验,因为其对编程语言的理解非常精深,其产品在汽车、通信、航天航空、军工等领域拥有大量的用户。QAC/QAC++以其能全面而准确的发现软件中存在的潜在问题的能力得到客户的认可和赞赏。

功能特点

QAC/QAC++能够对C/C++代码规则进行自动检查,报告所违反的编程标准和准则。通过QAC/QAC++的使用可以减少代码审查所需的时间,使软件设计师在开发阶段的就可以避免代码中的问题,提高代码的质量,缩短后期动态测试的周期。

QAC/QAC++产品界面简洁直观,操作和使用非常简单,建立工程之后直接加入代码就可以进行分析,能够发现1200多种C语言问题、800多种C++的问题,可以支持所有编译器的扩展、配置简单灵活,分析速度非常快,分析报告可以是excel、word、pdf、图表等多种形式,在线帮助相关联,可以及时得到问题的解释和示例。

QAC/QAC++支持多种编程标准(ISO,MISRA C,JVF,EC++等),也支持多种其它行业编程规则。QAC/QAC++提供了编程规则的二次开发接口,允许添加其它的自定义的编程规则。

QAC/QAC++能够提供另外两种静态分析的能力:软件结构分析和质量度量.

软件结构分析包括:函数控制结构图、函数调用树、数据引用关系图,文件包含关系。

质量度量包括:提供60多种C语言度量和20多种C++度量。

检测功能

QAC/QAC++能发现C代码中超过1300种潜在问题,C++代码400多种潜在问题,从而发现危险的结构,发现维护和移植中发生的问题。

成功解析许多流行的C/C++语言编译器中的语言扩展和非标准的结构。
简单操作就可以轻松定制警告信息和报告。
提供几十种C/C++复杂度度量,包括圈复杂度、静态路径统计和Myer's interval等,还可以扩展定制的复杂度度量。
提供开发接口,可扩展执行特定的分析检查。
可以扩展自定义的代码检测规则。
提供多种多样的可视化输出,包括函数结构图、函数调用树、外部参考、文件包含关系和统计的度量分析。
可用于Windows和Unix平台,有方便易用的GUI图形界面,可以和流行的开发环境集成。


突出优势

QAC在代码规则检查方面深入透彻,集成了多种编程标准,有超过1200多条警告提示可以给开发人员很好的提醒,可以作为贯彻实施企业编程准则和行业编程的检测工具。经过测试,QAC可以很准确的发现代码中潜在的问题,不存在漏报,误报和错报的情况。QAC利用强大的分析器进行预处理和后分析,检查C语言代码缺失或者遗漏的头文件。QAC以其严谨而准确的分析提供了可靠的检测结果。QAC能支持各行业编程标准,进行独立检查并生成报告。

QAC的操作和使用非常简单,在Viewer中可以方便查看结果,点击警告就可以看到在线解释和示例,自动进行报告的更新。QAC和QAC++允许再二次开发接口上定制新的规则,只需要点击鼠标便可定制特定的规则,可以添加行业标准或者自定义的内部规则。

QAC可以集成到其他IDE中,在熟悉的环境就可以进行规则检查,比如:MS VC++,MS .NET,Tornado,Source Insight,Keil C,C++ Builder,Labwindows CVI等各种开发环境。

支持的平台

QAC支持的语言有C、C++、Java、Fortran;
QAC可支持的平台有Microsoft Windows、Sun Solaris、HP-UX、Redhat Linux、Slackware Linux。

1、 QAC介绍和使用说明 其他的功能概括 1、提供一种可量化措施的代码度量值属性:33基于功能 32基于文件和4个项目级别 2、功能结构关系图,以提供控制流动洞察 3、展示全局调用函数的关系图引用和文件树结构 4、提供统计分析对代码质量的全面评估 5、跨模块分析能力(CMA)、分析递归功能和全局标识符的各种问题 6、简化的旧代码修改的设置基准模块 Source..c文件通过分析工具生成3种文件source.c.i、source.c.met、source.c.err。source.c.i文件可以直接生成报告文件,.met、.err这两个文件可以分析出功能结构、关系、特征标准、报告或者进行跨模块分析,对于跨模块分析和剖析器分析需要进行配置,source.c.met、source.c.err、配置文件可以在信息浏览器中显示 2、 规划 2.1、自动生成文件及参数说明 生成自动文档步骤: 1、从文件菜单中选者Auto-Create Project 2、进入Root Folder Name,这是工程的根目录,后面的自动生成的文件都会对应此根目录产生 3、进入Starting Directory,这个源代码目录与工程的根目录相连 4、进入Output File Path,这里可以选择QAC分析后的输出文件,好的情况就是用一个专门的目录和工程根目录相连 5、Replicate source tree structure in output paths通常是为输出部分建立一个子目录结构,这里可以有2种选择,可以选择Parallel to Source Structure为源代码建立一个平行的目录结构,或者选择Sub-path to each source location把规定的输出的子目录嵌入到源工程目录下面 6、选择File Extensions可以加入项目,通常只要选择一个.C文件,包括对.H文件也就被加入 7、为文件夹选择一个个性,可能会使用默认设置为起始点,可以在QAC中选择Configuration菜单 8、点击OK就是建立了工程,包含源文件工程和子文件夹 9、保存文件,外部扩展名为.prj 注意:也可以在已有的项目上自动生成一个文件夹,点击菜单Edit > Auto-create Sub-Folders,其余步骤和以上相同 文件夹参数:包括文件夹名称、默认源路径、输出路径和三种个性 可以进入Edit > Folder Parameters只可以改变文件夹参数,进入Edit > Propagate Changes to Sub-Folders可以改变所有子文件夹参数 2.2、手动生成文档及参数说明 生成手动文档步骤: 1、从菜单File中选择New Project,显示一个对话框New Project Parameters 2、进入Root Folder Name,输入一个项目名称 3、进入Default Source Path为项目初始化文件夹,这个路径可以改变所有子文件夹 4、在Output File Path中选择需要输出的分析文档 5、为工程选个个性 6、点击 OK创建项目,这工程的配置是唯一的文件夹 7、按要求增加更多的子文件夹和文件按要求 8、保存文件,外部扩展名为.prj 文件夹参数;在File > Reopen这项中可以有10多个选项,当没用的文件可以选择Clean-up。 文件和目录的位置时重新打开项目,将检查的存在。如果不存在一个条目将显示下面的对话框。有的更正可以自动应用的过程。 2.3、选择输出文件 一般文件夹的层次结构在在左边显示,选择的列表在文件的右边显示 所有的选择都在Browse 和d Reports这两个菜单中 A、如果选择单个文件或一组文件,则使用 B、否则当前所选文件夹,再加上所有子其文件夹,窗体所选内容。这意味着使用这些文件夹中的所有文件。 在浏览器内修改,有可能会改变开始的选择,用Select Files…在File菜单内 2.4、互相比较和环境变化的报告 2.4.1、根路径 2.4.2、基于GUI的环境变量创建 2.4.3、相对路径和环境变量的运用 选择Apply Relative Paths项可以选择相对路径减少的所有文件条目,根目录在右上角,表示保存项目文件的位置,确定路径是否合适相对路径减少。 选择Make file paths in each folder relative to its Default Source Path entry项,如果想要应用一个虚拟的环境变量表达默认每个文件的源路径到其他文件条目下。 在Available Environment Variables列表下,可以添加EVs to Apply至右边框中,将这种替换只发生在项目中的项的文件或关联的路径不受相对路径减少的个性 选择Apply path reduction to personality file entries associated with the project项,为了继续应用相对路径和环境变量在文件路径下的个性定义 选择Remove all path reduction from the project and associated personalities项若要撤消所有的相对路径和环境变量从相关个性设置项目恢复到完全在所有情况下限定的路径 例如,一个被重建的“Diff”项目如下所示与充分的relative道路实施 3、 配置QAC 为应用程序配置主要通过可访问Configuration > Options选项卡,有以下几点: Annotated Source 附加说明源 Cross-Module Analysis 跨模块分析 Custom Reports 自定义报告 Default Personalities 默认特性 Editor Preferences 编辑选项 Environment 环境 (Product)Extensions (产品)条目 Project File Options 项目文件选择 要查看您的安装与那些一起中的个性的一组在您的项目中定义,可以在Configuration下选择Message Personalities, Analyser Personalities or Compiler Personalities这几个选项 当创建了一个额外的特性,也可以设置它们成为系统默认,在Configuration>Options>Default Personalities下设置 3.1、配置编译器特性 看附录A 3.1.1、设置系统头文件 在系统包括系统标题选项卡上的标题,设置您系统标头包含路径 可以点击Suppress Output阻止这些头文件,当阻止了那些头文件,一些从特定的头文件或路径中产生的分析数据也不能在.err、.met文件中出现 您可以手动输入是相对于当前项目的路径位置,虽然建议进行完整路径选择和然后将任何选择的道路减少保存项目的过程中的应用操作 3.1.2、设置系统宏 在System Macro Defines下的Project Macros菜单中,设置宏同编译器或开发环境一致,宏可以在Compiler Personality或Analyser Personality设置 3.1.3、设置实现定义的类型 在c编译器里有3中类型定义,在“implementation defined”中选择,如下: size_t 一种无符号必需类型通过sizeof操作表示返回类型 ptrdiff_t 一种有有符号必需类型用减法运算的两个指针来表示 wchar_t 它反映了类型的范围内的整数类型字符文本和宽字符字符串 在Data Types下的Intrinsic Types条目控制这些类型的方法实施,需要以匹配编译器配置环境。所载入的任何相应类型声明头文件(e.g. stddef.h, stdio.h)必须反映内在匹配值类型。如果不符合,qac提示等级9的警告,如有必要,检查您的头文件确定适当的设置这些选项。 如上所述:QAC随提供一套标准库的头文件,如果想改变这些类型定义,必须先明白QAC内部的定义类型,因为那些头文件包含一些声明ptrdiff_t, size_t 和wchar_t,还有3种宏指令定义PRQA_PTRDIFF_T, PRQA_SIZE_T,和PRQA_WCHAR_T, 3.1.4、编译器扩展 许多编译器制造商实施 ISO C 的扩展语言定义来利用特定的硬件环境。特别是在嵌入式软件代码的速度和空间是重要 使用的语言扩展的危险是他们妥协可移植性。源代码越来越依赖于编译器和硬件环境。 QA C 是能够分析各种不同的语言变体和扩展,但它不是通常能够解释扩展在语义上。通常,必须配置该工具等,非标准关键字将被忽略。 有几种方法可以为此配置QAC,看附录B–extensions部分
### 回答1: Helix QAC是一款用于静态代码分析的工具,可用于检查和评估源代码的质量。以下是Helix QAC的使用教程: 1. 安装和配置:首先,下载和安装Helix QAC软件。接下来,配置工具以适应您的项目的要求。您可以选择配置检查规则、指定代码库和目标文件夹等。 2. 创建项目:打开Helix QAC软件后,您需要创建一个新的项目。在项目中,您可以定义您希望进行静态分析的代码文件和文件夹。您还可以指定项目的属性,如编译器和编译选项。 3. 运行分析:在项目配置完成后,您可以开始运行Helix QAC静态分析。通过点击软件界面上的“分析”按钮,Helix QAC将开始对您的代码进行分析。在分析过程中,工具会根据您所选择的规则和设置来检查代码中的潜在问题。 4. 查看报告:分析完成后,Helix QAC会生成一个详细的报告,列出了检测到的问题和建议的解决方案。您可以通过打开报告文件来查看分析结果,并对发现的问题进行详细了解和处理。 5. 解决问题:根据报告中提供的信息,您可以逐个查看和解决代码中的问题。Helix QAC可以提供关于每个问题的详细说明和建议,以帮助您快速修复代码缺陷。 6. 重新分析:修复代码后,您可以再次运行Helix QAC进行新一轮的静态分析。这样可以确保您的代码在质量方面得到改善,并且问题得到有效解决。 总之,Helix QAC是一个功能强大的静态代码分析工具,它可以帮助开发团队提高代码质量和可维护性。通过正确安装、配置和运行分析,您可以利用Helix QAC的教程来发现和解决代码中的问题,从而提高软件的整体质量。 ### 回答2: Helix QAC 是一款功能强大的静态代码分析工具,用于检测和修复C、C++和C#等编程语言中的潜在代码缺陷和安全漏洞。下面是静态测试 Helix QAC 的使用教程: 1. 安装和配置:首先,需要从 Helix QAC 的官方网站上下载并安装最新版本的软件。安装完成后,根据官方提供的说明文档进行配置和设置,包括选择评估标准和规则集等。 2. 导入代码:在 Helix QAC 软件界面上,选择“导入代码”选项,然后选择要进行静态测试的代码文件或者代码目录。确保代码文件路径是正确的,并且选择适当的编程语言类型。 3. 运行测试:选择“运行测试”选项,Helix QAC 将自动开始代码的静态测试分析。该过程可能需要一段时间,具体取决于代码量和复杂程度。 4. 分析结果:测试完成后,Helix QAC 将生成详细的测试报告,列出发现的代码缺陷和安全漏洞。可以根据优先级和严重程度对结果进行排序和过滤。 5. 修复代码:根据测试报告中的建议和提示,逐个修复代码中的潜在问题。修复完成后,可以再次运行 Helix QAC 进行静态测试,确保所有问题都得到解决。 6. 定期测试:为了确保代码质量和安全性,建议定期运行 Helix QAC 进行静态测试,特别是在代码修改或更新时。这样可以及时发现和修复潜在问题,提高代码的可靠性和可维护性。 通过按照上述步骤和流程使用 Helix QAC,可以帮助开发人员在代码开发的早期发现和修复潜在问题,提高代码质量和可靠性。静态测试是一种非常有效的代码质量保证手段,因此掌握和使用 Helix QAC 将对开发工作大有裨益。 ### 回答3: Helix QAC是一种供C、C++和C#程序进行静态分析和代码质量检查的工具。它可以帮助开发人员在编码过程中发现潜在的错误,并提供改进建议来提高代码的稳定性和可读性。 使用Helix QAC进行静态测试的步骤如下: 1. 安装和配置:首先,需要下载并安装Helix QAC软件。安装完成后,根据您的编程语言选择适当的配置文件。然后,设置编译器选项和静态分析规则,以根据项目的要求进行适当的配置。 2. 项目设置:在项目文件夹中创建一个Helix QAC配置文件(通常是.qac文件),并将其与项目代码相关联。在配置文件中,您可以选择性地启用或禁用特定的静态检查规则,并设置其优先级。 3. 静态分析:使用Helix QAC,在命令行界面或集成开发环境中执行静态分析。通过指定相应的命令和参数,程序将会被编译并分析。静态分析将检测代码中的潜在问题,如类型错误、空指针引用、未初始化变量、未使用的变量等等。 4. 结果查看:分析完成后,Helix QAC将生成一个报告文件,其中包含了静态分析的结果。您可以通过查看该报告文件,了解代码中存在的问题和建议的改进措施。报告中的问题按照优先级进行分类,并提供了相关的代码位置和描述。 5. 问题修复:根据报告中的问题列表,您可以逐个检查代码,并进行必要的修改。修复问题后,您可以重新运行静态分析,以确保问题已经被解决。 总而言之,Helix QAC是一款强大的工具,可帮助开发人员在编码阶段进行静态分析和代码质量检查。通过适当的配置和使用,能够提高代码稳定性和可读性,减少潜在的错误和漏洞。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值