zoukankan      html  css  js  c++  java
  • codeblocks+Mingw 下配置开源c++单元测试工具 google test

    google test 是google的c++开源单元测试工具,chrome的开发团队就是使用它。

    Code::Blocks 12.11(MinGW 4.7.1) (Windows版)
    Google Test 1.7.0

    一 编译Google Test

    运行cmake-gui
    在弹出来的对话框中
    Where is the source code之后填写解压的gtest,例如:D:/software/gtest-1.7.0
    Where to build the binaries之后填写生成的工程路径,例如:D:/software/gtest-1.7.0/codeblocks-mingw


    (网上看到说要点击Configure,然后勾选gtest_disable_pthreads之后的复选框,再进行下面的操作,这一步我没有做也没问题)
    点击Configure
    然后点击Generate
    如此一来,cmake就在D:/software/gtest-1.7.0/codeblocks-mingw下会自动生成Code::Blocks的project文件。
    双击该project文件(cbp文件),然后build就行了。



    二 使用Google Test

    需要注意的是:
    既想用C++11的新特征,又想顺利编译Google Test,你得用命令行参数-std=gnu++11,而不是-std=c++11。

    用codeblocks新建一个工程
    右键project,选择Build options...
    清除Compiler settings > Compile Flags下与-std=有关的复选框
    点击选项卡Compiler settings > Other options,在对话框中填写-std=gnu++11

    (如果没有使用c++11新特性,上面两步可以省略)
    在Linker settings > Other linker options下填写-lgtest
    点击OK

    点击选项卡Search directories
    在Compiler子选项卡中Add一项,填写D:/software/gtest-1.7.0include
    在Linker子选项卡中Add一项,填写D:/software/gtest-1.7.0codeblocks-mingw
    点击OK

    然后就可以写代码了,我写了一个add函数,然后对其测试,代码如下:

     1 #include<cstdio>
     2 #include<gtest/gtest.h>
     3 
     4 int add(int a, int b)
     5 {
     6     return a+b;
     7 }
     8 
     9 TEST(addtest, HandleNoneZeroInput)
    10 {
    11     EXPECT_EQ(14, add(4, 10));
    12     EXPECT_EQ(-2, add(-3, 1));
    13 }
    14 
    15 int main(int argc, char *argv[])
    16 {
    17     testing::InitGoogleTest(&argc, argv);
    18     return RUN_ALL_TESTS();
    19     return 0;
    20 }

    结果如图:

    详细的使用说明请参考:here

    【版权声明】转载请注明出处:http://www.cnblogs.com/TenosDoIt/p/3412721.html

  • 相关阅读:
    马士兵_聊天系统_知识储备库
    最近一些情况
    JAVA坦克大战项目练习日4
    JAVA坦克大战项目练习日3
    JAVA坦克大战项目练习日2
    JAVA坦克大战项目练习日1
    课后实战String的一些细节
    Java从入门到精通之数组篇
    58_自定义标签打包以及使用自定义标签教程
    javaWeb安全篇(1)——防盗链技术的实现
  • 原文地址:https://www.cnblogs.com/TenosDoIt/p/3412721.html
Copyright © 2011-2022 走看看