\ McCabe 简介
McCabe IQ是软件质量管理解决方案,为用户提供软件质量度量、软件结构分析、动态结构化测试的全面支持,世界上很多重要组织和公司采用McCabe IQ的质量管理套件,对其开发的关键软件进行质量分析和覆盖率测试。McCabe IQ的框架基于底层优秀的EDG源代码分析器,提供准确的软件复杂度和软件结构分析,基于工业标准或者自定义标准衡量软件的质量。
\ McCabe 功能
质量度量McCabe EQ
- McCabe EQ能够分析多种软件度量质量,包括:
♦ McCabe 圈复杂度
♦ McCabe本质复杂度
♦ 模块设计复杂度
♦ 集成的复杂度
♦ 代码行
♦ Halstead
2)McCabe EQ拥有质量快照功能
可以在特定时刻把当前的软件质量信息全部存储到它的数据库中,随着软件开发和测试的进行,不断的记录软件的质量信息和测试的覆盖信息,McCabe IQ把这些点连成在一起绘制成质量趋势图,项目主管可以掌握软件质量的波动和测试的进展。基于McCabe提供的这些基本度量,用户可以方便的派生度量,这样可以更加符合用户实际的质量模型,有助于更好的进行质量评价。
3)McCabe可以提供如下图形报告:
♦ 模块调用关系图:用红黄绿颜色标识出模块的复杂度的高低,对于软件的结构和复杂程度一目了然。
♦ 模块控制流图:有助于了解软件模块的内部流程,发现隐藏的危险路径。
♦ 散点图/KV图/柱状图:综合分析软件整体的质量分布情况,有助于了解软件质量情况,和测试工作量评估。
配置项覆盖率测试McCabe Test
1)采用McCabe生成测试路径列表和集成测试计划,可以图形化显示测试路径和测试用例,帮助制定测试计划。
2)自动对原代码插装,经过编译系统的编译连接生成可执行代码,在相应的目标平台上运行后会生成追踪信息进行覆盖分析。
3)提供以下覆盖率分析:
♦ 集成覆盖、路径覆盖、MC/DC覆盖、分支覆盖、语句覆盖、类覆盖、OO的覆盖、数据测试路径覆盖等等。
♦ 在测试的各个阶段可以指出未得到测试的分支和代码。可以显示哪些模块已经被充分测试(绿色),部分测试(黄色),或者没有测试(红色)。
数据流分析McCabeData
McCabe 的数据字典是McCabe中的一个模块,汇总软件的所有数据信息,用户可以自定义数据集,把关心的数据找出来,从而可以查看这些数据在哪定义,在哪使用,提供全局数据覆盖度和指定数据复杂度,同时可以结合动态测试,综合分析得出数据的覆盖率。
冗余代码分析McCabeCompare
越复杂的程序,里面存在的冗余代码越多,有些程序里面存在高达40%的冗余代码,很多模块相似度很高,而相似的模块往往带有相同的错误,McCabe Compare模块可以分析模块的相似性,帮助用户通过合并相似模块,精简系统。
动态切片分析McCabe Slice
McCabe Slice可用来分析软件的内部结构。通过编译,运行插装后的软件,然后导入追踪结果文件,可以图形化显示出软件中特定功能相关的代码。切片的概念对于软件再工程十分重要,可以实现软件的可视化,以分解复杂的系统,便于提取业务规则。
变更分析McCabe Change
McCabe 的变更分析模块自动发现软件被改动的模块,自动分析这些被修改的模块是否被测试过,那些经过修改但是没有测试过的模块是接下来测试的重点,同时也要利用McCabe的图像分析发现改动模块对整个系统的影响有多大。变更分析模块和数据字典,切片分析等配合使用,结合动态测试的数据可以得出再工程的评估报告。
\ McCabe 支持的语言
Ada, ASM86, C, C#, C++.NET, C++, COBOL, FORTRAN, JAVA, JSP, Perl, PL1, VB, VB.NET等。
\ McCabe 支持的平台
Windows,Linux,Solaris。
更多内容访问:http://www.softtest.cn/