提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2021-07-22 10:09:05.827|阅读 231 次
概述:Parasoft C/C++test 附带了 CMake 的扩展,允许将 C/C++test 的代码覆盖率分析直接集成到 CMake 项目中。因此,在运行检测的应用程序或执行功能或单元测试后,将创建 C/C++ 测试覆盖率日志文件。然后可以使用覆盖率日志文件生成完整的代码覆盖率报告。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
Parasoft C/C++test针对C/C++开发的专业白盒自动化测试方案,能有效提高软件开发效率和代码质量。C++test 可以进行静态分析,全面代码审查,运行时错误检测,并在单元测试和组件测试中集成覆盖率分析。
Parasoft C/C++test 附带了 CMake 的扩展,允许您将 C/C++test 的代码覆盖率分析直接集成到您的 CMake 项目中。该扩展会cpptestcc在构建项目时自动修改编译器/链接器命令行以使用覆盖工具。因此,在您运行检测的应用程序或执行功能或单元测试后,将创建 C/C++ 测试覆盖率日志文件 (.clog)。然后可以使用覆盖率日志文件生成完整的代码覆盖率报告。
对 CMake 集成的支持包括:
此外,<CPPTEST_INSTALL_DIR>/examples/Timer目录包括一个示例项目,用于演示收集CMake项目的代码覆盖率。
复制到您的 CMake 项目。 <CPPTEST_INSTALL_DIR>/integration/cmake/cpptest-coverage.cmake
查看文件中的覆盖配置详细信息并根据需要更新选项。至少,必须确保使用该选项指定的编译器配置与您的编译器相匹配。有关可用选项,请参阅自定义 CMake 的 Coverage Extension。 cpptest-coverage.cmake CPPTEST_COMPILER_ID
将cpptest-coverage.cmake扩展包含到您的主 CMakeLists.txt构建文件中。扩展必须在所有构建目标定义之前,以确保自动修改编译器/链接器命令行。
CPPTEST_COVERAGE and CPPTEST_HOME在配置和构建 CMake 项目时使用选项激活扩展:
> cmake -DCPPTEST_COVERAGE=ON -DCPPTEST_HOME=<CPPTEST_INSTALL_DIR> ..
|
默认情况下,C/C++test 的覆盖率数据文件将在. <CMAKE_BINARY_DIR>/cpptest-coverage/<CMAKE_PROJECT_NAME>/.cpptest
运行您的应用程序或执行您的功能或单元测试。
默认情况下,C/C++test 覆盖率日志文件 ( .clog ) 将在.clog中创建 <CMAKE_BINARY_DIR>/cpptest-coverage/<CMAKE_PROJECT_NAME>/<CMAKE_PROJECT_NAME>.clog。
运行helper 目标以生成覆盖率报告: cpptest_coverage_report
> make cpptest_coverage_report
|
覆盖率报告将在以下位置生成:<CMAKE_BINARY_DIR>/cpptest-coverage/<CMAKE_PROJECT_NAME>/reports.
我们建议使用cpptest_coverage_report目标生成覆盖率报告。另外,您也可以使用cpptestcli与覆盖测试配置和.clog文件作为输入:
> cd <CMAKE_BINARY_DIR>/cpptest-coverage/<CMAKE_PROJECT_NAME>
> cpptestcli -config "builtin://Coverage" -input <CMAKE_PROJECT_NAME>.clog
|
要使用 C/C++test 扩展自定义收集覆盖率,请打开cpptest-coverage.cmake 您复制到 CMake 项目的文件并修改 C/C++test 选项。
选项名称
|
描述
|
默认
|
---|---|---|
CPPTEST_COMPILER_ID |
指定与您的编译器匹配的编译器配置。 |
gcc_9-64 |
CPPTEST_COVERAGE_TYPE_FLAGS | 指定覆盖类型。有关可用选项,请参阅 cpptestcc 的命令行参考。 | -优化线覆盖 |
CPPTEST_COVERAGE_WORKSPACE | 指定覆盖工具的工作空间路径,默认情况下存储 C/C++test 的覆盖数据文件。 | <CMAKE_BINARY_DIR>/cpptest-coverage/<CMAKE_PROJECT_NAME> |
CPPTEST_COVERAGE_LOG_FILE |
指定 C/C++test 覆盖率日志文件 ( .clog )的名称和位置。 重要提示:在运行检测的应用程序之前,您必须确保覆盖日志目录存在。 |
<CPPTEST_COVERAGE_WORKSPACE>/<CMAKE_PROJECT_NAME>.clog |
CPPTEST_CPPTESTCC_OPTS | 指定cpptestcc覆盖工具的选项 。 |
|
此外,您可能需要查看:
本节演示如何使用 C/C++test 的 CMake 覆盖扩展为位于<CPPTEST_INSTALL_DIR>/examples/Timer 目录中的示例项目收集覆盖数据。该定时器项目配置为使用cpptest-coverage.cmake附带的扩展<CPPTEST_INSTALL_DIR>/integration/cmake。
要收集示例项目的覆盖率:
构建示例项目:
> cd <CPPTEST_INSTALL_DIR>/examples/Timer
> mkdir build
> cd build
> cmake -DCPPTEST_COVERAGE=ON -DCPPTEST_HOME=<CPPTEST_INSTALL_DIR> ..
> make
|
运行应用程序:
> ./timer
|
生成覆盖率报告:
> make cpptest_coverage_report
|
报告将在<CPPTEST_INSTALL_DIR>/examples/Timer/build/cpptest-coverage/Timer/reports.
Parasoft是一家专门提供软件测试解决方案的公司,帮助企业打造无缺陷的软件。
从开发到质量检查,Parasoft的技术通过集成静态和运行时分析,单元、功能和API测试,以及服务虚拟化,在不牺牲质量和安全性的情况下加快软件交付,节约交付成本。
强大的报告和分析功能可帮助用户快速查明有风险的代码区域,并了解新代码更改如何影响其软件质量,而突破性的技术将人工智能和机器学习添加到软件测试中,使组织更容易采用和扩展跨开发和测试团队的有效的软件测试实践。
Parasoft针对C/C++、Java、.NET和嵌入式的开发测试都有着30多年的深入研究,很多全国500强企业使用Parasoft的产品实现了软件快速、高质量的交付。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢