51Testing软件测试论坛

标题: 单元测试 Google Test 使用 [打印本页]

作者: 测试积点老人    时间: 2018-12-26 16:33
标题: 单元测试 Google Test 使用
环境搭建步骤:

1 将gtest-1.6.0解压,将gtest-1.6.0\下的include全部拷贝到项目目录下

2 项目属性 --- C/C++ --- 常规 --- 附加包含目录 : 添加include路径

3 进入gtest-1.6.0\msvc\目录,找到gtest.vcproj,运行项目,可能会报错,但不影响测试

4 搜索gtestd.lib,将gtestd.lib拷贝到lib目录下,lib目录与include同级

5 项目属性 --- 链接器 --- 链接库依赖项 : 添加 lib目录

6 项目属性 --- 链接器 --- 输入 --- 附加依赖项 : 添加 gtestd.lib

7 项目属性 --- C/C++ --- 代码生成 --- 运行库 :设置为  多线程调试 (/MTd)

代码测试:
  1. #include <iostream>
  2. #include "gtest\gtest.h"

  3. using namespace std;

  4. int main(int argc,char *argv[])
  5. {
  6.         testing::InitGoogleTest(&argc,argv);
  7.         RUN_ALL_TESTS();
  8.         system("pause");
  9.         return 0;
  10. }

  11. TEST(test_main,TestBaseAssert)
  12. {
  13.         // 场景:判断值得真假
  14.         ASSERT_TRUE(true);
  15.         EXPECT_TRUE(true);

  16.     ASSERT_FALSE(false);
  17.         EXPECT_FALSE(false);
  18. }

  19. TEST(test_main,TestBinaryAssert)
  20. {
  21.         // 场景: 判断2个值的关系
  22.         //等于
  23.         ASSERT_EQ(5,5);
  24.         EXPECT_EQ(false,0);

  25.         //不等于
  26.         ASSERT_NE(2,3);
  27.         EXPECT_NE(false,1);

  28.         // 小于
  29.         ASSERT_LT(1,3);
  30.         EXPECT_LT(0x1,0x2);

  31.         //小于等于
  32.         ASSERT_LE(0x2,0x2);
  33.         EXPECT_LE(0x1,0x2);

  34.         //大于
  35.         ASSERT_GT(0x2,0x1);
  36.         EXPECT_GT(0x2,0x1);

  37.         //大于等于
  38.         ASSERT_GE(0x2,0x2);
  39.         EXPECT_GE(0x2,0x1);
  40. }
复制代码
运行结果:
[attach]120462[/attach]






欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2