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