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

网站建设寮步wordpress主题 破解主题下载

网站建设寮步,wordpress主题 破解主题下载,贵阳建设银行网站,wordpress网站的cdn怎么设置文章目录 前言一、Google Test介绍1.1 gtest源码下载编译1.2 常用API介绍1.3 gtest运行参数介绍 二、Google Mock参考资料 前言 Google Test#xff08;简称gtest#xff09;是一个开源的C单元测试框架。和常见的测试工具一样#xff0c;gtest提供了单体测试常见的工具和组… 文章目录 前言一、Google Test介绍1.1 gtest源码下载编译1.2 常用API介绍1.3 gtest运行参数介绍 二、Google Mock参考资料 前言 Google Test简称gtest是一个开源的C单元测试框架。和常见的测试工具一样gtest提供了单体测试常见的工具和组件。比如判断各种类型的值相等大于小于等管理多个测试的测试组如testsuit下辖testcase为了方便处理初始化数据减少重复代码提供了setup和teardown函数等。 一、Google Test介绍 1.1 gtest源码下载编译 git clone https://github.com/google/googletest.git cd googletest mkdir build cd build cmake .. make -j4 sudo make install sudo ldconfig在googletest/samples文件夹中里面存放了10个官方提供的示例代码默认是不编译的这里我们修改googletest/CMakeLists.txt将第20行的OFF改为ON。 option(gtest_build_tests Build all of gtests own tests. OFF)option(gtest_build_samples Build gtests sample programs. ON)option(gtest_disable_pthreads Disable uses of pthreads in gtest. OFF)重新构建后可以在build目录下看到googletest自带的sample都编译为了可执行文件。 rootlocalhost:~/gtest/build/googletest# ls CMakeFiles Makefile generated sample1_unittest sample3_unittest sample5_unittest sample7_unittest sample9_unittest CTestTestfile.cmake cmake_install.cmake sample10_unittest sample2_unittest sample4_unittest sample6_unittest sample8_unittestrootlocalhost:~/gtest/build/googletest# ./sample1_unittest Running main() from /root/gtest/googletest/src/gtest_main.cc [] Running 6 tests from 2 test suites. [----------] Global test environment set-up. [----------] 3 tests from FactorialTest [ RUN ] FactorialTest.Negative [ OK ] FactorialTest.Negative (0 ms) [ RUN ] FactorialTest.Zero [ OK ] FactorialTest.Zero (0 ms) [ RUN ] FactorialTest.Positive [ OK ] FactorialTest.Positive (0 ms) [----------] 3 tests from FactorialTest (0 ms total)[----------] 3 tests from IsPrimeTest [ RUN ] IsPrimeTest.Negative [ OK ] IsPrimeTest.Negative (0 ms) [ RUN ] IsPrimeTest.Trivial [ OK ] IsPrimeTest.Trivial (0 ms) [ RUN ] IsPrimeTest.Positive [ OK ] IsPrimeTest.Positive (0 ms) [----------] 3 tests from IsPrimeTest (0 ms total)[----------] Global test environment tear-down [] 6 tests from 2 test suites ran. (0 ms total) [ PASSED ] 6 tests.在googletest的说明手册中给出了示例代码更详细的解释Googletest SamplesGoogle单元测试框架gtest之官方sample笔记1–简单用例 1.2 常用API介绍 我们来看一个Googletest Samples1中的一段代码 TEST(FactorialTest, Zero) { EXPECT_EQ(1, Factorial(0)); }这里用到了TEST宏它有两个参数官方的对这两个参数的解释为[TestCaseNameTestName] 在运行的结果中我们可以看到通过TEST宏我们启动了对FactorialTest函数的测试名称为Zero。 [ RUN ] FactorialTest.Zero [ OK ] FactorialTest.Zero (0 ms)紧接出现了EXPECT_EQ(1, Factorial(0)); 这个宏用来比较两个数字是否相等。Google还包装了一系列EXPECT_* 和ASSERT_*的宏而EXPECT系列和ASSERT系列的区别是 EXPECT_* 失败时案例继续往下执行。ASSERT_* 失败时直接在当前函数中返回当前函数中ASSERT_*后面的语句将不会执行。 1.3 gtest运行参数介绍 命令行参数–gtest_output“xml:report.xml”可以把控制台内容输出转储为 XML 格式其中report为存储的文件名e.g. ./unittest --gtest_outputxml:report.xml命令行参数–gtest_repeatn表示进行n次的重复测试某些测试进行多次尝试后可能会结果不一致可以使用重复测试功能进行测试参数–gtest_break_on_failure可以支持自动调试运行测试有时候会失败但是在大多数时候会顺利通过。这是与内存损坏相关的问题的典型特点。如果多次运行测试就能够提高发现失败的可能性,e.g. ./unittest --gtest_repeat2 --gtest_break_on_failure表示重复运行相同的测试用例两次如果测试失败会自动调用调试器。 命令行参数运用–gtest_filter来过滤case。有时候我们并不需要运行所有测试尤其是在修改的代码只影响某几个模块的情况下。为了支持运行一部分测试Google 提供 --gtest_filtere.g. ./unittest --gtest_filter* #执行所有测试 ./unittest --gtest_filterPoissonUdpClientTest* #执行PoissonUdpClientTest开头的测试 ./unittest --gtest_filter-PoissonUdpClientTest* #不执行PoissonUdpClientTest开头的测试二、Google Mock gmock是谷歌推出的开源白盒测试工具用于编写C模拟类的框架。通过gmock可以用一些简单的宏描述想要模拟的接口并指定其期望在测试中有效地去除外部依赖更方便地测试模块功能。 对类里面需要打桩的函数mock语法如下 MOCK_METHODn(..., ...); //其中n表示参数的个数 MOCK_CONST_METHODn(..., ...); //const成员方法用这种对mock的方法可以指定期望包括返回值调用次数等使用EXPECT_CALL()宏 EXPECT_CALL(mock_object, method(matchers)).Times(cardinality) //可以指定调用几次.WillOnce(action) //可以指定调用行为.WillRepeatedly(action);Matchers指参数匹配器可以指定任意参数::testing::_ 表示输入的参数为任意参数其他参数不一一列举 Mock virtual方法如下不需要对工程代码做修改 // Foo.h class Foo { public:virtual int FooFuncOne(int num); };// FooTest.cc class MockFoo : public Foo { public:MOCK_METHOD1(FooFuncOne, int(int num)); };TEST(FooTest, FooFuncOne) {MockFoo mockFoo;// 指定FooFuncOne返回值为5EXPECT_CALL(mockFoo, FooFuncOne((::testing::_))).WillRepeatedly((::testing::Return)(5)); }上面mock方法主要用到了虚函数重写但是对于非虚函数上述写法是不能够生效的需要有较大的改动可以根据实际需要选择。下面贴了使用的示例 // foo.h class Foo { public:void CallSelfMethod();void PublicMethod(); protected:void ProtectedMethod(); private:void PrivateMethod(); };// 重构成模板类 foo_testable.h template typename T class FooTestable { public:FooTestable(T self);void CallSelfMethod();void PublicMethod(); protected:void ProtectedMethod(); private:void PrivateMethod();T self; };// foo_test.cc class MockFoo { public:MOCK_METHOD(PublicMethod, void());MOCK_METHOD(ProtectedMethod, void());MOCK_METHOD(PrivateMethod, void()); }; TEST(Test_MockSelfNonVirtualMethod, SelfMethod) {MockFoo mockFoo;FooTestableMockFoo fooTestable(mockFoo);EXPECT_CALL(mockFoo, PublicMethod()).Times(1);EXPECT_CALL(mockFoo, ProtectedMethod()).Times(1);EXPECT_CALL(mockFoo, PrivateMethod()).Times(1);fooTestable.CallSelfMethod(); }参考资料 https://github.com/google/googletest【CMake 系列】四用 GoogleTest 测试 #136Golang 中的测试 #95编写优美的GTest测试案例转一篇小亮同学的google mock分享Linux项目搭建Gtest/Gmock框架总结C 单元测试之 gtest gmock
http://www.w-s-a.com/news/763232/

相关文章:

  • 免费建站工具机械网站建设公司推荐
  • 怎么用自己主机做网站_如何做简单的网站
  • 阿里巴巴国际站跨境电商平台为什么有点网站打不开
  • 甘肃做网站哪家好网站开发 都包含什么语言
  • 合肥哪里有做网站的广告型网站怎么做的
  • 用dede做的网站国外免费空间哪个好
  • dede个人网站模板企点
  • 韩雪个人网站wordpress 怎么添加网站备案信息
  • 个人网站可以做地方技能培训班
  • 品牌营销策略研究无锡 网站 seo 优化
  • 在线推广网站的方法有哪些织梦网站首页目录在哪
  • 做爰全过程免费网站的视频做网站的几个步骤
  • cpa建站教程青海西宁制作网站企业
  • 简易的在线数据库网站模板网站多服务器建设
  • 成都seo网站建设花店网页模板html
  • 义乌市网站制作网络营销策略名词解释
  • 高端品牌网站建设图片wordpress 资源站主题
  • 上海建设工程监督总站网站电商网站wordpress
  • 网站建设 医院菏泽网站建设熊掌号
  • 成都网站建设企业预约网免费建站流程
  • 网站建设胶州中国政务网站建设绩效评估
  • 合肥知名网站推广胶东国际机场建设有限公司网站
  • asp.ney旅游信息网站下载 简洁濮阳微信网站开发
  • 建设网站专业怎么上传网站程序到空间
  • 县城乡建设局网站微商城小程序哪个好
  • 博物馆门户网站建设优势重庆seo排名系统运营
  • 哪有app制作公司上海seo排名
  • 长沙建站seo公司北京招聘信息
  • 建设网站情况说明范文四川个人证书查询网官网
  • 推广学校网站怎么做公司可以做多个网站吗