首页 > 编程语言 >C++测试技能

C++测试技能

时间:2023-10-10 12:22:25浏览次数:33  
标签:capacity REQUIRE C++ vector 测试 技能 CHECK size

google test ?gtestdoetest?doctest

的引入和编译问题。

编译和引入、api的使用会影响测试开发的体验

功能是否丰富(对模板等测试)影响到测试的结果

 

 

这里的两个subcase的执行是并行的,都是先从头去执行一次vector的构造 然后再挑选一个subcase进入

TEST_CASE("vectors can be sized and resized") {
     std::vector<int> v(5);
     //1
     REQUIRE(v.size() == 5);
     REQUIRE(v.capacity() >= 5);
 ​
     SUBCASE("adding to the vector increases it's size") {
         //2
         v.push_back(1);
 ​
         CHECK(v.size() == 6);
         CHECK(v.capacity() >= 6);
     }
     SUBCASE("reserving increases just the capacity") {
         //3
         v.reserve(6);
 ​
         CHECK(v.size() == 5);
         CHECK(v.capacity() >= 6);
     }
 }

 

测试尽量别在Debug模式下做,要在最高的优化等级下,尽量关键代码被优化的情况下去测,追求最高的效率

标签:capacity,REQUIRE,C++,vector,测试,技能,CHECK,size
From: https://www.cnblogs.com/synapse331/p/17754351.html

相关文章

  • BLE通信距离的评估与测试
    BLE通信距离的评估与测试​ 在实际工程中,确定一个蓝牙产品的通信距离是非常重要的。经常有用户会疑问为什么都是蓝牙产品,人家公司的产品通信距离那么远,自己的产品只能在很近的地方搜到信号?这里我们将对蓝牙通信距离的影响因素和如何进行评估和测试进行分析。弗里斯传输公式​ ......
  • C++11之类型转换(2千字长文详解)
    C++11之类型转换C语言中的类型转换在C语言中,如果赋值运算符左右两侧类型不同,或者形参与实参类型不匹配,或者返回值类型与接收返回值类型不一致时,就需要发生类型转化,C语言中总共有两种形式的类型转换:隐式类型转换和显式类型转换。隐式类型转化:编译器在编译阶段自动进行,能转就......
  • curl测试HTTP请求各阶段时间
    #使用CURL检测Clinet侧发起的HTTP请求各阶段时间,命令参考:curl-o/dev/null-s-wcurl-o/dev/null-s-wtime_namelookup:"\t"%{time_namelookup}"\n"time_connect:"\t\t"%{time_connect}"\n"time_appconnect:"\t"%{time_appconn......
  • shell_条件判断_条件变量测试
    条件测试变量测试变量测试就是把字符串信息,写入到变量中注意!!!对变量测试,必须加双引号[root@localhosttmp]#[-e"$file1"]&&echo"该文件存在"||echo"$file1文件不存在"风景.jpg文件不存在[root@localhosttmp]#touch风景.jpg[root@localhosttmp]#[-e"$file1......
  • RK3588平台产测之ArmSoM-W3软硬件重启测试
    1.简介专栏总目录ArmSoM团队在产品量产之前都会对产品做几次专业化的功能测试以及性能压力测试,以此来保证产品的质量以及稳定性优秀的产品都要进行多次全方位的功能测试以及性能压力测试才能够经得起市场的检验2.ArmSoM-W3软硬件重启测试方案软件方式重启系统3000......
  • 【C++ Primer】变量和基本类型
    目录二、变量三、复合类型四、const限定符五、处理类型六、自定义数据结构一、基本内置类型 1、算术类型分为整形和浮点型,常见的算术类型:char:1个字节,short:2个字节,int:2个字节,long:4个字节,float:4个字节,double:8个字节,longlong【c++11】:8个字节。可寻址的最小内存块称为“字节(byte)”,......
  • 【C++ Primer】表达式
    一、基础1、左值和右值:当一个对象被用作右值的时候,用的是对象的值(内容);当对象用作左值的时候,用的是对象的身份(在内存中的位置)。   需要用到左值的地方有:赋值运算符需要一个左值作为其左侧运算对象,得到的结果也是左值。取地址符作用与左值对象,返回的指针是右值。解引用和下标运算......
  • 【C++ Primer】字符串和数组
    一、命名空间的using声明1、using声明:usingnamespace::name,例如:usingstd::cin。一旦声明了上述语句,就可以直接访问命名空间的变量。每个变量都需要using声明,位于头文件中的代码不应该使用using声明。2、using编译:usingnamespacestd;直接使用整个命名空间。使用using声明比使用us......
  • 【C++ Primer】语句
     一、简单语句1、使用空语句时应该加上注释,从而令读这段代码的人知道该语句是有意省略的。2、程序块不以分号结束(但是类要以分号结束)。二、语句作用域1、可以在if、switch、while、for语句内定义变量(变量是临时的),在语句结束后变量就不起作用了,所以这些变量要初始化。三、条件语......
  • 【C++ Primer】函数
       函数是一个命名了的代码块,通过调用函数执行相应的代码,函数可重载。 一、函数基础实参初始化形参。return有两项工作:1、返回值(如果有的话);2、将控制权从被调函数转移回主调函数。 intfact(intval){intret=1;returnret>val?ret:val;}intmain(){......