![單元測(cè)試規(guī)范[教育課資]_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-5/6/756cccc2-d48e-4e7e-86f5-adb01e36f20d/756cccc2-d48e-4e7e-86f5-adb01e36f20d1.gif)
![單元測(cè)試規(guī)范[教育課資]_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-5/6/756cccc2-d48e-4e7e-86f5-adb01e36f20d/756cccc2-d48e-4e7e-86f5-adb01e36f20d2.gif)
![單元測(cè)試規(guī)范[教育課資]_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-5/6/756cccc2-d48e-4e7e-86f5-adb01e36f20d/756cccc2-d48e-4e7e-86f5-adb01e36f20d3.gif)
![單元測(cè)試規(guī)范[教育課資]_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-5/6/756cccc2-d48e-4e7e-86f5-adb01e36f20d/756cccc2-d48e-4e7e-86f5-adb01e36f20d4.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、密 級(jí):普通文件編號(hào):NO.1文件類別:測(cè)試管理體系文件發(fā) 放 號(hào):1001華中8型軟件單元測(cè)試規(guī)范版本:1.1華中數(shù)控軟件開發(fā)部教學(xué)z版本說明日期版本號(hào)發(fā)布說明作者批準(zhǔn)人2015/1/28V1.0王蓉2015/2/10V1.1王蓉目錄目錄II1引言11.1編寫目的11.1.1編寫目的11.1.2適用范圍11.1.3預(yù)期讀者11.2背景11.3定義11.4參考文檔12單元測(cè)試32.1單元的定義32.2角色工作體系32.3單元測(cè)試規(guī)程32.3.1靜態(tài)代碼檢查32.3.2測(cè)試用例42.4單元測(cè)試工具42.5測(cè)試的目錄結(jié)構(gòu)42.6測(cè)試代碼的書寫規(guī)范52.7測(cè)試單元的文件組成及命名規(guī)范52.8單元測(cè)試
2、的實(shí)施規(guī)范53測(cè)試結(jié)果提交和驗(yàn)收63.1提交的測(cè)試產(chǎn)品63.2測(cè)試產(chǎn)品提交方式63.3單元測(cè)試工作產(chǎn)品驗(yàn)收規(guī)范6教學(xué)z1 引言1.1 編寫目的1.1.1 編寫目的本文檔規(guī)定了HNC8軟件單元測(cè)試方法和步驟、測(cè)試用例的設(shè)計(jì)方法、測(cè)試代碼的書寫規(guī)范、流程以及單元測(cè)試的產(chǎn)品提交和驗(yàn)收規(guī)范,目的在于控制單元測(cè)試的質(zhì)量,加強(qiáng)項(xiàng)目的質(zhì)量管理,從而提高整個(gè)產(chǎn)品的質(zhì)量。1.1.2 適用范圍主要是8型軟件的單元測(cè)試、部分系統(tǒng)平臺(tái)軟件模塊測(cè)試。1.1.3 預(yù)期讀者本文檔的預(yù)期讀者為項(xiàng)目的項(xiàng)目經(jīng)理、產(chǎn)品經(jīng)理、系統(tǒng)軟件主研人員、應(yīng)用軟件主研人員、高級(jí)測(cè)試人員等。1.2 背景HNC8系統(tǒng)軟件平臺(tái)是各產(chǎn)品和項(xiàng)目的重要組成
3、部分,為HNC8軟件開發(fā)人員提供必要的測(cè)試環(huán)境。本規(guī)范的提出和制訂旨在為軟件單元測(cè)試提供依據(jù)和支持。1.3 定義被測(cè)模塊:需要進(jìn)行模塊級(jí)測(cè)試的應(yīng)用軟件系統(tǒng)的一個(gè)單元或模塊,也稱被測(cè)單元。測(cè)試單元:用于對(duì)被測(cè)模塊進(jìn)行單元級(jí)測(cè)試,由源代碼、測(cè)試腳本和輸入數(shù)據(jù)等構(gòu)成的程序單元。1.4 參考文檔1 C+Test用戶手冊(cè)2 單元測(cè)試快速起步教學(xué)z2 單元測(cè)試2.1 單元的定義對(duì)于結(jié)構(gòu)化的編程語言,程序單元指程序中定義的函數(shù)或子程序。單元測(cè)試是指對(duì)函數(shù)或子程序所進(jìn)行的測(cè)試。對(duì)于面向?qū)ο蟮木幊陶Z言,程序單元指特定的一個(gè)具體的類或相關(guān)的多個(gè)類。單元測(cè)試主是指對(duì)類方法的測(cè)試。2.2 角色工作體系角色職責(zé)開發(fā)/測(cè)
4、試組長(zhǎng)審查單元測(cè)試過程,對(duì)測(cè)試結(jié)果進(jìn)行評(píng)估。根據(jù)單元測(cè)試發(fā)現(xiàn)的缺陷提出變更申請(qǐng)。開發(fā)/測(cè)試工程師對(duì)單元代碼進(jìn)行檢查,設(shè)計(jì)單元測(cè)試用例,加載運(yùn)行測(cè)試用例,記錄和分析測(cè)試結(jié)果,提交單元測(cè)試Bug。配置管理員管理測(cè)試需要的資源,包括軟硬件環(huán)境,版本管理和Bug 管理。2.3 單元測(cè)試規(guī)程包括靜態(tài)的代碼審查和動(dòng)態(tài)測(cè)試兩個(gè)階段。靜態(tài)代碼審查是按照靜態(tài)檢查規(guī)范中的條項(xiàng)對(duì)單元模塊進(jìn)行逐項(xiàng)檢查,并填寫單元測(cè)試Bug 清單。動(dòng)態(tài)測(cè)試階段首先設(shè)計(jì)相應(yīng)的測(cè)試用例。測(cè)試用例應(yīng)該覆蓋單元模塊的所有功能項(xiàng),如果單元模塊有性能、余量等其它測(cè)試特性要求,則必須設(shè)計(jì)相應(yīng)的測(cè)試用例測(cè)試這些特性。執(zhí)行測(cè)試用例,運(yùn)行得到測(cè)試結(jié)果,比
5、對(duì)測(cè)試結(jié)果查看單元測(cè)試覆蓋率是否達(dá)標(biāo)。如果發(fā)現(xiàn)錯(cuò)誤或Bug,提交單元測(cè)試Bug。2.3.1 靜態(tài)代碼檢查要求:根據(jù)靜態(tài)檢查規(guī)范中的要求,對(duì)被測(cè)試單元進(jìn)行逐項(xiàng)檢查,檢查后在對(duì)應(yīng)的條項(xiàng)后進(jìn)行標(biāo)記,發(fā)現(xiàn)問題后,提交單元測(cè)試Bug。2.3.2 測(cè)試用例設(shè)計(jì)測(cè)試用例是測(cè)試數(shù)據(jù)及與之相關(guān)的測(cè)試規(guī)程的一個(gè)特定的集合,它是為驗(yàn)證被測(cè)試程序(為測(cè)試路徑或驗(yàn)證是否符合特定需求)而產(chǎn)生的。測(cè)試用例設(shè)計(jì)用于白盒測(cè)試和黑盒測(cè)試。白盒測(cè)試進(jìn)入的前提條件是在測(cè)試人員已經(jīng)對(duì)被測(cè)試對(duì)象有了一定的了解,基本上明確了被測(cè)試軟件的邏輯結(jié)構(gòu)。過程是通過針對(duì)程序邏輯結(jié)構(gòu)設(shè)計(jì)和加載測(cè)試用例,驅(qū)動(dòng)程序執(zhí)行,檢查在不同點(diǎn)程序的狀態(tài),以確定實(shí)際
6、的狀態(tài)是否與預(yù)期的狀態(tài)一致。1、白盒測(cè)試主要是對(duì)被測(cè)試對(duì)象進(jìn)行如下測(cè)試項(xiàng)目:u 對(duì)程序模塊的所有獨(dú)立的執(zhí)行路徑至少覆蓋一次;u 對(duì)所有的邏輯判定,真假兩種情況都至少覆蓋一次;u 在循環(huán)的邊界和運(yùn)行界限內(nèi)執(zhí)行循環(huán)體;u 測(cè)試內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性等。白盒測(cè)試達(dá)到的目標(biāo):語句覆蓋率達(dá)到100%,分支覆蓋率達(dá)到100%,覆蓋程序中主要的路徑,主要路徑是指完成需求和設(shè)計(jì)功能的代碼所在的路徑和程序異常處理執(zhí)行到的路徑。黑盒測(cè)試是要首先了解軟件產(chǎn)品具備的功能和性能等需求,再根據(jù)需求設(shè)計(jì)一批測(cè)試用例以驗(yàn)證程序內(nèi)部活動(dòng)是否符合設(shè)計(jì)要求的活動(dòng)。2、黑盒測(cè)試主要是對(duì)被測(cè)試對(duì)象進(jìn)行如下測(cè)試項(xiàng)目:u 測(cè)試程序單元的功能
7、是否實(shí)現(xiàn);u 測(cè)試程序單元性能是否滿足要求(可選);u 可選的其它測(cè)試特性,如邊界、余量、安全性、可靠性、強(qiáng)度測(cè)試、人機(jī)交互界面測(cè)試等。黑盒測(cè)試達(dá)到的目標(biāo):程序單元正確地實(shí)現(xiàn)了需求和設(shè)計(jì)上要求的功能,滿足性能要求,同時(shí)程序單元要有可靠性和安全性。2.4 單元測(cè)試工具規(guī)定使用以下測(cè)試工具實(shí)現(xiàn)應(yīng)用軟件系統(tǒng)單元測(cè)試和子系統(tǒng)集成測(cè)試,以及部分系統(tǒng)平臺(tái)軟件模塊的相關(guān)測(cè)試。請(qǐng)參考C+test9.2簡(jiǎn)明手冊(cè)1、 C+test9.2單機(jī)版(支持VC6.0) 下載路徑:192.168.20.5tools軟件測(cè)試工具 cpptest_9.2.1.26_win32_獨(dú)立版2、 C+test9.0插件版(支持VS20
8、10) 下載路徑:192.168.20.5tools軟件測(cè)試工具 cpptest_9.0_win32_插件版2.5 測(cè)試的目錄結(jié)構(gòu)1、各個(gè)工程存放測(cè)試套件、樁函數(shù)文件、測(cè)試數(shù)據(jù)u 測(cè)試源文件通過導(dǎo)入VC工程,源碼以鏈接方式顯示在工作空間/hncapi/api /hncapi/inc_api/hncapi/libprj /hncapi/plcu 測(cè)試套件 /hncapi/tests u 樁函數(shù)文件 /hncapi/stubs 2、以hnc8/trunk/hncapi.dsw為例:2.6 測(cè)試代碼的書寫規(guī)范2.6.1 測(cè)試套件/測(cè)試用例定義規(guī)范【規(guī)則1】在測(cè)試套件定義中開始注冊(cè)測(cè)試用CPPTEST
9、_TEST_SUITE(TestSuiteName)例: CPPTEST_TEST_SUITE(TestSuite_ActivationGetDayNum);【規(guī)則2】在測(cè)試套件定義中結(jié)束注冊(cè)測(cè)試用例 CPPTEST_TEST_SUITE_END()【規(guī)則3】測(cè)試用例注冊(cè)CPPTEST_TEST(testCaseName)例: CPPTEST_TEST(test_ActivationGetDayNum_Ok); CPPTEST_TEST(test_ActivationGetDayNum_Failed);【規(guī)則4】在測(cè)試套件源文件中使用該宏來定義給定的測(cè)試套件中的測(cè)試所設(shè)置的源/ 頭文件。CPP
10、TEST_CONTEXT(testedFile)例: CPPTEST_CONTEXT(./api/hncactivation.cpp);【規(guī)則5】在測(cè)試套件源代碼中使用該宏來設(shè)置某個(gè)給定的測(cè)試套件將在測(cè)試可執(zhí)行文件構(gòu)建時(shí)被添加到某個(gè)源文件后面CPPTEST_TEST_SUITE_INCLUDED_TO(testedSource)例:CPPTEST_TEST_SUITE_INCLUDED_TO(./api/hncactivation.cpp);備注:下圖示例,測(cè)試套件TestSuite_ActivationGetDayNum 及其測(cè)試用例注冊(cè)2.6.2 測(cè)試用例初始化變量書寫規(guī)范【規(guī)則1】初始化
11、輸入?yún)?shù)例: /* Pre-condition initialization */ /* Initializing argument 1 (sn) */ :Bit8 * _sn = 6933-E8A4-013L-00C1-FBC6-1C13 ;【規(guī)則2】初始化全局變量例: /* Initializing global variable */ :s_hncAct.registerType = 0; :s_hncAct.regRemainDay = 0; :s_hncAct.registerFlag = 0;2.6.3 測(cè)試用例被測(cè)單元函數(shù)調(diào)用規(guī)范【規(guī)則】調(diào)用被測(cè)單元例: /* Tested fu
12、nction call HNC_ActivationSetSn(Bit8 *)*/ :Bit32 _return = :HNC_ActivationSetSn(_sn);2.6.4 測(cè)試用例驗(yàn)證規(guī)范【規(guī)則1】斷言兩個(gè)布爾類型值相等CPPTEST_ASSERT_BOOL_EQUAL(expected,actual)例: CPPTEST_ASSERT_BOOL_EQUAL(0, ( _return );【規(guī)則2】斷言兩個(gè)整型值相等CPPTEST_ASSERT_INTEGER_EQUAL(expected,actual)例: CPPTEST_ASSERT_INTEGER_EQUAL(0, ( _re
13、turn );CPPTEST_ASSERT_INTEGER_EQUAL(66, ( :s_hncAct.regRemainDay );【規(guī)則3】斷言兩個(gè)指針類型字符串相等CPPTEST_ASSERT_PTR_EQUAL(expected,actual)2.6.5 完整測(cè)試用例實(shí)例2.6.6 樁函數(shù)書寫規(guī)范【規(guī)則】查詢當(dāng)前執(zhí)行的測(cè)試用bool CppTest_IsCurrentTestCase(const char* id)例: void CppTest_Stub_nc_gettime (:nctime_t * ptime) if (CppTest_IsCurrentTestCase(test_
14、HNC_ActivationSetSn_Ok) ptime-year = 2015; ptime-month = 1; ptime-day = 20; 2.7 測(cè)試單元的文件組成及命名規(guī)范每個(gè)測(cè)試單元由測(cè)試代碼文件、程序主函數(shù)文件和編譯運(yùn)行腳本文件組成,單元測(cè)試完成之后還生成一系列測(cè)試報(bào)告,這些測(cè)試報(bào)告將與模塊單元一起提交。測(cè)試單元包含如下文件及其所處目錄位置如下所述:【規(guī)則1】測(cè)試套件命名 TestSuite_測(cè)試單元函數(shù)名.cpp例如: TestSuite_ActivationCheckTime.cpp 【規(guī)則2】測(cè)試用例命名 test_測(cè)試單元函數(shù)名_測(cè)試簡(jiǎn)明標(biāo)識(shí)例如: test_HNC
15、_ActivationLoad_Failedtest_HNC_ActivationLoad_Oktest_HNC_ActivationLoad_Null【規(guī)則3】自定義測(cè)試樁命名 測(cè)試單元函數(shù)名_stub.cpp例如: HNC_SysCtrlGetConfig_stub.cpp【規(guī)則4】測(cè)試文件地址:C+test工作空間下,對(duì)應(yīng)各工程文件的test文件夾的路徑例如: workspacehncapitestsautogeneratedapihncactivation.cpp【規(guī)則5】自定義測(cè)試樁文件地址:C+test工作空間下,對(duì)應(yīng)各工程文件的stubs文件夾的路徑。例如: workspaceh
16、ncapistubs2.8 單元測(cè)試的實(shí)施規(guī)范按照單元測(cè)試規(guī)程進(jìn)行實(shí)施,進(jìn)行代碼審查和動(dòng)態(tài)測(cè)試?!疽?guī)則1】從服務(wù)器下載最新源碼,導(dǎo)入VC6.0項(xiàng)目來創(chuàng)建C+test項(xiàng)目,添加各個(gè)工程對(duì)應(yīng)的測(cè)試文件到本地?!疽?guī)則2】要求靜態(tài)檢查通過后,再開始單元測(cè)試?!疽?guī)則3】在寫測(cè)試用例驅(qū)動(dòng)時(shí),所有外部傳入?yún)?shù)、全局變量等都需要進(jìn)行初始化。【規(guī)則4】調(diào)用原始定義的樁函數(shù)時(shí),該樁函數(shù)應(yīng)該是系統(tǒng)標(biāo)準(zhǔn)函數(shù)或者是已通過測(cè)試的函數(shù)?!疽?guī)則5】系統(tǒng)函數(shù)作為樁函數(shù)時(shí),一般情況采用原始定義,特殊情況可以自定義?!疽?guī)則6】在編寫或調(diào)試測(cè)試驅(qū)動(dòng)和樁時(shí),禁止修改源代碼進(jìn)行調(diào)試?!疽?guī)則7】測(cè)試結(jié)果輸出,要根據(jù)具體情況把函數(shù)中數(shù)據(jù)流的
17、值進(jìn)行驗(yàn)證?!疽?guī)則8】測(cè)試文件,要求在C+test編譯通過并執(zhí)行通過,才能提交到服務(wù)器。教學(xué)z3 測(cè)試結(jié)果提交和驗(yàn)收參與單元測(cè)試的人員,將各自負(fù)責(zé)測(cè)試的模塊單元測(cè)試后提交服務(wù)器,服務(wù)器完成工程內(nèi)的所有測(cè)試用例執(zhí)行,以及測(cè)試報(bào)告反饋。開發(fā)和測(cè)試組長(zhǎng)需要查看測(cè)試報(bào)告,驗(yàn)收單元測(cè)試質(zhì)量,并給出一定的指導(dǎo)意見!3.1 提交的測(cè)試產(chǎn)品1、對(duì)于每個(gè)被測(cè)單元的測(cè)試結(jié)果提交u 每個(gè)測(cè)試單元測(cè)試實(shí)現(xiàn).cpp 文件u 每個(gè)測(cè)試單元的相關(guān)樁函數(shù)實(shí)現(xiàn).cppu 每個(gè)測(cè)試單元的測(cè)試設(shè)計(jì)文檔,請(qǐng)參考hncactivation.cpp單元測(cè)試設(shè)計(jì)文檔。2、單元測(cè)試總結(jié)報(bào)告(由服務(wù)器完成)u 靜態(tài)檢查報(bào)告 rep_StaticAnalysis.htmlu 單元測(cè)試執(zhí)行報(bào)告 rep_run.htmlu 單元測(cè)試任務(wù)報(bào)告 report_dev.html3.2 測(cè)試產(chǎn)品提交方式按照各個(gè)工程存放測(cè)試套件、樁函數(shù)文件、測(cè)試數(shù)據(jù),以下以hnc8/trunk/hncapi為例:1、測(cè)試套件位置 /trunk/unit_test/hncapi/tests 2、樁函數(shù)文件位置 /trunk/unit_test/hncapi/stubs 3、測(cè)試數(shù)據(jù)位置 /trunk/uni
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)管理服務(wù)咨詢服務(wù)簡(jiǎn)單合同
- 沖孔灌注樁施工勞務(wù)分包合同
- 三方合同補(bǔ)充協(xié)議書
- 資產(chǎn)買賣合同
- 給水、污水泵設(shè)備安裝合同
- 地毯購(gòu)銷合同范本地毯購(gòu)銷合同
- 在線教育系統(tǒng)共建共享合同
- 產(chǎn)品銷售合同范本集錦
- 醫(yī)療器械銷售合同簡(jiǎn)易模板
- 社區(qū)團(tuán)購(gòu)平臺(tái)搭建及運(yùn)營(yíng)合同
- 2024年濰坊工程職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)完美版
- GB/T 44823-2024綠色礦山評(píng)價(jià)通則
- 人教版英語高考試卷與參考答案(2024年)
- 紅樓夢(mèng)服飾文化
- 浙江省中小學(xué)心理健康教育課程標(biāo)準(zhǔn)
- 《共情的力量》課件
- 2022年中國(guó)電信維護(hù)崗位認(rèn)證動(dòng)力專業(yè)考試題庫(kù)大全-上(單選、多選題)
- 水平二(四年級(jí)第一學(xué)期)體育《小足球(18課時(shí))》大單元教學(xué)計(jì)劃
- 《關(guān)于時(shí)間管理》課件
- 醫(yī)藥高等數(shù)學(xué)智慧樹知到課后章節(jié)答案2023年下浙江中醫(yī)藥大學(xué)
- 城市道路智慧路燈項(xiàng)目 投標(biāo)方案(技術(shù)標(biāo))
評(píng)論
0/150
提交評(píng)論