百独托管7500 紫田网络超高转化播放器收cps[推荐]速盾CDN 免实名免备防屏蔽阿里云 爆款特卖9.9元封顶提升alexa、IP流量7Q5团队
【腾讯云】中小企福利专场【腾讯云】多款产品1折起高防 随时退换 好耶数据小飞国外网赚带你月入万元炎黄网络4H4G10M 99每月
香港带宽CN2/美国站群优惠中客数据中心 服务器租用联盟系统移动广告平台 中易企业专场腾讯云服务器2.5折九九数据 工信部正规资质
腾讯云新用户大礼包代金券高价收cpa注册量高价展示【腾讯云】2核2G/9.93起租服务器找45互联 随时退换阿里云 短信服务 验证秒达

[闲聊畅谈] VS2017中对MFC工程进行单元测试 [复制链接]
查看:999 | 回复:3

1099

主题

3121

帖子

1057

积分

落伍者(两全齐美)

Rank: 2

贡献
159
鲜花
1
注册时间
2005-10-17

落伍手机绑定

发表于 2021-9-3 17:16:40 | 显示全部楼层 |阅读模式 来自 中国湖北
如何在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.  编译所有工程,然后点菜单:测试/运行/所有测试,如果没有报错,则说明测试环境搭建成功。

————————————————
武汉兰树网络科技有限公司
www.ls-idc.com
QQ:775260000
TG:@lsidc
回复

使用道具 举报

75

主题

2259

帖子

6374

积分

落伍者(三羊开泰)

大哥

Rank: 3Rank: 3

贡献
800
鲜花
25
注册时间
2004-9-21

落伍手机绑定

发表于 2021-9-3 17:54:48 | 显示全部楼层 来自 中国湖南湘潭
右下角,小手一抖
http://www.im286.com
回复 支持 反对

使用道具 举报

1954

主题

9001

帖子

1万

积分

落伍者(四季发财)

Rank: 4

贡献
617
鲜花
89
注册时间
2008-2-26

落伍手机绑定

发表于 2021-9-4 10:50:05 | 显示全部楼层 来自 中国广东广州
你怎么了
回复

使用道具 举报

98

主题

4124

帖子

3863

积分

落伍者(两全齐美)

Rank: 2

贡献
175
鲜花
16
注册时间
2015-3-12
发表于 2021-9-4 14:15:29 来自落伍手机版 | 显示全部楼层 来自 中国浙江
落伍出现这种文章,底下一拉,果然,楼主你号没了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

论坛客服/商务合作/投诉举报:2171544 (QQ)
落伍者创建于2001/03/14,本站内容均为会员发表,并不代表落伍立场!
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论!
落伍官方微信:2030286 邮箱:(djfsys@gmail.com|tech@im286.com)
© 2001-2014

浙公网安备 33060302000191号

浙ICP备11034705号 BBS专项电子公告通信管[2010]226号

  落伍法律顾问: ITlaw-庄毅雄

手机版|找回帐号|不能发帖?|Archiver|落伍者

GMT+8, 2024-11-26 14:48 , Processed in 0.063036 second(s), 31 queries , Gzip On.

返回顶部