CppUnit構(gòu)建步驟及實(shí)例演練_第1頁(yè)
CppUnit構(gòu)建步驟及實(shí)例演練_第2頁(yè)
CppUnit構(gòu)建步驟及實(shí)例演練_第3頁(yè)
CppUnit構(gòu)建步驟及實(shí)例演練_第4頁(yè)
CppUnit構(gòu)建步驟及實(shí)例演練_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、CppUnit構(gòu)建步驟及實(shí)例演練1、 設(shè)置CppUnit環(huán)境1、 我們把CppUnit解壓,然后打開(kāi)src/目錄下的CppUnitLibraries.dsw文件2、 打開(kāi)文件后,我們不要build和運(yùn)行,應(yīng)執(zhí)行build->batch build,我們只要選擇所有的win32 Debug就行了,如圖1-1總共一起是6項(xiàng)。3、 然后就可以編譯執(zhí)行了,完后,他會(huì)在lib/文件下生成庫(kù)文件,如圖1-2圖 1-1圖 1-24、 設(shè)置頭文件和庫(kù)文件路徑,執(zhí)行Tools->options->Directories,如圖1-3,然后在Show directions for:中選擇文件類(lèi)型(

2、記得三個(gè)都要選擇哦),在directores:里面添加你安裝文件下的include文件(另外兩個(gè)也要對(duì)應(yīng))。點(diǎn)擊確定。然后記得要保存工程(file->save workspace)圖 1-32、 初識(shí)CppUnit測(cè)試環(huán)境1、 進(jìn)入安裝目錄下的example文件夾下,打開(kāi)examples.dsw文件。2、 將CppUnitTestApp工程設(shè)為活動(dòng)工程如圖1-4,然后編譯運(yùn)行,我們可以看到一個(gè)基于GUI方式的單元測(cè)試TestRunner界面(圖1-5)3、 將CppUnitTestMain工程設(shè)置為活動(dòng)工程,編譯運(yùn)行,我們可以看到他是一個(gè)基于文本方式的單元測(cè)試環(huán)境(圖1-6) 圖 1-4

3、圖 1-5圖 1-6三、CppUnitDemoFactorial構(gòu)建步驟(以一個(gè)Factorial函數(shù)為測(cè)試實(shí)例)1、新建一個(gè)基于對(duì)話框的工程CppUnitDemoFactorial.可編譯運(yùn)行。(選擇file->new->Projects->MFC AppWizard(exe),在Project name:里面填上:CppUnitDemoFactorial,點(diǎn)擊OK,然后選擇“基于對(duì)話框(Dialog based),選擇完成)2、 設(shè)置工程屬性:Project->Settings,如圖1-7單擊C+選項(xiàng)卡,在Category:中選擇C+ Language,然后再選中E

4、nable Run-Time Type Information(RTTL);然后在單擊Link選項(xiàng)卡,在Object/library modules:中填入(cppunitd.lib testrunner.lib),最后單擊OK圖 1-73、將Factorial.cpp和Factorial.h添加到工程中(文件下載1、下載2)添加方法:Projiect->Add To Project->files,選中你的文件(記得要把你的文件放在你的工程文件夾下);然后編譯運(yùn)行,會(huì)出現(xiàn)一下錯(cuò)誤代碼:fatal error C1010: unexpected end of file while l

5、ooking for precompiled header directive解決方法:打開(kāi)圖1-7,單擊C+選項(xiàng)卡,在Category:中選擇Precompiled Headers,然后選中Not Using Precompiled Headers,然后保存,再build就不會(huì)出錯(cuò)了。4、新建測(cè)試類(lèi):CFactorialTestCase,派生于CppUnit:TestCase操作步驟:Insert->New Class,會(huì)彈出一下對(duì)話框,并根據(jù)下圖填寫(xiě)4、為CFactorialTestCase類(lèi)添加factorialTest成員函數(shù):右擊此類(lèi)->Add member functi

6、on 彈出對(duì)話框,按下圖填寫(xiě):5、 給成員函數(shù)添加函數(shù)體,語(yǔ)句如下:CPPUNIT_ASSERT_EQUAL(0,Factorial(-5);/這是測(cè)試語(yǔ)句CPPUNIT_ASSERT_EQUAL(1,Factorial(0); CPPUNIT_ASSERT_EQUAL(6,Factorial(3);解釋?zhuān)豪ㄌ?hào)中0、1、6是期望值,F(xiàn)actorial(x)是對(duì)應(yīng)測(cè)試的函數(shù)6、 在CFactorialTestCase類(lèi)的定義文件中(FactorialTestCase.h),添加一下代碼#include <cppunit/TestCase.h>#include <CppUnit/

7、extensions/HelperMacros.h>#include <Factorial.h>#if _MSC_VER > 1000#pragma once#endif / _MSC_VER > 1000class CFactorialTestCase : public CppUnit:TestCase CPPUNIT_TEST_SUITE(CFactorialTestCase);CPPUNIT_TEST(factorialTest);CPPUNIT_TEST_SUITE_END();public:void FactorialTest();CFactorialT

8、estCase();virtual CFactorialTestCase();10、 在FactorialTestCase.cpp中添加一下代碼:/ Construction/Destruction/CPPUNIT_TEST_SUITE_REGISTRATION(CFactorialTestCase);CFactorialTestCase:CFactorialTestCase()11、 在CppUnitDemoFactorial.cpp中添加一下代碼:在文件的最開(kāi)頭添加一下頭文件包涵語(yǔ)句:#include <cppunit/ui/mfc/TestRunner.h>#include

9、<cppunit/extensions/TestFactoryRegistry.h>在InitInstance()函數(shù)中添加一下代碼,并把其他所有代碼注釋掉BOOL CCppUnitDemoFactorialApp:InitInstance()AfxEnableControlContainer();CppUnit:MfcUi:TestTunner runner;runner.addTest(CppUnit:TestFactoryRegistry:getRegistry().makeTest();runner.run();return TRUE;12、 按道理說(shuō)現(xiàn)在可以運(yùn)行了,不過(guò),呵呵大家別急哦,如果

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論