Cantata 25.07版本全新发布!此版本为以代码编辑器为中心的用户添加了更多功能,包括完整的CLI测试脚本创建和执行以及新的测试用例编辑,更新了最新铁路软件标准EN 50716:2023的工具认证,增强了代码覆盖率报告,并进一步扩展了支持的平台。此外,在此版本中修复了核心组件和辅助工具中的许多错误。
Cantata 25.07还包含许多其他生产力和灵活性增强以及修复。全套更改记录在发行说明中,该说明跟踪了Cantata自4.0版本以来的所有更改。此版本中最重要的更改将在以下部分中突出显示。
完整的CLI测试脚本生成
对于许多以代码编辑器为中心的Cantata用户(例如在VSCode等编辑器中开发测试的用户)来说,Cantata 25.07中的新命令行测试脚本生成器实用程序将是一个受欢迎的生产力提升。这个新的headless Eclipse实用程序使用一些可配置的选项和其他默认设置,完全从命令行生成Cantata测试脚本。
只要有一个现有的Eclipse工作区,该实用程序就会提供生成工作测试脚本所需的所有选项,包括:
- 测试的位置,绝对和相对路径
- 测试脚本名字
- CSI文件位置
- 桩和封装函数的生成
- 使用Cantata makefile构建测试或将其放置在正在测试的源代码旁边
- 测试用例生成(无用例、每函数1用例、AutoTest以及使用或不使用测试步骤)
- 代码覆盖率规则集
新的设置测试输入的宏
在25.07版本中,为以代码编辑器为中心的用户添加了新的Cantata Library宏 SET_TEST_INPUT。这增加了编辑测试脚本时的功能,可以直接设置输入值并将该输入值记录到生成的Cantata测试结果文件(.CTR)中,而不用复制代码。这个新宏只接受一个参数var,它应该是一个有效的变量赋值。以下示例显示了一个测试用例和生成的测试结果报告部分。
图 1 测试用例
图 2 测试结果文件片段
CPPGETCOV扩展上下文覆盖率
Cantata的经过认证的工具CPPGETCOV是一个可执行文件,在一个或多个Cantata代码覆盖率(.COV)文件上运行,以生成适合认证的Cantata测试结果文件(.CTR)。传统的代码覆盖率衡量源代码构造的执行情况,但不考虑代码对象执行的上下文。根据上下文的不同,相同的源代码可能表现不同(例如,在多个线程中运行、在多个继承中运行多态基类代码或在不同状态下运行状态机代码)。Cantata提供了将结构代码覆盖率与其执行上下文叠加(测量和过滤)的能力。这允许用户根据上下文区分代码覆盖率。Cantata上下文覆盖的应用包括:
- 继承
- 状态机
- 线程
Cantata会自动收集继承上下文的代码覆盖率。可以使用添加到测试脚本中的user_context_function来设置状态上下文或线程上下文的代码覆盖率,该函数定义了执行被测源代码的可能不同上下文。
在Cantata 25.07中,CPPGETCOV得到了增强,可以对不同的代码上下文进行覆盖率报告。--context:<string>参数指定覆盖率报告的上下文字符串,而--function:<name>参数指定要报告的函数或方法。这两个参数默认都是“*”。
故障修复
核心组件
经过认证的核心组件中有30多个缺陷得到了解决。亮点包括:
- 修复了调用返回覆盖率与模板函数、lambds和构造函数不一致的问题。
- 改进了与Boost和C++20构造的兼容性。
- 增强CTR2HTML转换逻辑。
许可证日志、测试工具缓冲区管理和表达式评估的稳定性改进。
补充工具
补充工具的改进。亮点包括:
- AutoTest增强了对复杂数据类型和联合访问的处理
- Eclipse UI元素、测试用例生成和部署工具可靠性的修复
- 为国际用户更正缺失或错误报告的教程内容
更新了平台支持版本
Cantata的每个版本都有支持平台的变化。
Cantata紧密地与Eclipse®的IDE环境集成,提供Eclipse-Ready®插件。Cantata 25.07建立在Eclipse 2024-12版本(Eclipse 4.34)上,也可以作为从Neon(4.6)版本直到Eclipse 2023-12(4.30)版本的Eclipse-Ready插件来安装:
- Eclipse 4.6 (Neon)
- Eclipse 4.7 (Oxygen)
- Eclipse 4.9 (2018-09)
- Eclipse 4.14 (2019-12)
- Eclipse 4.15 (2020-03)
- Eclipse 4.16 (2020-06)
- Eclipse 4.19 (2021-03)
- Eclipse 4.23 (2022-03)
- Eclipse 4.24 (2022-06)
- Eclipse 4.30 (2023-12)
Cantata 25.07增加了对Microsoft Visual Studio 2022和GNU GCC for C/C++ 14和15版本。完整的支持平台列表如下:
在Windows(32和64位)版本7、8/8.1、10、11上:
- Microsoft Visual C++ (32-bit): 2010, 2013, 2015, 2017, 2019, 2022
GNU GCC for C/C++: 4.6.2 to 13.2.x
在Linux(32和64位)内核发行版无关版本3.x、4.x、5.x、6.x上:
GNU GCC for C/C++: 3.4.6 to 15.1.x
了解更多有关Cantata的技术信息及商务服务,请访问http://www.softtest.cn/留言,或按以下方式联系旋极智能:
获取更多资讯▼关注我们
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。