- 1、本文档共1页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C++单元测试⼯具CppUnitTest
CppUnit 是开放源代码的测试⼯具,来源于 Java 版本的 JUnit。单元测试在极限编程理论中有⾮常重要的作⽤。即使不采⽤极限编程⽅
式,每个软件⼯程师应该写测试程序、准备测试数据、测试⾃⼰写的软件模块能够运⾏。
CppUnit 可以⽤来同时测试多个软件模块,并且显⽰有多少成功、多少失败。有命令⾏⽅式运⾏,VC 写的 GUI 程序界⾯,也有 QT 的
GUI 程序界⾯。以下是 VC 运⾏界⾯。
如果您想⽤ CppUnit 来进⾏软件测试的话,可以到 下载原代码,⾥⾯有⽰例程序。
我们可以从 cppunit-1.10.2/examples/msvc6/CppUnitTestApp/CppUnitTestApp.dsw 改造⼊⼿,全部编译后,将原有的
cppunit、DSPlugIn、TestRunner ⼏个project 删除,只留下CppUnitTestApp project。在 VC 的 File View 将原有的 DLL
Dependencies,Tests 删除。然后增加⾃⼰的测试程序。
测试的 C++ 代码都必须加⼊到这个 Project ,如果⽤ C++ Builder 就只能⽤那个命令⾏的版本了。如果有失败的测试单元,则显⽰是哪
些测试单元。
⼀般的测试单元,写⼀个 CPPUNIT_NS::TestCase 的⼦类,⾥⾯写⼀个或者多个 testXXX 函数。在 testXXX 中调⽤正式代码:
void testXXX(){
int result = myFun(1,2);
CPPUNIT_ASSERT_EQUAL(result,7);
result = myFun(10,70);
CPPUNIT_ASSERT_EQUAL(result,9);
}
每个 test 函数算⼀个测试基本元素。如果它⾥⾯的所有 assert 都成功,这个 test 函数才算通过。
通常来说,测试所⽤的数据,⼀般不⽤写在源代码中,⽽是写在 xml 或者 ini 或者其他⽂件中。这样的好处是测试时更改测试数据,不⽤重
新编译程序,⽅便测试。
⽐较通⽤的⽅法是,写⼀个 BaseTestCase 类,⾥⾯处理好数据读⼊、输出,其它测试单元都从这个 BaseTestCase 继承。
相对于 JUnit ⽽⾔,CppUnit 的不⽅便之处是新的测试程序需要加⼊测试 project,对于很多⼈同时在写测试单元的时候,⼤家都在等别⼈
修改完了测试 project⾃⼰才能进⾏,不太好。相对⽽⾔,Java 测试程序可以不需要任何 project ⽂件。变通的⽅法是,将测试 project
拆分成多个⼦ project ,但是这样⼀来就⽆法在⼀个测试程序中运⾏所有的测试。
CppUnit 的好处是运⾏速度⽐较快。
您可能关注的文档
- uView在运行到微信开发者工具:pagesindexindex.json:[“using。。。.pdf
- 一元二次方程教案设计.pdf
- 新译林版英语四年级上册unit2随堂小练习.pdf
- 数学建模案例分析--图与网络方法建模2竞赛排名.pdf
- 北师大版七年级上册生物期末专题复习2.4生物体的结构层次练习(无答案).pdf
- 合法转租合同的概念和法律后果.pdf
- 休闲农业基础理论.pdf
- golang中main中panic和后续panic处理,以及新开协程的影响.pdf
- beused常见结构以及用法、例题、练习题.pdf
- 数学模型吕跃进数学建模A试卷及习题与讲解.pdf
- 2022年研究生自我鉴定(精选14篇) .pdf
- 中国整流元件项目投资可行性研究报告.docx
- 芡实维钙片行业深度研究报告.docx
- 2024重庆飞驶特人力资源管理有限公司大足分公司招聘派往邮亭镇铁路护路队员招聘1人笔试模拟试题及答案解析.docx
- 2024中国科学院福建物质结构研究所技术支撑中心招聘1人笔试模拟试题及答案解析.docx
- 2024浙江台州市黄岩区民政局招聘编外工作人员3人笔试备考试题及答案解析.docx
- 2024浙江武义县人民武装部综合保障中心招聘1人笔试模拟试题及答案解析.docx
- 2204广东韶关市中级人法院招募见习人员20人笔试模拟试题及答案解析.docx
- 2025中国地质科学院勘探技术研究所招聘应届毕业生(博士研究生岗位)8人笔试模拟试题及答案解析.docx
- 2024中国标准化研究院招聘中层干部1人笔试模拟试题及答案解析.docx
文档评论(0)