安装Visual Studio 2017
<font face="微软雅黑" size=“3”>因为平时都是用codeblock,所以电脑中没有装VS系列的IDE,就从安装开始吧</font> <font face="微软雅黑" size=“3”>最开始安装的时候没有注意什么都没选,安装完了之后根本没有c++的编译器和各项组件............</font>
<font face="微软雅黑" size=“3”>上图就是啥都没安装...要否则怎么安装包只有一百多MB.....</font>
<font face="微软雅黑" size=“3”>历经千辛万苦终于装完了。那么下一步就开始单元测试吧。</font>ios
对C++进行单元测试
<font face="微软雅黑" size=“3”>首先先创建一个工程,分别编写cpp和头文件,下图是我刚开始编写的程序,仅仅写了cpp文件,没有自定义头文件,下面的代码是我后写的</font> c++
<font face="微软雅黑" size=“3”>最终cpp文件中的代码以下:</font>函数
#include<iostream> #include"test.h" using namespace std; int Cal::add(int x, int y)//返回两个变量的和 { return x + y; } int Cal::sub(int x, int y)//返回两个变量的差 { return x - y; } int main() { return 0; }
<font face="微软雅黑" size=“3”>最终头文件test.h中的代码以下:</font>单元测试
class Cal {//计算类 public: int add(int x, int y); int sub(int x, int y); };
<font face="微软雅黑" size=“3”>肯定代码无误后,右键点击“解决方案”->"添加"->“新建项目”,以下图所示</font> 学习
<font face="微软雅黑" size=“3”>紧接着在弹出的页面选择“本机单元测试项目”</font> 测试
<font face="微软雅黑" size=“3”>此时左侧的状态栏出现了单元测试的项目,“UnitTest1”</font> spa
<font face="微软雅黑" size=“3”>右键选中引用,点击“添加引用”,以下图所示</font> 3d
<font face="微软雅黑" size=“3”>勾选须要引用的项目,也就是须要测试的项目</font> code
<font face="微软雅黑" size=“3”>接下来开始编写测试程序,以下图所示</font> blog
<font face="微软雅黑" size=“3”>而后操做以下图,可是...........</font>
<font face="微软雅黑" color=#0000FF> 去 世 了</font>
<font face="微软雅黑" size=“3”>通过一番不懈的查找努力终于找到了问题所在...没有引入须要测试项目的头文件.....下图为改正后的测试代码</font>
<font face="微软雅黑" size=“3”>那么再测试一次吧...应该没事了吧......</font>
<font face="微软雅黑" color=#0000FF>又 去 世 了</font>
<font face="微软雅黑" size=“3”>其实问题出在了这里...右键测试项目,而后选择属性</font>
<font face="微软雅黑" size=“3”>选择“连接器”->"输入"->"选择依赖项"</font>
<font face="微软雅黑" size=“3”>能够看到我输入的是须要测试项目的obj文件的路径,可是写的倒是*.obj,至关于选择该文件夹下全部obj文件</font>
<font face="微软雅黑" size=“3”>可是打开对应的文件夹后,发现有两个obj文件.....缘由是由于最先创建项目时使用了默认名称,可是为了引用成功我给改为了英文名...所以有两个obj文件,系统不肯定究竟是哪个文件(你妹)</font>
<font face="微软雅黑" size=“3”>因而乎回去修改依赖项...改为肯定的文件......</font>
<font face="微软雅黑" color=#0000FF >终 于 运 行 成 功 了</font>
<font face="微软雅黑" size=“3”>这里说一下,Assert::AreEqual函数是肯定是否两个数相等的操做,若是两个数不相等,那么将不会经过测试,可是运行能够成功,以下图所示,3-5=-2,不知足的话就不能经过测试</font>
总结
<font face="微软雅黑" size=“3”>经过学习vs2017的单元测试,我掌握了进行单元测试的的基础方法,在错误中成长,学会了很多东西,争取在这以后快速的根据别人的博客学会更多的测试技术(好比一个类在运行时还要引用新的文件,那么依赖项仍是要进行修改),也让我意识到了自学是进步最快的方法,多读别人的博客可能就会学会不少东西,所以要虚心好学。</font>