51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 9628|回复: 7
打印 上一主题 下一主题

cppunit 在vc6.0下的安装和使用(转载CSDN)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2005-1-20 09:18:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
cppunit 在vc6.0下的安装和使用

单元测试是极限编程的重要组成部分,CPPUnit和Junit,Duit一样都是Erich Gamma 和 Kent Beck 编写的一个回归测试框架,是C++语言的一个很好的单元测试工具,以下介绍VC6.0下的CPPUnit的安装和使用。

单元测试是极限编程的重要组成部分,CPPUnit和Junit,Duit一样都是Erich Gamma 和 Kent Beck 编写的一个回归测试框架,是C++语言的一个很好的单元测试工具,以下介绍VC6.0下的CPPUnit的安装和使用。
;)第一部分:CPPUnit的安装。
1.下载CPPUnit:下载CPPUnit 压缩文件,2.?我用的是CPPUnit1.10.2
2. 编译工程文件:将CPPUnit1.10.2.tar.gz 解压缩到本地硬盘,如d:\CPPUnit1.10.2,用VC6.0打开CPPUnit1.10.2中的工程文件CppUnitLibraries.dsw
选择 当前工程为TestPlugInRunner,选择Build菜单下Batch Build的页面, 将会有一对话框,选中所有Project,然后按build 按钮,将生成cppunit的库文件,其位置在CPPUnit1.10.2/lib目录下.
3. 设置VC环境: 选择 Tools->Options菜单,选择Directories TAB页,在show directories for 下拉框中选择Include Files,增加路径CPPUnit1.10.2/include, 如我自己的是d:\ CPPUnit1.10.2\ include.同样增加Libary files 路径CPPUnit1.10.2/LIB, source files 路径 CPPUnit1.10.2/SRC/CPPUNIT.
在菜单Tools->Customize出现的对话框中选Add-ins and Macro files中点击browse,并选择lib/TestRunnerDSPlugIn.dll.
此时特别注意, 关闭VC6,在windows 的环境变量中设置path变量加一路径, cppunit/lib,如d:\cppunit1.10.2\lib,否则以后的测试工程中提示找不到动态连接库。
这时CPPUnit的环境已经配置好了,一般都可以手工创建工程,书写测试的代码,如下面的代码创建测试
void CHostAppApp::RunUnitTests()
{
    CppUnit::MfcUi::TestRunner runner;
    runner.addTest( CppUnit::TestFactoryRegistry::getRegistry().makeTest() );
    runner.run();
}
但是必须手动创建测试工程,非常的不方便。以下介绍的CppUnit Visual Studio Application Wizard 可自动创建好测试框架,我们只需书写TestCase和test方法即可。

:p第二部分:CppUnit Visual Studio Application Wizard v0.1安装
1.下载CppUnitAppWizard.zip:文件在以下地址下载
http://www.sourcextreme.com/proj ... pUnitAppWizard.zip?
2.安装向导:将下载文件解压缩得到一个扩展名
3.为awx的向导文件;
4.将CppUnitTester.awx拷贝到VC的Template目录下。一般位置为Microsoft Visual Studio\Common\MSDev98\Template。
这时重起VC就可在NEW Project下有一个 CPPUnit TestApp Wizard 向导。选择输入测试工程名即可创建一个测试工程,并且缺省的测试fixture 为SampleTest,这样和我们在 Junit中使用的一样,将所要测试文件添加到测试工程内,即可创建TestSuit,Testcase ,写测试方法。

例如写一个测试方法TestLogin, 先在SampleTest 类头文件声明函数,在原文件实现它。并在SampleTest类中用宏 CPPUNIT_TEST( TestLogin ),将TestLogin加入。Build, run,可看到测试界面。在Browse中第一次是空的,点击Browse按钮,选择Test fixture,则可选择测试方法。点击run按钮,就可看到测试结果了。(我开始使用的1.8.0版本,一浏览就出错了,后来换成1.10.2版本就好了,不过还有内存泄露)。

感谢sourcextreme 为我们创建这么方便的工具。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏

该用户从未签到

2#
发表于 2005-7-6 16:55:46 | 只看该作者
谢收了!正在学习中!希望能在多传点相关的资料!呵呵!
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2005-9-20 01:37:37 | 只看该作者

好像有点问题

在第二步:
2. 编译工程文件:将CPPUnit1.10.2.tar.gz 解压缩到本地硬盘,如d:\CPPUnit1.10.2,用VC6.0打开CPPUnit1.10.2中的工程文件CppUnitLibraries.dsw
选择 当前工程为TestPlugInRunner,选择Build菜单下Batch Build的页面, 将会有一对话框,选中所有Project,然后按build 按钮,将生成cppunit的库文件,其位置在CPPUnit1.10.2/lib目录下.

中,或出现错误:
Linking...
LINK : fatal error LNK1104: cannot open file "mfc42ud.lib"
Error executing link.exe.

testrunnerud.dll - 1 error(s), 0 warning(s)

这样的话就无法生成正确的testrunnerud.dll,不知道为什么。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2005-11-4 10:34:57 | 只看该作者

不知

不知一下问题解决了吗?我也碰到了

好像有点问题

在第二步:
2. 编译工程文件:将CPPUnit1.10.2.tar.gz 解压缩到本地硬盘,如d:\CPPUnit1.10.2,用VC6.0打开CPPUnit1.10.2中的工程文件CppUnitLibraries.dsw
选择 当前工程为TestPlugInRunner,选择Build菜单下Batch Build的页面, 将会有一对话框,选中所有Project,然后按build 按钮,将生成cppunit的库文件,其位置在CPPUnit1.10.2/lib目录下.

中,或出现错误:
Linking...
LINK : fatal error LNK1104: cannot open file "mfc42ud.lib"
Error executing link.exe.

testrunnerud.dll - 1 error(s), 0 warning(s)

这样的话就无法生成正确的testrunnerud.dll,不知道为什么。
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2005-11-4 10:52:06 | 只看该作者

我已经解决了,是因为安装vc时那个动态链接库没有安装好,只需要拷贝到mfc/lib下即可

我已经解决了,是因为安装vc时那个动态链接库没有安装好,只需要拷贝到mfc/lib下即可
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2006-2-12 10:38:24 | 只看该作者
我也出现过这个问题Linking...
LINK : fatal error LNK1104: cannot open file "mfc42ud.lib"
Error executing link.exe.

testrunnerud.dll - 1 error(s), 0 warning(s),
不知道怎么解决,不过后来再编译就没有出现了。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2006-2-14 14:15:45 | 只看该作者
解决了
应该有6个lib文件。mfc42u.lib,mfc42ud.lib,mfcd42ud.lib,mfco42ud.lib,mfcs42ud.lib  , mfcs42u.lib,拷贝到
你的VC安装目录下的vc98\lib下。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-23 03:02 , Processed in 0.073326 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表