学习使用Google Test

主要参考: 玩转Google开源C++单元测试框架Google Test系列(gtest)之一 - 初识gtest

 

配置好VS后, 编写第一个Demo.

 

   1:  // gTest.cpp : 定义控制台应用程序的入口点。
   2:  //
   3:   
   4:  #include "stdafx.h"
   5:   
   6:  int Foo(int a, int b)
   7:  {
   8:      if (a == 0 || b == 0)
   9:      {
  10:          throw "don't do that";
  11:      }
  12:      int c = a % b;
  13:      if (c == 0)
  14:          return b;
  15:      return Foo(b, c);
  16:  }
  17:   
  18:  int Add(int a, int b)
  19:  {
  20:      return a + b;
  21:  }
  22:   
  23:  #include <gtest/gtest.h>
  24:   
  25:  TEST(FooTest, HandleNoneZeroInput)
  26:  {
  27:      EXPECT_EQ(2, Foo(4, 10));
  28:      EXPECT_EQ(6, Foo(30, 18));
  29:      //ASSERT_EQ(3, Foo(3, 6));
  30:      //ASSERT_EQ(3, Foo(3, 7));
  31:      //EXPECT_EQ(3, Foo(5, 7));
  32:  }
  33:   
  34:  TEST(AddTest, HandleNoneZeroInput)
  35:  {
  36:      EXPECT_EQ(2, Add(1, 1));
  37:      //EXPECT_EQ(2, Add(1, 2));
  38:  }
  39:   
  40:  int _tmain(int argc, _TCHAR* argv[])
  41:  {
  42:      testing::InitGoogleTest(&argc, argv);
  43:      return RUN_ALL_TESTS();
  44:  }
  45:   

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

运行结果如下图所示:

时间: 2024-10-16 14:00:49

学习使用Google Test的相关文章

深度学习之Google Deepmind的alphago人工智能算法技术演变历程

  一.简介   有些人会有如下质疑"alphago都用了蒙特卡洛搜索树了,这变成了一部分搜索问题了并不是人工智能算法了或者说不够智能了",但我的拙见是人在思考问题的时候除了直觉.经验判断.逻辑推理之外也会去枚举.搜索,所以我觉得算法包含一部分搜索并不能直接说该算法这不够智能或者这不是智能算法了,我觉得更多的是要考虑该算法在该类问题上如何去刻画出人类的直觉.经验判断.逻辑推理等.   最近大家比较关心的围棋人机大战(alphago vs 李世石)中,deep mind基于Nature2

值得我们企业学习的Google五个品牌建设秘诀

中介交易 SEO诊断 淘宝客 云主机 技术大厅 你可以问任何一个设计师,他们可能都会认为谷歌(Google)的品牌标志是所有品牌标志中最丑的.现在很多企业,一旦新的CEO上任,很可能会改变品牌标志或是改变企业定位.然而,谷歌不仅一直坚持使用自己"丑陋"的品牌商标,同时还让它成为世界上最知名的企业标志之一,同时也是世界上最有价值的品牌.一如既往的品牌标志一致性是谷歌最显著的品牌建设秘诀之一,那么谷歌在营销方面还有什么值得企业学习的? 1.保持品牌标志一致,但并不偏执. 虽然谷歌的商标一直

专访 | 杨强教授谈CCAI、深度学习泡沫与人工智能入门

7 月 22 - 23 日,由中国人工智能学会.阿里巴巴集团 & 蚂蚁金服主办,CSDN.中国科学院自动化研究所承办,作为独家直播合作伙伴的第三届中国人工智能大会(CCAI 2017)将在杭州国际会议中心盛大开幕. 作为大会主席,香港科技大学计算机与工程系主任.AAAI Fellow 杨强教授最近接受了大会记者专访.这次访谈干货满满,其中有不少话题是杨强教授首度公开谈及,比如下一个 AI 突破口.深度学习泡沫.AI 之路心得.本科生入门 AI.好学生要能教导师学习,等等. (点击阅读杨强教授历史

初学者-新手问个问题,望回答?关于学习的方向

问题描述 新手问个问题,望回答?关于学习的方向 我是一个c++的初学者,尽管入大学之前学过一点c语言,但是在学完c++的基础篇之后 我不知道该怎么做才能有效率地进行学习,我希望以后能与界面优化和ui打交道,所以有 这条路的前辈请告诉我我该做什么,不求有推荐什么书籍什么的,只要告诉我一条模糊的' 路线我就很满足了,所以,在此先感谢能点开这个问题的大家,望指点一二: 解决方案 首先学习使用google,google在搜索专业资料的时候非常有用.baidu是不会收录codeproject.github

缺乏支持!Caffe深度学习框架未来堪忧

文章讲的是缺乏支持!Caffe深度学习框架未来堪忧,Caffe是由贾扬清在伯克利上学期间开发的,该项目已经开放源码,目前已获得社区贡献以及伯克利视觉和学习中心(BVLC)赞助.广泛来说,BVLC现在是伯克利人工智能研究(BAIR)实验室的一部分.同样,Caffe也已经超出了视觉范围,包括非视觉深度学习部分,虽然已发布的Caffe模型绝大多数仍然与图像和视频相关. Caffe是一个由表达式,速度和模块化组成的深度学习框架.其优势在于Caffe的模型和优化是通过没有硬编码的配置来定义的,以及在GPU

【最受程序员欢迎的图书推荐】学习知识,什么时候都不晚,写书评,就有机会获得这些书

加班 -> 没空学习 -> 总是写同等水平代码 -> 无法提升代码质量 -> 总是出Bug -> 总是需要修改 -> 加班 -> .... 如果这是你的日常,那么恭喜你,你距离被淘汰就不远了. 这个世界每天都在飞速发展,尤其是技术领域,有可能上个月你刚学会的框架,这个月就有了更好的替代品.你在过去引以为豪的技能,今天或许就成了前进的绊脚石. 只有不断学习,才能与时俱进.本文为你总结了过去一年中最受程序员欢迎的图书,看看别人都在看什么.学什么. 福利来了:  1.

如何做好GOOGLE排名

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 信息中心调查报告显示:搜索引擎是用户得知新网站的最主要途径,网站访问量的82.2%来源于搜索引擎.搜索引擎基于有目标的搜索查询,是目前效果最好最成熟的网站推广.网络营销方式.发达地区众多企业销售量的很大部分就来源于搜索引擎.因此,网站在搜索引擎有一个好的排名,会让您短时间内迅速增加目标客户的访问量,争取客户和形成站点销售:超越您绝大多数的竞争

深度学习帮助人工智能走得更远

说深度学习就不得不提Geoffrey Hinton.一.Geoffrey Hinton是何许人?Geoffrey Hinton是Deep Learning(深度学习)方面的领军人物,是世界上机器学习与人工智能领域杰出研究者之一.Geoffrey Hinton是英国http://www.aliyun.com/zixun/aggregation/13592.html">剑桥大学实验心理学学位获得者,后来获得人工智能博士学位,他同时也是伦敦大学Gatsby神经计算科学部门的创始董事.他研究利用神

java网络编程-打算做一个学习辅助工具箱,求大神给点设计思路,打算用JAVA做

问题描述 打算做一个学习辅助工具箱,求大神给点设计思路,打算用JAVA做 学习辅助工具箱里包括多功能计算器,还有数字逻辑实验模拟器,矩阵算法等等小工具.求大神给点设计的详细思路跟解决方案. 解决方案 你说的这些功能都可以google到. 特别地,你可以用 site:download.csdn.net + 你需要的程序 + java,限定只在csdn下载频道查找. 多学习些google的搜索技巧,你的效率会大大提高. 解决方案二: 一个功能一个功能的实现,最后拼凑起来