Cantata是一款针对C和C++单元集成测试的动态测试工具。测试框架提供一种高级的自动化的测试生成、执行和分析,以符合您的开发流程。
其集成测试框架自动化技术使得开发人员可以遵循软件安全标准测试需求并实现行业最佳实践。
Cantata测试框架使您可以选择最有效的方法来开发和管理测试以满足您的工作流。
Cantata测试框架也可以很容易的扩展或直接集成到持续集成和静态分析工具中,更进一步的实现测试活动的同步和自动化。
Cantata集成测试框架易于:
创建符合您工作流的测试工程
生成测试
编辑测试
控制构建和目标平台的运行
自动化的持续集成和回归测试
生成诊断和报告
生成认证和合规证据
Cantata提供了一个集成的测试框架(测试脚本和支持库),可以为单元和可扩展的集成测试提供任何测试样式组合。可以在GUI中编辑测试用例,也可以使用C/C++代码直接编辑,并在主机和多个目标平台上作为可执行文件运行。
用户代码经由含有目标库的可移植的测试脚本驱动,构建为单个可执行文件,在多个主机或目标平台上运行。对于白盒访问和代码覆盖率,则使用插装技术,所以产品代码在测试时是不会被修改的。
Cantata测试的Eclipse工程可以用五种灵活方法创建,以期适合您的工作流程:
使用已有的Eclipse工程
在源代码之上创建一个工作空间
在源代码中或之上创建工程
将源代码目录链接到工程中
拷贝源代码到工程中
无论是Cantata的测试还是外部驱动的集成测试,测试工程的设置可以使用自底向上的、自顶向下的或隔离单元的测试方法。
Cantata为一个或多个选定的源代码文件生成测试脚本,包含多种类型的测试用例:
为代码中的每个函数生成一个测试用例
表格驱动多个测试用例,使用多个用户定义的输入值
健壮性测试,使用多个预定义的输入值
AutoTest(请参考AutoTest功能获知细节)
通过解析源代码获得代码的全面信息(.csi文件),根据代码信息生成结构化的测试。C/C++测试脚本是生成在测试工程里的,还有对应的Cantata Makefile,可用于自动化回归测试。
测试脚本和Makefile文件的编辑可以使用同步化的测试脚本管理器图形界面或任何C/C++代码编辑器。
为快速编辑测试用例,使用缺省值来设置输入、预期输出和期望调用序列。在测试脚本中控制(模拟或拦截)函数调用。
有关详细信息,请参考独特的调用控制功能。
所有与Cantata相关的文件都存储在工程最上层的“Cantata”目录中。这允许测试文件与源文件在自包含的层次结构中共存,并且可以使用版本控制工具轻松进行管理。
测试脚本与被测源文件一起使用本机上标准的构建机制构建成二进制兼容的可执行文件,并通过IDE或命令行下载到目标机上运行。
Cantata可部署到广泛的目标机上(参见Cantata工作环境)。灵活的部署和使用不同构建和I/O选项,意味着Cantata可以与您的目标开发环境无缝地集成,并且允许使用软件、硬件和处理器在环来测试代码。
通过控制多个Cantata目标平台部署配置,平台独立性测试可以在多个目标平台上进行重用。
一旦测试被创建并通过后,继续重新运行它们,这样回归错误不会引入到之前的代码中,这就是为什么人们进行回归测试的原因。Cantata支持通过使用持续集成工具比如Jenkins进行自动化回归测试。
在GUI中开发Cantata测试时会生成一组Makefiles,用于从目标平台编译、链接、部署、执行并检索结果。Cantata的Makefiles可以与您的现有代码树和您自己的makefiles一起使用(避免为了测试而单独拷贝代码)。
Cantata的 Makefiles 也可以执行任何组合,或前置和后置构建或测试活动,并为您提供对环境初始化和报告的完全控制。它们允许与其它工具如QA-C(保持静态和动态测试同步)和Jenkins(为了持续集成)在开发和回归测试时集成。
对于功能测试和集成的代码覆盖率结果的定位诊断,Cantata提供了“向下钻取”的Eclipse视图。在需要更详细的诊断时,则可以在调试器的控制下单步运行测试。
可配置的报告将生成RTF、XML和HTML,连同用于认证的ASCII文本。
诊断和报告也可以通过可选的Cantata Team Reporting插件在多个用户上进行增强和聚合。
Cantata提供了全面的工具安全标准具体指南,用于软件安全标准测试的构建、执行和管理。
Cantata直接从目标平台自动生成用于认证准备的ASCII文本格式的功能测试和代码覆盖率结果。
适当的工具认证/合格审定工具包连同目标部署证据,为设备软件的认证提供了软件测试所有必需的证据。