新建了一个“Win32控制台应用程序”,在其内新建了“my_math.h”文件,为了方便没有创建类和.cpp文件,用一个简单的函数作范例。app
此处要选择Visual C++->测试->本机单元测试项目,填写好名称,点击肯定便可,不须要其余配置就会在当前解决方案下新建出项目。函数
注意新建的时候直接右键选择当前解决方案-添加-新建项目,这样默认为当前解决方案单元测试
系统默认生成了四个文件“stdafx.h”、“stdafx.cpp”(Standard Application Framework Extensions)预编译头文件,“targetver.h”运行环境定义头文件,“unittest1.cpp”测试文件。前三个不用管,直接看第四个测试文件便可。测试
新建完成MyProgramTest项目之后,在属性-链接器-输入-附加依赖项中添加“..\MyProgram\Debug\*.obj”spa
建议使用相对路径,使用*代表全部.obj后缀文件。注意只须要配置单元测试项目,不须要对原项目作任何修改。对象
obj文件(Microsoft推出的程序编译中间代码文件),程序编译时生成的中间代码文件。目标文件,通常是程序编译后的二进制文件,再经过连接器和资源文件连接就成可执行文件了。OBJ只给出了程序的相对地址,而可执行文件是绝对地址。blog
本身包含原始项目被测函数头文件”#include “../MyProgram/my_math.h” //添加原始项目的头文件,建议相对路径”资源
UnitTest1为测试类名,TEST_CLASS为VS提供的测试类宏定义get
TestMethod1为测试函数名,TEST_METHOD为VS提供的测试函数宏定义博客
Assert为断言类,其提供了AreEqual、AreSame、AreNotEqual、AreNotSame、IsNull、IsNotNull、IsTrue、IsFalse等多个方法以供测试中进行断言
若须要多个测试函数,只须要在public:下创建多个TEST_METHOD便可
若须要多个测试类,能够新建一些cpp文件,注意包含vs单元测试文件CppUnitTest.h
单元测试运行,不须要提早先编译原始程序,运行测试时会自动编译。
在菜单栏-测试-运行选择运行全部测试便可
选择此项后会先编译目标项目,而后执行全部测试类中的public中的测试函数(有不须要测试的能够临时改成private)。
测试结果会在测试资源管理器显示
若此窗口不自动弹出,可在菜单栏-测试-窗口打开
“测试资源管理器”搜索框左侧的三个双向箭头按钮,点击他会进入选中状态,即开启了并行测试功能。
对于VS2015 Enterprise版本在测试菜单下“分析代码覆盖率”能够利用当前单元测试分析对原始项目的代码覆盖率。
VS2015 Community版本没有分析代码覆盖率功能