动态测试工具Cantata 9.1新版将带来哪些新特性?
2020年10月,Cantata 9.1版本正式发布。该版本进一步扩展了对C++代码执行AutoTest测试的功能,新增了HTML格式认证报告,并包含了其他提高生产力和灵活性的增强功能。以下是重要的更新功能:
增强了对C++的AutoTest支持
具体表现在:
● 支持C++11和C++14的所有语言特性
(针对基于g++的编译器)
● 运行时的类型信息
这些建立在Cantata 9.0对C++的支持上:
● C++的具象和抽象基类
● 重载与继承
● 名字空间与类
● 异常处理
● 代码中显式实例化的模板
● 混合的C和C++代码
Cantata AutoTest分析C++代码,根据定义的结构化代码覆盖度量(例如,100%入口点、100%语句、100%分支、或100%唯一原因法MC/DC)确定所有可能的执行路径,然后它的算法使用Cantata强大的白盒测试能力设置数据、参数和控制函数调用,以建立执行这些必要路径的测试用例向量。
六倍速GUI
当Cantata用户处理更大或更复杂的测试工程时,Cantata Eclipse界面要加载的数据也更多。在Cantata 9.1中,Cantata Eclipse界面进行了优化,加速数据在多个同步的测试视图中的加载。
作为试验,我们使用了一个基准的Eclipse工作空间,含有135个源文件的C++工程,使用缺省配置生成Cantata测试脚本。
在Cantata 9.0中需要耗时30秒,而在Cantata 9.1中只用了5秒(快了6倍)。
HTML格式的认证报告
在共享测试结果时,HTML格式是用户友好的。在9.1版本之前,Cantata只有纯文本的Cantata Test Result(.CTR文件)可以用做认证证明材料,因为XML和HTML报告是由Eclipse插件生成的,而这样的辅助工具不是经过认证的Cantata核心产品的组成部分。
现在Cantata 9.1提供了命令行和图形界面两种方式,使用一个新的经过认证的产品组成部分(一个可执行文件),将Cantata Test Results(.CTR文件)从纯文本转换成HTML格式。它将测试结果输出为单个HTML文件,此文件可以作为测试结果的认证证据提交,用以符合Cantata支持的各个安全标准。
HTML格式的CTR文件里面的内容段落能够展开/合起,深入测试用例的详细结果,也为检查、诊断和错误提供了容易辨识的颜色。
图 1 HTML格式的CTR文件
CTR格式的变化
Cantata 9.1在.CTR文件的代码覆盖率部分为文件名字提供了全路径,便于标识在一起测试的多个同名的源文件。在测试总结段落(.CTR文件或是控制台打印的)中,完整的测试用例名字也得以显示,而之前版本中这些测试用例名字是被截断的。
更方便的调用控制
Cantata 9.1在.CTR文件的代码覆盖率部分为文件名字提供了全路径,便于标识在一起测试的多个同名的源文件。在测试总结段落(.CTR文件或是控制台打印的)中,完整的测试用例名字也得以显示,而之前版本中这些测试用例名字是被截断的。
图 2 Test Case Editor的新布局和External Calls管理视图
更加灵活地添加和排除代码覆盖率
在以前的版本中,被测软件(SUT)的代码覆盖率配置是限定在模式匹配上的,模式匹配选择添加或者排除Cantata工程中的源文件或头文件。现在大规模代码的集成和系统测试越来越多选用Cantata工具,为了适应增长的需求,Cantata 9.1更加灵活,允许对文件和文件夹使用模式匹配。基于文件的选择非常适用于从代码覆盖率快速排除头文件。基于文件夹和文件的添加/排除可以是绝对路径和相对路径。
为了使报告更加清晰,Cantata 9.1的代码覆盖率结果可以设置为在.CTR文件中报告文件组的覆盖率或者以文件为次序的代码行的覆盖,替代了默认的以SUT执行为次序的覆盖率报告。
更新了Eclipse支持版本
Cantata的每个版本都有支持平台的变化。
Cantata紧密地与Eclipse®的IDE环境以及Eclipse-Ready®插件集成。
Cantata 9.1建立在Eclipse 2019-12版本(Eclipse 4.14)上,也可以作为从Luna(4.4)版本直到Eclipse 2019-12(4.14)版本的Eclipse-Ready插件来安装。
获取Cantata9.1新版的免费试用,请访问官网http://qa-systems.cn/提交详细需求