一、 选择开发工具
- 开发工具选择了VS2017,Visual Studio 2017 有着宇宙最强IDE的美称,它对C++的支持也很好。
二、练习自动单元测试技术
1.编辑源代码
- 建立VS2017新项目
- 建立c++源文件
- 写源代码
#include"iostream"
#include"stdlib.h"
using namespace std;
int SUM(int x, int y)
{
return (x + y);
}
int mian()
{
int x, y,sum;
cin >> x >> y;
sum=SUM(x, y);
cout << sum;
return 0;
}
- 建立c++头文件
2.单元测试过程
-
添加单元测试项目
-
在测试项目中引入
-
手动设置测试项目的附加依赖项
-
写入所有.obj 结尾的项目路径。
-
打开unittest1.cpp 文件在完成单元测试的项目配置后,下面就可以开始写单元测试代码了。首先看向新创建的单元测试项目,里面应该会有一个默认的 unittest1.cpp 文件,打开该文件,文件内容如下:
#include "stdafx.h"
#include "CppUnitTest.h"
using namespace Microsoft::VisualStudio::CppUnitTestFramework;
namespace UnitTest1
{
TEST_CLASS(UnitTest1)
{
public:
TEST_METHOD(TestMethod1)
{
// TODO: 在此输入测试代码
}
};
}
-
引入头文件
-
编写测试代码,提供正确的测试数据:
-
可以经过如下操作:
-
:产生正确的测试数据:
-
编写测试代码,错误的测试代码运行之后会产生错误的测试结果:
三、小结
>从第一次敲出 Hello World 程序后,很长一段时间我都使用 “cout” 方式来调试代码,即:在关键位置添加输出语句后通过观察命令行窗口的输出内容来判断程序是否符合预期执行。后来在学习数据结构时学会了使用 IDE 的调试功能,通过断点、逐行执行和内存监控等功能,学习效率得到了不小的提升。到现在,借助于单元测试,我可以快速的判断一个函数的执行结果是否符合预期。然而在本次单元测试过程中,由于对测试环境不是很熟悉,导致进度非常缓慢,希望多加练习,熟悉的应用测试。