自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 带捕获的lambda不能转换成函数指针

最近在看libuv(一个纯C实现的多平台异步io库)的相关东西,里面有许多回调函数。例如:int uv_listen(uv_stream_t *stream, int backlog, uv_connection_cb cb)Start listening for incoming connections. backlog indicates the number of connections the kernel might queue, same as listen(2). When a new i

2021-05-30 19:42:50 1803 2

原创 sample7

sample7展示了如何使用值参数化测试(value-parameterized tests)来测试一个接口的多个实现的共同属性。test case中的每一个test都有一个参数指向被测试的实现接口的指针。sample7使用的测试接口和sample6一样在prime_tables.h中定义。sample7CMake编译规则,在test/src/samples/CMakeLists.txt最后添加以下两行:add_executable(sample7_unittest sample7_unittest.

2021-05-30 11:25:43 103

原创 sample6

sample6展示了如何测试 使用了同一个接口对相同属性的多个实现——也就是接口测试。首先编译出sample6,在test/src/samples/CMakeLists.txt最后添加一下两行:add_executable(sample6_unittest sample6_unittest.cc) target_link_libraries(sample6_unittest PUBLIC gtest gtest_main) 先看一下要测试的接口源码。prime_tables.hprime_ta

2021-05-30 11:25:08 207

原创 sample5

sample5演示如何使用一个test fixture衍生出多个test fixture以在多个test中使用。由于在使用某个test fixture时,test case的名字必须是test fixture的名字,是一一对应的关系。所以在使用一个test fixture只能被一个test case使用。但是有时多个test case中希望使用相同的test fixture,或者功能略有不同的test fixture。例如,可能想确保对所有GUI库的测试不泄漏重要的系统资源,如测试“字体”和“笔刷”两个

2021-05-30 11:24:21 98

原创 sample3

sample3展示了如何使用GoogleTest的test fixture。先看sample3_unittest中的说明一个test fixture是用来存放对象和方法的地方,这些test fixture中存放的对象和方法被所有在test case中的test共享。使用test fixture可以避免重复定义测试必要的初始化和清理代码。也可以被用来定义经常被使用的子程序。test fixture只是共享代码,而不共享数据。每一个test会得新的到tsst fixture的副本,因此一个test的对数据

2021-05-30 11:23:52 86

原创 sample4

看了一下sample4中没有什么新的东西,不过还是写一下sample4中的内容。编译sample4的规则,在test/src/samples/CMakeLists.txt中最后添加以下两行:add_executable(sample4_unittest sample4.cc sample4_unittest.cc) target_link_libraries(sample4_unittest PUBLIC gtest gtest_main) sample4的源文件sample4源文件包含samp

2021-05-30 11:23:20 58

原创 sample2

先编译出sample2,在test/src/samples/CMakeLists.txt 文件最后添加编译规则。add_executable(sample2_unittest sample2.cc sample2_unittest.cc) target_link_libraries(sample2_unittest PUBLIC gtest gtest_main) sample2源码定义的方法sample2.cc和sample2.h 定义了一个名为MyString的类,定义了一些常见的字符串操作方

2021-05-30 11:22:49 79

原创 sample1

开始读samples代码。sample1sample1包含三个文件,源文件sample1.cc和头文件sample1.h,以及重点要GoogleTest的测试文件sample1_unittest.cc。sample1.cc和sample1.h中定一个了两个函数:int Factorial(int n); //返回输入参出n的阶乘n!。bool IsPrime(int n); //判断输入值是否为质数。然后就是sample1_unittest.cc文件内容,以下是注释的内容:<技术

2021-05-30 11:04:54 337

原创 怎么用GoogleTest

所以,怎么在自己现有的项目中使用GoogleTest,首先写测试代码。ps我直接用的googletest/samples下的示例文件。所以第一个问题是如何将samples下的源文件编译出来。1.直接用GoogleTest的CMake编译samples怎么样把samples下的示例编译出来,读gtest文件夹下的CMakeLists.txt和googletest下的CMakeLists.txt文件分别发现了以下两个cmake选项。option(BUILD_GMOCK "Builds the googl

2021-05-30 11:03:24 208

原创 google-test

https://github.com/google/googletest/blob/master/googletest/README.md构建方法设置要构建GoogleTest或者使用它作自己的测试,你需要告诉编译系统去哪里找它的头文件和源文件。具体方式取决于你使用的编译系统。用CMake编译GoogleTest 附带了一个CMake构建脚本(CMakeLists.txt)可以在多种平台上使用,如果没有安装CMake,可以从http://www.cmake.org/免费下载。Cmake通过生成本

2021-05-30 11:01:59 334

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除