这是 lcov 命令,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
lcov - 图形化 GCOV 前端
概要
冠状病毒 -c|- 捕获
[-d|- 目录 目录[-k|--内核目录 目录]
[-o|- 输出文件 跟踪文件[-t|--测试名称 测试名称]
[-b|--基目录 目录[-i|- 最初的[--gcov-工具 工具]
[--校验和[--无校验和[--无递归[-f|- 跟随]
[--compat-libtool[--no-compat-libtool[--忽略错误 错误]
[--打包 包[--从包 包[-q|- 安静的]
[--无标记[- 外部的[--无外部]
[--配置文件 配置文件[--rc 关键词=折扣值]
[--兼容 模式=开|关|自动]
冠状病毒 -z|--零计数器
[-d|- 目录 目录[--无递归[-f|- 跟随]
[-q|- 安静的]
冠状病毒 -l|- 列表 跟踪文件
[-q|- 安静的[--list-完整路径[--无列表完整路径]
[--配置文件 配置文件[--rc 关键词=折扣值]
冠状病毒 -a|--添加跟踪文件 跟踪文件
[-o|- 输出文件 跟踪文件[--校验和[--无校验和]
[-q|- 安静的[--配置文件 配置文件[--rc 关键词=折扣值]
冠状病毒 -e|- 提炼 跟踪文件 模式
[-o|- 输出文件 跟踪文件[--校验和[--无校验和]
[-q|- 安静的[--配置文件 配置文件[--rc 关键词=折扣值]
冠状病毒 -r|- 消除 跟踪文件 模式
[-o|- 输出文件 跟踪文件[--校验和[--无校验和]
[-q|- 安静的[--配置文件 配置文件[--rc 关键词=折扣值]
冠状病毒 --差异 跟踪文件 差异
[-o|- 输出文件 跟踪文件[--校验和[--无校验和]
[--转换文件名[- 跳闸 深度[- 小路 径[-q|- 安静的]
[--配置文件 配置文件[--rc 关键词=折扣值]
冠状病毒 - 概括 跟踪文件
[-q|- 安静的]
冠状病毒 [-h| - 帮帮我[-v|- 版]
商品描述
冠状病毒 是 GCC 覆盖测试工具 gcov 的图形前端。 它收集线,
多个源文件的函数和分支覆盖数据并创建 HTML 页面
包含用覆盖信息注释的源代码。 它还添加了概述
页面,以便在文件结构中轻松导航。
使用 VHDL 语言编写 冠状病毒 收集覆盖数据和 根html 创建 HTML 页面。 覆盖数据可以
从当前运行的 Linux 内核或用户空间收集
应用。 为此,您必须完成以下准备步骤:
对于 Linux 内核覆盖:
按照 gcov-kernel 基础设施的设置说明进行操作:
http://ltp.sourceforge.net/coverage/gcov.php
对于用户空间应用程序覆盖:
使用选项“-fprofile-arcs”和 GCC 编译应用程序
“-ftest-覆盖率”。
请注意,此手册页指的是输出格式 冠状病毒 作为“.info 文件”或
“tracefile”,GCOV 的输出称为“.da 文件”。
还要注意打印百分比时,0% 和 100% 仅在数值为
分别为 0% 和 100%。 其他通常会四舍五入为 0% 的值
或 100% 被打印为最接近的非边界值。 这种行为符合
与那个 冠状病毒(1) 工具。
配置
-a 跟踪文件
--添加跟踪文件 跟踪文件
添加内容 跟踪文件.
使用 -a 开关指定多个跟踪文件以组合覆盖数据
通过将匹配测试的执行计数相加并包含在这些文件中
文件名组合。
添加操作的结果将写入标准输出或跟踪文件
用 -o 指定。
在 a 中只能指定 -z、-c、-a、-e、-r、-l、--diff 或 --summary 之一
时间。
-b 目录
--基目录 目录
使用 VHDL 语言编写 目录 作为相对路径的基目录。
使用此选项指定构建环境的基目录,当 lcov
产生如下错误信息:
错误:无法读取源文件
/home/user/project/subdir1/subdir2/subdir1/subdir2/file.c
在此示例中,使用 /home/user/project 作为基本目录。
在使用 libtool 或类似工具构建的项目上使用 lcov 时需要此选项
构建使用基本目录的环境,即环境,其中
调用编译器时的当前工作目录与
源代码文件所在的位置。
请注意,此选项在多个基本目录的环境中不起作用
被使用。 在这种情况下使用配置文件设置 geninfo_auto_base=1 (见
洛夫克(5))。
-c
- 捕获
捕获覆盖数据。
默认情况下捕获当前内核执行计数并写入结果
覆盖数据到标准输出。 使用 --directory 选项捕获计数
对于用户空间程序。
捕获操作的结果将写入标准输出或跟踪文件
用 -o 指定。
在 a 中只能指定 -z、-c、-a、-e、-r、-l、--diff 或 --summary 之一
时间。
--校验和
--无校验和
指定写入跟踪文件时是否生成校验和数据。
使用 --checksum 启用校验和生成或使用 --no-checksum 禁用它。
校验和生成是 禁用 默认情况下。
启用校验和生成后,将为每个源生成一个校验和
代码行并与覆盖数据一起存储。 该校验和将用于
防止尝试组合来自不同源代码版本的覆盖率数据。
如果您不使用不同的源代码版本,请禁用此选项以加快速度
向上覆盖数据处理并减少跟踪文件的大小。
--兼容 模式=折扣值[,模式=折扣值……]
设置兼容模式。
使用 --compat 指定 lcov 应启用一种或多种兼容模式
在捕获覆盖数据时。 您可以提供以逗号分隔的 mode=value 列表
对指定多种模式的值。
有效 价值观 是:
on
启用兼容模式。
折扣
禁用兼容模式。
汽车
应用自动检测来确定是否需要兼容模式。 笔记
并非所有兼容模式都可以使用自动检测。
如果未指定值,则假定“on”为默认值。
有效 模式 是:
的libtool
如果您正在为一个项目捕获覆盖数据,请启用此模式
使用 libtool 机制构建。 另请参阅--compat-libtool。
此设置的默认值为“on”。
锤
如果您正在为一个项目捕获覆盖数据,请启用此模式
使用包含修改(锤子补丁)的 GCC 3.3 版本构建
以后的 GCC 版本。 您可以通过检查修改的 GCC 3.3
为以扩展名“.bbg”结尾的文件构建项目目录。
GCC 3.3 的未修改版本将这些文件命名为“.bb”。
此设置的默认值为“自动”。
分割CRC
如果您正在为一个项目捕获覆盖数据,请启用此模式
使用包含修改的 GCC 4.6 版本构建(拆分
函数校验和)的更高版本的 GCC。 典型的错误消息时
对此类 GCC 版本生成的覆盖数据运行 lcov
内存'和'到达意外的文件结尾'。
此设置的默认值为“自动”
--compat-libtool
--no-compat-libtool
指定是否启用 libtool 兼容模式。
使用 --compat-libtool 启用 libtool 兼容模式或 --no-compat-libtool
禁用它。 libtool 兼容模式是 启用 默认情况下。
当启用 libtool 兼容模式时,lcov 将假定源代码
与位于名为“.libs”的目录中的 .da 文件相关的可以在其
父目录。
如果您的构建环境中有名为“.libs”的目录但不要使用
libtool,禁用此选项以防止在捕获覆盖数据时出现问题。
--配置文件 配置文件
指定要使用的配置文件。
指定此选项时,系统范围的配置文件
/etc/lcovrc,也不是每个用户的配置文件 〜/.lcovrc 被读取。
当需要运行多个实例时,此选项可能很有用 冠状病毒
并行使用不同的配置文件选项。
--转换文件名
应用差异时转换文件名。
将此选项与 --diff 一起使用可重命名已处理数据的文件名
根据 diff 提供的数据进行设置。
--差异 跟踪文件 差异文件
将覆盖数据转换为 跟踪文件 使用源代码差异文件 差异文件.
如果要合并来自不同源代码的覆盖率数据,请使用此选项
程序的级别,例如,当您从旧版本中获取数据并希望
将其与来自更新版本的数据相结合。 冠状病毒 将尝试映射源
这些版本之间的代码行并分别调整覆盖率数据。
差异文件 需要采用统一格式,即必须使用“-u”创建
的选项 差异 工具。
请注意,旧版本中不存在的行将不计入
已检测,因此不应将此操作产生的跟踪文件
单独解释,但与其他来自较新的跟踪文件一起解释
版本。 另请记住,转换后的覆盖率数据应仅用于
概述目的,因为过程本身会导致准确性的损失。
diff 操作的结果将写入标准输出或跟踪文件
用 -o 指定。
在 a 中只能指定 -z、-c、-a、-e、-r、-l、--diff 或 --summary 之一
时间。
-d 目录
- 目录 目录
使用 .da 文件 目录 而不是内核。
如果要处理用户空间程序的覆盖数据,请使用此选项
指定程序编译的位置(这是计数器文件的位置
将存储以 .da 结尾)。
请注意,您可以多次指定此选项。
- 外部的
--无外部
指定是否捕获外部源文件的覆盖率数据。
外部源文件是不在目录之一中的文件
由 --directory 或 --base-directory 指定。 使用 --external 包含外部
源文件同时捕获覆盖率数据或 --no-external 忽略此数据。
外部源文件的数据是 包括 默认情况下。
-e 跟踪文件 模式
- 提炼 跟踪文件 模式
从中提取数据 跟踪文件.
如果您只想提取一组特定的覆盖数据,请使用此开关
跟踪文件中的文件。 额外的命令行参数将被解释为
shell 通配符模式(请注意,它们可能需要相应地转义
防止外壳首先扩展它们)。 中的每个文件条目 跟踪文件 这
匹配这些模式中的至少一个将被提取。
提取操作的结果将写入标准输出或跟踪文件
用 -o 指定。
在 a 中只能指定 -z、-c、-a、-e、-r、-l、--diff 或 --summary 之一
时间。
-f
- 跟随
搜索 .da 文件时遵循链接。
--从包 包
使用 .da 文件 包 而不是内核或目录。
如果您有单独的机器用于构建和测试并且想要
在构建机器上执行 .info 文件创建。 查看 --to-package 了解更多
信息。
--gcov-工具 工具
指定 gcov 工具的位置。
-h
- 帮帮我
打印一个简短的帮助文本,然后退出。
--忽略错误 错误
指定错误列表,之后继续处理。
使用此选项指定一个或多个错误类别的列表,之后 lcov
应该继续处理而不是中止。
错误 可以是以下关键字的逗号分隔列表:
冠状病毒: gcov 工具以非零返回码返回。
来源: 找不到数据集的源代码文件。
图形: 图形文件无法找到或已损坏。
-i
- 最初的
捕获初始零覆盖数据。
在包含 .bb、.bbg 或 .gcno 的目录上使用 -c 和此选项运行 lcov
运行任何测试用例之前的文件。 结果是一个“基线”覆盖数据文件
包含每条检测线的零覆盖率。 合并这个数据文件
(使用 lcov -a)测试运行后捕获的覆盖数据文件,以确保
即使不是所有源代码,总行数的百分比也是正确的
测试期间加载了文件。
为测试用例捕获数据时的推荐程序:
1.创建基线覆盖数据文件
# lcov -c -i -d appdir -o app_base.info
2. 执行测试
# 应用目录/测试
3.创建测试覆盖数据文件
# lcov -c -d appdir -o app_test.info
4. 结合基线和测试覆盖率数据
# lcov -a app_base.info -a app_test.info -o app_total.info
-k 子目录
--内核目录 子目录
仅从以下位置捕获内核覆盖数据 子目录.
如果您不想获取所有内核的覆盖数据,请使用此选项,但是
仅适用于特定的子目录。 可以多次指定此选项。
请注意,您可能需要指定内核子目录的完整路径
取决于内核 gcov 支持的版本。
-l 跟踪文件
- 列表 跟踪文件
列出内容 跟踪文件.
在 a 中只能指定 -z、-c、-a、-e、-r、-l、--diff 或 --summary 之一
时间。
--list-完整路径
--无列表完整路径
指定是否在列表操作期间显示完整路径。
使用 --list-full-path 在列表操作期间显示完整路径或
--no-list-full-path 显示缩短的路径。 路径是 缩短 默认情况下。
--无标记
如果您想在不考虑排除的情况下获取覆盖数据,请使用此选项
源代码文件中的标记。 看 基因信息 (1) 有关排除标记的详细信息。
--无递归
如果您只想获取指定目录的覆盖数据,请使用此选项
不处理子目录。
-o 跟踪文件
- 输出文件 跟踪文件
将数据写入 跟踪文件 而不是标准输出。
指定“-”作为文件名以使用标准输出。
按照惯例,lcov 生成的覆盖数据文件被称为“跟踪文件”和
应该有文件扩展名“.info”。
- 小路 径
应用差异时从文件名中去除路径。
将此选项与 --diff 一起使用以告诉 lcov 忽略指定的
跟踪文件和差异文件名之间匹配时的初始路径组件。
-q
- 安静的
不要打印进度消息。
当没有指定输出文件名以阻止进度时,此选项是隐含的
消息混淆覆盖数据,这些数据也打印到标准输出。
--rc 关键词=折扣值
覆盖配置指令。
使用此选项指定一个 关键词=折扣值 语句覆盖
lcovrc配置文件中对应的配置语句。 你可以
多次指定此选项以覆盖多个配置语句。
参见 洛夫克(5) 获取可用关键字及其含义的列表。
-r 跟踪文件 模式
- 消除 跟踪文件 模式
从中删除数据 跟踪文件.
如果要删除特定文件集的覆盖率数据,请使用此开关
来自跟踪文件。 额外的命令行参数将被解释为 shell
通配符模式(请注意,它们可能需要相应地进行转义以防止
壳首先扩展它们)。 中的每个文件条目 跟踪文件 匹配于
这些模式中的至少一种将被删除。
删除操作的结果将写入标准输出或跟踪文件
用 -o 指定。
在 a 中只能指定 -z、-c、-a、-e、-r、-l、--diff 或 --summary 之一
时间。
- 跳闸 深度
应用差异时剥离路径组件。
将此选项与 --diff 一起使用以告诉 lcov 忽略指定的数字
匹配跟踪文件和差异文件名时的初始目录。
- 概括 跟踪文件
显示指定跟踪文件的摘要覆盖率信息。
请注意,您可以多次指定此选项。
在 a 中只能指定 -z、-c、-a、-e、-r、-l、--diff 或 --summary 之一
时间。
-t 测试名称
--测试名称 测试名称
指定要存储在跟踪文件中的测试名称。
当多个数据集合并时,此名称标识覆盖数据集
组合跟踪文件(请参阅选项 -a)。
有效的测试名称可以由字母、十进制数字和下划线组成
特点 (”_”)。
--打包 包
存储 .da 文件以供以后处理。
如果您有单独的机器用于构建和测试并且想要
在构建机器上执行 .info 文件创建。 要做到这一点,请遵循这些
脚步:
在测试机上:
- 运行测试
- 运行 lcov -c [-d 目录] --to-package 文件
- 复制 文件 到构建机器
在构建机器上:
- 运行 lcov -c --from-package 文件 [-o 和其他选项]
这适用于内核和用户空间覆盖数据。 请注意,您可能有
使用 -b 和 --to-package 或
--来自包。 另请注意,必须将包数据转换为 .info 文件
在重新编译程序之前,否则程序将失效。
-v
- 版
打印版本号,然后退出。
-z
--零计数器
将所有执行计数重置为零。
默认情况下尝试重置内核执行计数。 使用 --directory 选项
重置用户空间程序的所有计数器。
在 a 中只能指定 -z、-c、-a、-e、-r、-l、--diff 或 --summary 之一
时间。
使用 onworks.net 服务在线使用 lcov