支持多系统、多语言、多规则 | CA基于Java开发,Java Swing的模式支持系统跨平台运行;支持C、C++、Java等多种编程语言扫描;支持windows平台、linux平台、命令行环境、IDE环境。规则包含国军标5369,MISRAC:2004,国军标5369(C++),Java sun 编程规范,Java sun 安全规则等。 |
无需测试用例的测试 | CA是根据预定的规则对代码进行扫描分析,检查代码是否符合编码规范和各种规则,查找可能的错误,无需编写测试用例可以实现自动化测试,节省大量的人力。 |
基于编译的代码分析 | 静态分析工具基于编译和基于模式的两种方法。CA基于编译的方法,是对整个代码进行扫描分析,相对于基于模式的方法,扫描某个段落的上下文,来判断是否违反了规则,能获得更和完备的分析,便于用户自定义规则的实现。 |
集成与扩展性 | CA是基于用户的软件生命周期环境来设计的,通过提供开放的接口,支持与测试管理软件、项目管理软件等集成。CA提供了图形用户界面(GUI)、命令行、外部接口(DLL)等多样化的用户接口,用户可以根据自己的需求,通过图形界面将源代码逐个导入到CA里进行分析,也可以通过SHELL或者批处理命令BAT来调用命令行;通过对外接口API,CA支持根据代码符合规范的程度对程序员编写的代码评分,还可以轻松实现CA和配置管理工具SVN的集成。 |
代码级测试覆盖 | CA支持对源代码进行解析,得到代码的控制流程图,通过对流程图进行代码走查,实现代码级的测试覆盖,轻松实现XUnit单元测试模块的构建。CA还可以通过时间设定,只检验更新的代码,提高效率。 |
多样化分析报告 | CA支持控制报告的输出形式,将分析结果返回到日志文件或者将分析结果返回数据库表中,为客户提供进一步处理的资料。包括缺陷统计信息、安全漏洞统计信息、软件架构分析、类关系分析、函数调用关系分析、脚本关系分析、度量分析等。 |
词法规则:CA支持英语的单词表,变量命名的定义来自于词表检查。
语法规则:CA通过标准化的语法模板来处理语义规则。
语义规则:CA通过调用标准化的处理程序来分析定义的规则。
支持用户开发自己的规则包,然后通过配置文件以插件的形式配置到CA中。
CA在扫描源代码时对安全规范子集中定义的规则进行逐条检查,用户可以通过自己的需求选定规则,并制定问题的严重程度,如果发现有不符合项则报告在问题列表中,用户可通过行号、列号精确定位问题,除此之外CA还为用户提供修改建议。
CA可以通过以下方式来实现修改配置管理的提交脚本,潜入扫描触发程序。当用户check in程序的时候,脚本触发了CA,来进行代码扫描,并且提交扫描结果。
CA支持SMTP的接口,可以根据需要向指定的SMTP发送请求,提交发送的邮件。CA需要配置固定的用户名、密码,作为邮件发件人。
CA可支持私有云服务的版本:通过本地化来扫描程序,生成xml,上传到云服务,再进行扫描处理,在云端保存扫描结果,并且提供浏览器访问服务。
CA支持通过命令行方式嵌入IDE的方式,可以通过配置IDE环境来调用命令行工作;也支持通过提供客户端的方式来工作,用户可以通过操作客户端来扫描制定的代码,甚至整个项目。
CA支持与现有的测试管理平台和项目管理系统集成,实现单点登录和单一用户ID登录,来实现跨项目和项目群的管理和设置;支持组织级的用户、角色以及权限设置。支持把扫描发现的问题归到缺陷管理系统,通过调用各个不同的缺陷管理系统的API实现集成;支持把扫描分析结果输出到测试管理平台,测试管理平台本身提供自定义的报表和分析,支持PDF、word、excel多种格式的检测报告,实现缺陷分析查看。
包括从McCabe 复杂度、Halstead 程序度量、代码行数、继承数、循环数等各种基本度量。客户还可以根据自己的质量目标,任意组合这些基本度量进行运算生成复合度量。
2019.9.23 |
CodeAnalyzer v2.1.0.9
|
您的信息已成功提交!
我们的客服人员稍后会与您联系