目前,CPPUnit在WIN32平臺(tái)下僅支持Microsoft Visual C++,而且你的VC++編譯器至少應(yīng)該是6.0版本的。
使用GUI TestRunner編譯運(yùn)行示例程序的步驟如下:
在VC++中打開(kāi)examples/examples.dsw(包含所有的示例)
將HostApp設(shè)為active project
編譯之
在VC中選擇Tools/Customize.../Add-ins and Macro Files,點(diǎn)擊Browse...
選擇lib/TestRunnerDSPlugIn.dll文件,并按ok以注冊(cè)該附加件(add-ins)
運(yùn)行project
[Project創(chuàng)建結(jié)果]
框架 & 工具:
cppunit(cppunit.lib):?jiǎn)卧獪y(cè)試的框架庫(kù),你將用它來(lái)編寫單元測(cè)試。
cppunit_dll(cppunit_dll.dll/lib):同上,只是以DLL方式呈現(xiàn)。
TestRunner(testrunner.dll):一個(gè)MFC的擴(kuò)展DLL,用來(lái)以GUI方式運(yùn)行單元測(cè)試和查看結(jié)果。
DSPlugIn(lib/TestRunnerDSPlugIn.dll):一個(gè)VC++的附加件,為testrunner.dll所使用。有了它之后,你若在MFC TestRunner中雙擊某個(gè)failure,會(huì)啟動(dòng)VC++,打開(kāi)failure所在文件并定位到某行。
TestPlugInRunner:(警告:實(shí)驗(yàn)性的)一個(gè)VC++應(yīng)用程序,用以運(yùn)行測(cè)試插件。測(cè)試插件是一個(gè)公開(kāi)特定接口的DLL。該應(yīng)用程序目前尚未完成(auto-reload特性丟失)。
所有庫(kù)文件都被置于lib/目錄下。
[示例]
CppUnitTestMain:一個(gè)實(shí)際的測(cè)試包(test suite)用來(lái)測(cè)試CppUnit。使用了TextTestRunner(文本方式的單元測(cè)試環(huán)境),利用CompilterOutputter進(jìn)行post-build testing(即在編譯結(jié)束之后緊跟著進(jìn)行測(cè)試)。在配置中設(shè)定連接了cppunit的靜態(tài)庫(kù)和動(dòng)態(tài)庫(kù)。
CppUnitTestApp:包含了與CppUnitTestMain相同的測(cè)試包,但使用了MFC TestRunner(GUI方式的單元測(cè)試環(huán)境)
hierarchy : 一個(gè)演示如何子類化測(cè)試的例子(你也許更愿意使用HelperMacros.h以及宏CPPUNIT_TEST_SUB_SUITE,這種方式更為簡(jiǎn)潔清晰。本示例已經(jīng)很久沒(méi)有更新了)。
HostApp : 一個(gè)用MFC TestRunner演示各種失敗測(cè)試的例子。也演示了MFC Unicode TestRunner。
TestPlugIn : 一個(gè)演示如何為TestPlugInRunner編寫TestPlugIn的例子(實(shí)驗(yàn)性的).
[配置(Configuration)]
CppUnit和TestRunner帶有3種配置。
Release():多線程DLL,release模式
Debug(d):Debug多線程DLL,debug模式
Unicode Release(u):Unicode多線程DLL,release模式
Unicode Debug(ud):Unicode Debug 多線程DLL,debug模式
Debug Crossplatform (cd): Debug 多線程DLL,沒(méi)有使用type_info從類名中提取測(cè)試用例的包名。
對(duì)CppUnit而言,當(dāng)創(chuàng)建dll時(shí),字母“dll” 將被添加到后綴之后。
括號(hào)內(nèi)的字母標(biāo)明了添加到庫(kù)名之后的后綴。例如,debug配置的cppunit靜態(tài)庫(kù)名為cppunitd.lib。debug配置的cppunit動(dòng)態(tài)庫(kù)名為cppunitd_dll.lib.
[創(chuàng)建(Building)]
在VC++中打開(kāi)src/CppUnitLibraries.dsw工作區(qū)文件。
將TestPlugInRunner設(shè)為active project。
在'Build'菜單中選擇'Batch Build...'
在Batch Build對(duì)話框中,選中所有的project 并按下build按鈕。
所有的庫(kù)文件可以在lib/目錄下找到。