VisualStudio 2019 C++单元测试框架CppUnitTest配置说明

筋肉兔子

问题描述:
在开发过程中,我们需要对自己写的算法进行测试,使用使用调试工具、或者运行起来调会存在测试不到位,测试效率低下等问题,使用单元测试会好很多,它效率高、容易理解,并且更符合基于TDD(测试驱动开发)的思想,这里将Vs 下C++单元测试框架CppUnitTest的配置过程记录如下。

正文内容:
首先,单元测试项目在Visual Studio中会随着安装各种不同的语言环境默认安装,比如安装了.net 开发环境时会安装NUnit MSTest等测试框架。这里我们简单介绍一下C/C++开发时Visual Studio可以为我们提供的便利之处。

  1. 安装
    Visual Studio2019在首次安装时只要选择了”使用C++的桌面开发”,这个时候就会默认安装google test 模块和Boost Test模块,如图:
    1623723428496.png
  2. 使用,首先我们创建一个空解决方案,然后在空解决方案下建立一个基于C++的空项目,我们命名为”ProjForUnittest”
    1623723435300.png
    我们简单创建一个C++的类,并创建一个返回值为int的函数,用作单元测试的讲解。这里我们创建了一个叫做Calc的类,然后创建并实现了一个名称为Add的函数,其作用为将x,y两个参数相加并返回这个结果。
  3. 创建测试项目CppUnittest
    鼠标点选解决方案右键->添加->新建项目,我们在项目模板搜索栏中输入Test,会出现如下界面
    1623723443557.png
    我们可以看到标注语言为C++的两个单元测试项目模板,一个是Google Test,另一个是本机单元测试项目,其中本机单元测试项目源自于微软,相对简单,我们这里选择它进行创建,创建好之后,目录如下
    1623723452826.png
  4. 项目设置
    (1) 将测试目标项目的配置类型变更为动态库 .dll 或静态库 .lib
    点选测试目标项目右键->属性->常规->配置类型->静态库(.lib)
    (2) 将测试目标项目和测试项目的输出目录都修改为ProjectDir(默认设置是SolutionDir)
    属性->常规->输出目录,将SolutionDir替换为ProjectDir
    (3) 将测试目标项目添加至单元测试项目引用中
    选中单元测试项目下的“引用”节点右键->添加引用->选择测试目标项目点击确定
    (4) 将测试目标项目中公开的头文件所在目录添加至单元测试项目的附加包含目录
    选中单元测试项目右键->C/C++->常规->附加包含目录->编辑
    1623723458217.png

点击添加目录按钮,选择测试目标目录的头文件所在目录。
(5) 将测试目标项目的.lib 或 .dll 文件的输出目录添加至单元测试文件的附加库目录,并添加.lib文件名(为测试目标项目的名称)至附加依赖库。
1 添加附加库目录
测试项目右键属性->链接器->常规->附加库目录(同上第4条操作)将lib文件的输出目录添加到列表中(一般测试时使用的是项目目录下的Debug目录)
2 添加库文件至附加依赖库
1623723470190.png
测试项目右键属性->链接器->输入->附加依赖库
1623723504220.png
在随后打开的文本框中输入.lib(指代目标测试项目输出的lib文件名。)
以上就是C++单元测试项目之间的配置过程。

阅读 399

2 声望
0 粉丝
0 条评论
你知道吗?

2 声望
0 粉丝
宣传栏