如何在VS2017中对MFC工程进行单元测试,步骤如下:
1. 点文件/新建/项目, 建一个MFC工程MFCApplication1。因使用VC时,一般都会用到MFC, 为接近实际需求,建的是一个MFC工程,一切都用默认的设置,一直点下一步,直到完成。
2. 在MFC工程中添加一个类Ccalc,用于测试。
3. 点文件/添加/新建项目/测试/本机单元测试项目,为MFC工程生成一个测试工程UnitTest1。
4. 在UnitTest1工程中添加测试代码
打开unittest1.cpp文件,添加引用Ccalc类的头文件
#include "..\MFCApplication1\Ccalc.h"
在unittest1.cpp的测试函数中添加测试Ccalc的代码
TEST_METHOD(TestMethod1)
{
int a = 1;
int b = 1;
int sum = 2;
Assert::AreEqual(sum, Ccalc::Adds(a, b));
}
5.在UnitTest1工程右键:添加/现有项,添加obj文件,因为是所测试的工程是MFC工程,Ccalc.obj和pch.obj,否则编译UnitTest1工程时,会出现“未定义基类”的提示。
6. 重点来了,因为所测工程是MFC工程,因此UnitTest1工程中要添加使用MFC库
在UnitTest1的工程 ”属性/常规/MFC的使用“ 中选择“在共享DLL中使用MFC” ,”属性/C/C++/代码生成/运行库“ 中选择“多线程调试DLL(/MDd)”
7. 继续在UnitTest1工程中打开pch.h,添加:
// 添加要在此处预编译的标头
#include "../MFCApplication1/framework.h"
8. 编译所有工程,然后点菜单:测试/运行/所有测试,如果没有报错,则说明测试环境搭建成功。