高效的測(cè)試確??筛櫺院万?yàn)證要求
這些標(biāo)準(zhǔn)的共同之處是運(yùn)行以要求為基礎(chǔ)的測(cè)試。在這些標(biāo)準(zhǔn)之中最顯著的是航彈系統(tǒng)標(biāo)準(zhǔn),DO-178B。這個(gè)標(biāo)準(zhǔn)主要定義了兩個(gè)基于測(cè)試的要求活動(dòng)作為功能測(cè)試或黑盒測(cè)試(下圖),以及結(jié)構(gòu)覆蓋或白盒測(cè)試。
功能測(cè)試需要開發(fā)工程師或測(cè)試工程師掌握確定被測(cè)代碼行為的軟件要求。更確切的說,開發(fā)工程師(或測(cè)試工程師)必須根據(jù)輸出和預(yù)期的結(jié)果來定義輸入和條件,以便制定出測(cè)試規(guī)范。該測(cè)試規(guī)范可能會(huì)以一或多個(gè)測(cè)試用例的形式給出,以便完全遍歷測(cè)試規(guī)范的要求。
結(jié)構(gòu)覆蓋或白盒測(cè)試有助于驗(yàn)證黑盒測(cè)試的完整性。結(jié)構(gòu)測(cè)試也有助于確定實(shí)際建造設(shè)計(jì)的正確性;例如,如果所必的軟件功能已經(jīng)全部運(yùn)行過,但仍然有未覆蓋的代碼,那么,這段多余的代碼的作用就是問題所在,代碼運(yùn)行時(shí)間的可預(yù)測(cè)性也一樣。
本文第2部分將討論能力成熟度模型(CMMI)標(biāo)準(zhǔn)在改善軟件開發(fā)過程中的作用,從中引出把測(cè)試信息映射為要求的工具。
基于需求的測(cè)試及其固有的需求可跟蹤性和驗(yàn)證過程被普遍認(rèn)為推廣企業(yè)標(biāo)準(zhǔn)的最佳實(shí)踐,如能力成熟度模型集成(CMMI)。CMMI是一個(gè)能夠?yàn)榻M織提供有效過程關(guān)鍵元素的過程改進(jìn)方法。它能夠用于引導(dǎo)一個(gè)項(xiàng)目、部門或整個(gè)組織的過程改進(jìn)。CMMI能同時(shí)使關(guān)鍵性及非關(guān)鍵性軟件均獲益。
如下方工程過程區(qū)域圖所示,需求管理(REQM)和需求開發(fā)(RD)是CMMI的兩個(gè)主要的過程域。
表中的技術(shù)解決方案(TS)是將需求細(xì)化為原型或組件。驗(yàn)證過程域(VER)確保所選擇的工作產(chǎn)品滿足規(guī)定的需求。驗(yàn)證過程域(VAL)則根據(jù)客戶的需求加強(qiáng)對(duì)產(chǎn)品的驗(yàn)證。驗(yàn)證過程可以在工作環(huán)境或模擬工作環(huán)境中進(jìn)行。
最后,從編程標(biāo)準(zhǔn)的角度看,對(duì)于所有的開發(fā)活動(dòng)來說,過程如極限編程(Extreme Programming)及基于需求的開發(fā)和測(cè)試是不可或缺的。如下圖所示,采用極限編程,用戶的“故事”在代碼開發(fā)之前,通過與客戶一起合作就可以準(zhǔn)備好,并且用作測(cè)試場(chǎng)景的軟件前綴。
TBreq介紹
TBreq由LDRA Testbed(包括代碼評(píng)審、質(zhì)量評(píng)審、設(shè)計(jì)評(píng)審組件及代碼覆蓋)和TBrun(單元測(cè)試組件)構(gòu)成,通過與LDRA工具包集成,能夠提供一套獨(dú)特的解決方案來克服困難,從而在測(cè)試規(guī)格、單元測(cè)試場(chǎng)景、測(cè)試數(shù)據(jù)及代碼覆蓋率驗(yàn)證與高層次的設(shè)計(jì)需求之間建立映射關(guān)系。
TBreq直接與需求管理工具(DOORS、ReqPro、Word或Excel)接口來保證整個(gè)軟件生命周期中實(shí)現(xiàn)需求可跟蹤性,同時(shí)保證需求覆蓋的完整性(見下圖)。
在LDRA工具包里,TBreq根據(jù)需求直接生成測(cè)試規(guī)范和可執(zhí)行的測(cè)試用例。測(cè)試結(jié)果自動(dòng)返回到需求管理工具中,提供“雙向”需求可跟蹤性驗(yàn)證。
TBreq的作用描述如下:需求可通過需求管理工具,如DOORS、ReqPro、文擋或電子數(shù)據(jù)表獲取。TBreq作為這些需求源與LDRA Testbed測(cè)試管理儀表盤之間的網(wǎng)關(guān),并且直接與LDRA Testbed項(xiàng)目及其基層項(xiàng)目目錄接口。
評(píng)論