Visual Studio 单元测试 C++ 版
1. 简介
软件质量要求的提升迫使码农们越来越重视单元测试,测试驱动开发的观点受到更多人的支持。目前,支持单元测试的第三方框架也非常丰富,就C++而言,有gtest, CppTest 等。 Visual Studio 自带的单元测试框架也非常的便利。之前一直使用 gtest 进行测试,今天小试了一把VS 的测试框架,将配置过程记录下来。
2. 如何对 exe 工程进行单元测试
假设已有一个 exe 工程,想要对当前存在的类进行单元测试,在vs 的框架下实现起来非常方便,如下图所示,为已存在的工程项目,我们希望对 CMyClass 类进行单元测试
1) 增添一个单元测试工程
选择 File -> Add -> New Project, 在弹出如下图所示的对话框选择 Test -> Native Unit Test Project
2) 添加需要测试的类对应的 Obj 文件
选择单元测试工程,右击鼠标 -> Properties -> Linker -> Input -> Additional Dependencies, 输入要测试的obj, 如下图所示
注意,这里的 obj 文件不要使用全路径,只需要输入名字加后缀即可,不支持通配符,例如 *.obj
3)配置obj 路径
选择 Linker -> General -> Additional Library Directories, 添加上述obj所在的路径, 如下图所示, MyApp 是 CMyClass 所在工程的目录名称, MyApp 和 UnitTest 在同一个Solution 下。
4)配置完成,下面就是写UT case了,UT case 很简单,见下图
5) 运行
选择 Test -> Run -> All Tests
运行结果会在Test Explorer 显示,如下图
至此,一个简单的单元测试就运行成功。Visual Studio 的测试框架支持非常丰富的检测