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

中国建设监理工程协会网站宁波seo关键词

中国建设监理工程协会网站,宁波seo关键词,微网站开发素材,淄博周村专业网站建设公司目录 1.介绍2.安装3.使用1.头文件包含2.框架初始化接口3.调用测试样例4.TEST宏5.断言宏6.示例 1.介绍 gtest是一个跨平台的C单元测试框架,由Google公司发布gtest是为了在不同平台上为编写C单元测试而生成的,它提供了丰富的断言、致命和非致命判断、参数…

目录

  • 1.介绍
  • 2.安装
  • 3.使用
    • 1.头文件包含
    • 2.框架初始化接口
    • 3.调用测试样例
    • 4.TEST宏
    • 5.断言宏
    • 6.示例


1.介绍

  • gtest是一个跨平台的C++单元测试框架,由Google公司发布
  • gtest为了在不同平台上为编写C++单元测试而生成的,它提供了丰富的断言、致命和非致命判断、参数化等等测试所需的宏,以及全局测试,单元测试组件

2.安装

  • 直接命令安装sudo apt install libgtest-dev

3.使用

1.头文件包含

#include <gtest/gtest.h>

2.框架初始化接口

testing::InitGoogleTest(&argc, argv);

3.调用测试样例

RUN_ALL_TESTS();

4.TEST宏

  • 此处不需要双引号括住文本内容,且同测试下多个测试样例不能同名
    TEST(测试名称, 测试样例名称)
    {// do somethinh
    }TEST_F(text_fixture, test_name)
    {// do something
    }
    
  • TEST:主要用来创建一个简单测试,它定义了一个测试函数,在这个函数中可以使用任何C++代码并且使用框架提供的断言进行检查
  • TEST_F:主要用来进行多样测试,适用于多个测试场景如果需要相同的数据配置的情况, 即相同的数据测不同的行为

5.断言宏

  • gtest中的宏可以分为两大类
    • ASSERT_系列:如果当前点检测失败则退出当前测试用例
    • EXPECT_系列:如果当前点检测失败则继续往下执行
  • 常用断言介绍
    • bool值检查
      • ASSERT_TRUE(参数):期待结果是true
      • ASSERT_FALSE(参数):期待结果是false
      • 数值型数据检查
        • ASSERT_EQ(参数1,参数2)equal,传入的是需要比较的两个数
        • ASSERT_NE(参数1,参数2)not equal,不等于才返回true
        • ASSERT_LT(参数1,参数2)less than,小于才返回true
        • ASSERT_GT(参数1,参数2)greater than,大于才返回true
        • ASSERT_LE(参数1,参数2)less equal,小于等于才返回true
        • ASSERT_GE(参数1,参数2)greater equal,大于等于才返回true

6.示例

  • main.cc
    #include <iostream>
    #include <gtest/gtest.h>int Add(int x, int y)
    {return x + y;
    }TEST(Plus_Test, Equal)
    {ASSERT_EQ(Add(10, 10), 20);
    }TEST(ERROR_TEST, NE)
    {ASSERT_EQ(Add(10, 10), 30);
    }TEST(EXPECT_TEXT, EXPECT)
    {EXPECT_LT(Add(20, 20), 10);std::cout << "Output in EXPECT_TEST, but after EXPECT_LT" << std::endl;ASSERT_EQ(Add(10, 10), 30);std::cout << "Output in EXPECT_TEST" << std::endl;
    }int main(int argc, char* argv[])
    {// Init Test Moduletesting::InitGoogleTest(&argc, argv);// Invokle all testsreturn RUN_ALL_TESTS();
    }
    
  • makefile
    main:main.ccg++ -o $@ $^ -std=c++17 -lgtest.PHONY:clean
    clean:rm main
    
  • 运行示例
    $ ./main 
    [==========] Running 3 tests from 3 test suites.
    [----------] Global test environment set-up.
    [----------] 1 test from Plus_Test
    [ RUN      ] Plus_Test.Equal
    [       OK ] Plus_Test.Equal (0 ms)
    [----------] 1 test from Plus_Test (0 ms total)[----------] 1 test from ERROR_TEST
    [ RUN      ] ERROR_TEST.NE
    main.cc:16: Failure
    Expected equality of these values:Add(10, 10)Which is: 2030
    [  FAILED  ] ERROR_TEST.NE (0 ms)
    [----------] 1 test from ERROR_TEST (0 ms total)[----------] 1 test from EXPECT_TEXT
    [ RUN      ] EXPECT_TEXT.EXPECT
    main.cc:21: Failure
    Expected: (Add(20, 20)) < (10), actual: 40 vs 10
    Output in EXPECT_TEST, but after EXPECT_LT
    main.cc:25: Failure
    Expected equality of these values:Add(10, 10)Which is: 2030
    [  FAILED  ] EXPECT_TEXT.EXPECT (0 ms)
    [----------] 1 test from EXPECT_TEXT (0 ms total)[----------] Global test environment tear-down
    [==========] 3 tests from 3 test suites ran. (0 ms total)
    [  PASSED  ] 1 test.
    [  FAILED  ] 2 tests, listed below:
    [  FAILED  ] ERROR_TEST.NE
    [  FAILED  ] EXPECT_TEXT.EXPECT2 FAILED TESTS
    

http://www.15wanjia.com/news/13818.html

相关文章:

  • 外汇平台网站开发需求说明seo关键词查询
  • 如何在网站插做视频百度seo排名优化软件分类
  • b2c网站模块青岛网站建设方案服务
  • 网站制作公司南宁google关键词工具
  • 哪个视频网站做自媒体长沙优化网站推广
  • 最专业的微网站开发怎么自己做网站推广
  • 九度互联网站制作效果职业技能培训网上平台
  • 示范校建设信息化成果网站网站怎么优化
  • 网站建设与管理属于计算机专业吗唯尚广告联盟平台
  • 可信软件开发工程师厦门seo优化
  • 公司网站怎么做才能吸引人希爱力双效片的作用与功效
  • 衡阳seo广州seo公司如何
  • 海口网站建设王道下拉棒2345浏览器网页版
  • 宜昌做网站在线生成html网页
  • 集团公司网站模板最吸引人的营销广告文案
  • 保定网站建设推广最新新闻热点事件2022
  • 在线制作书封网站常用的关键词挖掘工具
  • 美工好的网站网络营销经典失败案例
  • 徐州市建设工程交易中心seo描述快速排名
  • 台州做微网站搜索引擎竞价排名
  • 企业营销策划书范文武汉seo工作室
  • 网站后台内容管理百度收录查询api
  • 网站单页模板下载网络营销组织的概念
  • 网站建设怎么样工作网站链接交易
  • 网站制作具体步骤哈尔滨网站优化流程
  • 专业的传媒行业网站开发百度关键词优化大
  • 代做毕网站nba最新排名榜
  • 专门做搜索种子的网站河南郑州最新消息今天
  • 网站滚屏是用什么做的市场营销计划
  • 平面设计公司网站整站优化关键词排名