新版Testwell CTC++带来哪些新变化?

Testwell CTC++在版本10中引入了新的工具ctcreport来直接从符号和数据文件生成HTML报告。详细的特性描述可以在测试井CTC++帮助中找到。在本文档中,描述了与前一代报告相比的改进和变化。

Adaptable Layout可调整布局

您可以选择一个适合于项目结构的布局。布局决定了报告的详细信息级别(目录、文件、函数)和生成的HTML页面类型(概述页面、详细信息页面、源代码视图)。布局在ctcreport-layout.ini文件夹中配置。

Reducing Generation Steps减少生成步骤

生成HTML报告时不再需要中间文本报告(profile.txt)。与ctcpost + ctc2html调用相比,报告生成通常也更快。

组合显示覆盖率

您可以选择要在报告中显示的覆盖率的任意组合和顺序。

使用选项度量-measures mcdc,d,s 生成了上面屏幕截图中的报告。

工程名

您可以使用您可以使用“-D "ProjectName=My Super Tool""。项目名称显示在报告的标题中。

头文件函数体报告

当一个包含的文件在多个函数体中进行预处理时,ctcpost只“提取”找到的第一个函数体,并报告所有其他变体作为其包含文件的一部分。

相比之下,ctcreport将头文件的每个函数体报告为一个独立的实体。所包含的文件从未作为其所包含的文件的一部分进行报告。

有条件编译代码的标识

条件预处理器指令之间的代码现在在所有情况下都被标识为活动的或非活动的,而不仅仅是如果内部有一个来自ctc的检测探测器。因此,ctcreport可靠地导出线路覆盖和代码部分已失活的视觉指示:

显示所有 Probe 信息

在源代码行上有一个检测探测的常见情况下,源代码视图会显示行旁边的真和假计数器,并抑制探测类型和描述。例如,当使用宏时,这可能导致起源不明确的计数器。

在新的HTML报告中,您可以通过选择 Source & Details > Show Coverage Details > Single Probe Descriptions。

当一行上有多个探针时,现在将始终显示第一个探针描述(与同一行上的所有其他探针一样)。

协助报告内部函数

在所有表格视图中,您可以按覆盖率或每个覆盖率度量的缺失命中数对表格数据进行排序。

在源代码视图中,您可以选择要显示的详细信息,并可以突出显示特定度量的计数器,以理解计算。

模板化的HTML

生成的HTML代码完全是从位于ctcreport文件夹中的一个名为html_template.zip的HTML模板集中绘制出来的。这个包包含用于概述页面、详细信息页面、源代码视图以及CSS和JavaScript资源的模板化HTML文件。

可以调整模板。在这种情况下,复制原始的,更改后将其归档到像my_template.zip这样的ZIP包中,然后用选项调用ctcreport -template my_template.

处理不同的构建/报告目录

当源代码在检测期间位于不同的目录中时,SOURCE_IDENTIFICATION设置为不同于“绝对”的值,并且过去使用ctc2html的-s选项在不同文件夹中查找源文件。

此功能完全被一个新功能所取代:将记录在符号文件中的源标识映射到可用于报告的源路径。选项映射源标识用于此目的。为了方便地显示长路径,可以选择缩短路径。为此,不再需要使用SOURCE_IDENTIFICATION=_。

交付包中的更改

因此,ctc2html不再是Testwell CTC++的一部分。ctcpost仍然用于生成文本或XML报告,以及分析和组合符号和数据文件。

”合并”注意事项

以下工作流:
1.生成XML报告,
2.将它们合并到一个文本报告中,
3.使用ctc2html从该文本报告生成HTML报告,

已经不再被完全支持了。在大多数情况下,您可以将符号和数据文件合并到HTML报告中。

对于在不同函数体中预处理的源文件(例如,由于#if),ctcreport在一个报告中独立显示该源或头文件的每个函数体,但不合并来自不同函数体的覆盖数据。

Linux的构建启动器ctclaunch

ctclaunch 可以用于直接与像CMake这样的构建工具交互,将构建命令作为输入,并注意使用所有编译器和链接器调用来调用ctc。

ctclaunch 从9.1版本开始用于Windows,现在引入于Linux。

我们建议尽可能使用ctc启动代替ctcwrap(标准或“-hard”模式)。如果您遇到任何问题,请与您的支持团队联系。我们希望在未来的版本中撤回ctcwrap。

在Windows改变ctclaunch的配置

为了简化在Windows和Linux上启动的使用,使用了一个名为ctclaunch.ini的配置文件。构建过程中使用的所有编译器和链接器必须都列在此文件的新配置参数PREPEND_CTC中,位于CTCHOME。

计算机启动时不再使用文件wrapcmds.txt。在升级时,您必须检查ctclaunch.ini中的编译器设置一次。

停用缺省值的检测工具

自9.1版本以来,缺省值,必须进行测试。对于C++代码,在最后一种情况下可能会导致初始化的编译问题。此代码

可以在编译为C代码时插入,但不能在编译为C++代码时插入。在版本10中,引入了一个新的配置参数MISSING_DEFAULT_INSTR,并在ctc.ini文件中设置为ON。

设置

符号和数据文件

由于这是一个主要版本,所以必须从头开始生成符号和数据文件。它们不能从以前的版本中使用。

Windows:可执行文件签名

在Windows上,安装程序和所有可执行文件现在都使用代码签名证书进行签名。此外,一个MD5散列也可用于所有的ZIP软件包。

许可证

从版本10开始,许可证控制包括所使用的测试井CTC++版本的发布日期。如果您有一个较旧的许可证文件,请联系您的销售经理为一个新的。新的许可文件允许使用在维护期结束之前发布的版本。

问题修复

在if-语句等中对编译常数决策的扩展识别。在9.0.0版本中引入的版本可能会导致崩溃和错误的分类。这种认可现在被一种新的实现所取代。

现在,如果一个决策只包含字符串、数字、字符、方括号、运算符、大小运算符、标准C类型、常量修饰量常量,那么它就被识别为编译时常数。

想要了解更多有关Testwell CTC++技术信息商务服务,请访问http://www.softtest.cn/留下您的详细需求或按以下方式联系旋极信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/150713.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt中的tr函数

2023年11月17日,周五上午 今天在学习Qt时,看到这样一行代码: setWindowTitle(tr("线程")); 于是我产生了几个疑问: 1、什么是tr函数? 2、为什么要写成setWindowTitle(tr("线程")),…

three.js实现管道漫游

先看效果&#xff1a; <template><div><el-container><el-main><div class"box-card-left"><div id"threejs" style"border: 1px solid red"></div><div class"box-right"><pre s…

xaml自动格式化:各个属性分行放置

快捷键&#xff1a;CtrlKD 设置自己需要的属性&#xff1a;工具->选项->文本编辑器->XAML->Formatting 效果如下&#xff1a;

深度学习YOLO图像视频足球和人体检测 - python opencv 计算机竞赛

文章目录 0 前言1 课题背景2 实现效果3 卷积神经网络4 Yolov5算法5 数据集6 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 深度学习YOLO图像视频足球和人体检测 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学长非…

【用unity实现100个游戏之16】Unity程序化生成随机2D地牢游戏1(附项目源码)

文章目录 先看看最终效果前言随机游走算法使用随机游走算法添加地板瓦片1. 新增TilemapVisualizer&#xff0c;用于可视化地图2. 瓦片素材 不运行执行程序化生成地牢方法1. 先简单重构代码2. 新增Editor脚本RandomDungeonGeneratorEditor 将参数保存到可编辑脚本对象&#xff0…

【前端】yarn install

yarn install yarn install 用于安装项目的所有依赖。 当你刚刚签出项目的代码时&#xff0c;或者当项目中的其他开发者添加了你需要选择的新依赖时&#xff0c;最常使用此方法。 如果你习惯使用 npm&#xff0c;你可能希望使用 --save 或 --save-dev。 这些已被 yarn add 和 …

Java-final

【1】修饰变量&#xff1b; 1.public class Test { 2. //这是一个main方法&#xff0c;是程序的入口&#xff1a; 3. public static void main(String[] args) { 4. //第1种情况&#xff1a; 5. //final修饰一个变量&#xff0c;变量的值不可以改变&#…

ios + vue3 Teleport + inset 兼容性问题

目录 1&#xff0c;问题表现2&#xff0c;解决步骤1&#xff0c;teleport 的问题2&#xff0c;inset 的问题3&#xff0c;teleport 的问题之二 1&#xff0c;问题表现 使用 vue3 的 Teleport 实现的 dialog 弹窗&#xff0c;但是在 ios app 中嵌套的 h5 中无法打开。 直接在io…

【考研数学】正交变换后如果不是标准型怎么办?| 关于二次型标准化的一些思考

文章目录 引言一、回顾二次型的定义是什么&#xff1f;什么叫标准二次型&#xff1f;怎么化为标准型&#xff1f; 二、思考写在最后 引言 前阵子做了下 20 年真题&#xff0c;问题大大的&#xff0c;现在订正到矩阵的第一个大题&#xff0c;是关于二次型正交变换的。和常规不同…

当代职场人做分析,当然要用大数据分析工具

不管是从效率、分析的可用性以及灵活性来看&#xff0c;用大数据分析工具都还板上钉钉的。毕竟大数据分析工具集齐了大数据时代数据分析工具应具备的特点优势。 1、对接ERP&#xff0c;立得100BI报表 点击对接金蝶、用友ERP后&#xff0c;BI系统立即即可取数分析&#xff0c;…

JS基础

javascript基础语言与其他语言大差不差&#xff0c;看代码理解即可。复习笔记 变量与数据类型 变量名要见名知意 变量名可以是字母、下划线、$&#xff0c;还有数字&#xff1b; 但是不能以数字开头小写字母开头&#xff0c; 多个单词&#xff0c;第二个单词首字母大写&#…

控制实体小车cartographer建图

cartographer建图 跑通官方例程 下载官方bag https://storage.googleapis.com/cartographer-public-data/bags/backpack_2d/cartographer_paper_deutsches_museum.bag运行bag roslaunch cartographer_ros demo_backpack_2d.launch bag_filename:${HOME}/workspace/carto_ws…

Swift-day 2

1、数据绑定&#xff0c;改变标题 State private var zoomed: Bool false 属性包装器包装的变量self.title 单向绑定 self.$textInput 双向绑定 传的是数据结构 self.title self.textInput 赋值是String self._titletitle //绑定类型加下划线2、数据绑定&#xff0c;传递结构…

webrtc 生成unpack_aecdump工具

1.下载webrtc代码 2.terminal 进入src目录下 3.构建目录&#xff1a; terminal执行&#xff1a;gn gen out/Release --argsis_component_buildfalse 4.构建可执行文件&#xff1a; terminal执行&#xff1a;ninja -C out/Release/ unpack_aecdump &#xff08;有可能报错…

数据仓库_模型设计_学习目录

前言&#xff1a; 1、问什么要写这篇博客&#xff1f; 随着自己在数仓岗位工作的年限增加&#xff0c;对数仓的理解和认知也在发生着变化 所有用这篇博客来记录工作中用到的知识点与经验 2、这篇博客主要记录了那些内容&#xff1f; 主要会记录一些数仓建设方法论和工作技巧 目…

Paging3的使用踩坑记录

一、Paging3介绍 Paging3是jetpack推出的一个分页加载库&#xff0c;用于方便开发者实现分页加载功能&#xff0c;支持显示加载状态&#xff0c;重试机制&#xff0c;支持协程与RxJava结合使用&#xff0c;相对于传统的分页加载方案&#xff0c;我们不需要关注recyclerview的滑…

铝合金钻孔铣削去毛刺加工之高速电主轴解决方案

铝合金是一种轻质、高强度的材料&#xff0c;其出色的机械性能和良好的导电性、导热性使其在工业领域广受青睐特别是在航空、航天和汽车制造中&#xff0c;铝合金的身影更是随处可见。在铝合金加工过程中&#xff0c;高速电主轴可精准而高效地完成钻孔、铣削和去毛刺等任务&…

Python大数据之linux学习总结——day09_hive调优

hive调优 hive官方配置url: https://cwiki.apache.org/confluence/display/Hive/ConfigurationProperties hive命令和参数配置 hive参数配置的意义: 开发Hive应用/调优时&#xff0c;不可避免地需要设定Hive的参数。设定Hive的参数可以调优HQL代码的执行效率&#xff0c;或帮…

云原生周刊:Istio 1.20.0 发布 | 2023.11.20

开源项目推荐 DevPod DevPod 是一款纯客户端工具&#xff0c;可在任何后端基于 devcontainer.json 创建可重现的开发人员环境。每个开发者环境都在一个容器中运行&#xff0c;并通过 devcontainer.json 进行指定。通过 DevPod 提供商&#xff0c;这些环境可以在任何后端创建&…

SpringBoot3 Actuator使用如何以及自定义端点

参考: https://www.yuque.com/leifengyang/springboot3/wsx0br0dalot1pqn 作用: 对线上应用进行观测、监控、预警… 比如: ● 健康状况【组件状态、存活状态】Health ● 运行指标【cpu、内存、垃圾回收、吞吐量、响应成功率…】Metrics ● 链路追踪 1.使用 1.场景引入 <…