当前位置: 首页 > wzjs >正文

网站建设与维护内容乔拓云建站平台

网站建设与维护内容,乔拓云建站平台,挂甲寺网站建设,社交网站开发平台cmake作为一个强大的构建系统指导工具,同时也提供了测试功能,可用于项目的单元测试等,也可以与其他测试框架协作,如googletest,共同完成项目开发中的测试工作,本节我们就来学习 如何借助cmake 完成测试 本专…

cmake作为一个强大的构建系统指导工具,同时也提供了测试功能,可用于项目的单元测试等,也可以与其他测试框架协作,如googletest,共同完成项目开发中的测试工作,本节我们就来学习 如何借助cmake 完成测试

本专栏的实践代码全部放在 github 上,欢迎 star !!!

如有问题,欢迎留言、或加群【392784757】交流

接下来给出我们本节的CMakeLists.txt 文件

cmake_minimum_required(VERSION 3.20)project(test_ctest)file(WRITE test_ctest.cpp [=[#include <iostream>
using namespace std;int main(int argc,char* argv[])
{if(argc <=1 ) // 没有传递参数return -1;cout<<argv[1]<<endl;return 0;
}
]=])add_executable(test_ctest test_ctest.cpp)# 测试用例
add_test(NAME test_return_-1 #
COMMAND test_ctest 
)add_test(NAME test_return_0 #
COMMAND test_ctest test_return_0
)##################
add_test(NAME test_success # 测试控制台输出
COMMAND test_ctest success)set_tests_properties(test_success
PROPERTIES
PASS_REGULAR_EXPRESSION success #成功字符串匹配正则)add_test(NAME test_failed # 测试控制台输出
COMMAND test_ctest failed) 
set_tests_properties(test_failed
PROPERTIES
FAIL_REGULAR_EXPRESSION failed #成功字符串匹配正则)enable_testing()

接下来,我们将逐行进行解释,

首先,我们来明确一下测试,将我们的程序的输出与期待输出进行判断
程序的输出 在这里分为两种情况
程序运行 控制台输出
程序运行 返回值 (最常见的也就是 main 函数 返回 0 还是 -1)

也就是对程序的执行过程进行验证,是否符合我们的预期

cmake 测试

涉及命令

  • add_test()
add_test(NAME <name> 
COMMAND <command> [<arg>...] # 具体执行的命令 也就是 运行程序
[CONFIGURATIONS <config>...]
[WORKING_DIRECTORY <dir>]
[COMMAND_EXPAND_LISTS])
  • set_tests_properties()
    设定测试属性
    PASS_REGULAR_EXPRESSION 匹配失败的控制台输出
    FAIL_REGULAR_EXPRESSION 匹配成功的控制台输出

如下面的事例,
程序输出 success ,则程序运行符合逻辑,即测试通过
程序输出 failed,则程序运行不符合逻辑,测试未通过

add_test(NAME test_success # 测试控制台输出
COMMAND test_ctest success
)set_tests_properties(test_success
PROPERTIES
PASS_REGULAR_EXPRESSION success #成功字符串 匹配正则
)add_test(NAME test_failed # 测试控制台输出
COMMAND test_ctest failed) 
set_tests_properties(test_failed
PROPERTIES
FAIL_REGULAR_EXPRESSION failed #成功字符串匹配正则
  • enable_testing()
    启用测试

构建过程

cmake -S . -B buildcmake --build buildcd build 
ctest -C Debug

输出测试结果
在这里插入图片描述

http://www.dtcms.com/wzjs/503557.html

相关文章:

  • 什么软件可以做网站天门seo
  • 旅游行业做网站免费自媒体网站
  • 高级营销型网站建设优化大师下载
  • 如何攻击织梦做的网站网页设计代做
  • 2015年做网站行不行百度seo关键词排名优化软件
  • 佛山做网站制作公司找百度
  • 做网站图标的软件网站关键词
  • 做网站服装app怎样做推广是免费的
  • 长葛做网站免费网络营销推广软件
  • 公司网站实名认证怎么做百度用户服务中心官网
  • 什么网站做3d模型能赚钱灰色广告投放平台
  • 营销网站制作哪家好优化大师有用吗
  • 水立方建设集团有限公司网站销售方案
  • 商城网站不易优化谷歌网站优化
  • wordpress错误怎么解决方法seo优化工作
  • 汽车营销服务网站建设南和网站seo
  • 支付行业的网站怎么做baidu百度一下
  • 6生肖竞猜网站建设搜狐新闻手机网
  • 建设企业网站开发公司软文文案
  • 可以做专利聚类分析的免费网站太原今日新闻最新头条
  • 如何新建一个网站昆明网站seo公司
  • 做经营性的网站需要注册什么厦门seo怎么做
  • 企业门户网站建设方案文档外包公司的优势和劣势
  • 聊城高端网站建设价格重庆网页优化seo
  • 知名小蚁人网站建设免费发帖推广平台有哪些
  • 怎么在programmableweb 网站做api分析图表网站制作的服务怎么样
  • 泰安网站建设入门湖南seo博客seo交流
  • 东莞企业网站推广网络营销的主要传播渠道是
  • php做网站需要html网站首页推广
  • 三亚专业做网站免费seo快速排名系统