資源描述:
《Chp 6 白盒測(cè)試用例設(shè)計(jì)技術(shù)ppt課件.ppt》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、第6章白盒測(cè)試用例設(shè)計(jì)技術(shù)9/10/20211軟件質(zhì)量保證與測(cè)試內(nèi)容提要白盒測(cè)試技術(shù)靜態(tài)白盒法侵入式法路徑覆蓋法基本路徑法定義/使用法程序片法白盒測(cè)試的其他方法2軟件質(zhì)量保證與測(cè)試白盒測(cè)試技術(shù)白盒測(cè)試的定義白盒測(cè)試是基于代碼的針對(duì)被測(cè)對(duì)象內(nèi)部是如何進(jìn)行工作的測(cè)試,通過(guò)程序代碼或者通過(guò)開(kāi)發(fā)工具找出軟件的缺陷,也稱(chēng)作結(jié)構(gòu)測(cè)試或邏輯驅(qū)動(dòng)測(cè)試。白盒測(cè)試的目的檢測(cè)軟件程序內(nèi)部結(jié)構(gòu),程序書(shū)寫(xiě)是否規(guī)范、是否按照項(xiàng)目需求規(guī)格說(shuō)明正常運(yùn)行。白盒測(cè)試法檢查程序內(nèi)部邏輯結(jié)構(gòu),對(duì)所有邏輯路徑進(jìn)行測(cè)試,是一種窮舉路徑的測(cè)試方法。是基于覆蓋的測(cè)試技術(shù)
2、!覆蓋全部代碼、分支、路徑、條件3軟件質(zhì)量保證與測(cè)試白盒測(cè)試技術(shù)重要說(shuō)明即使每條路徑都測(cè)試過(guò)了,仍然可能存在錯(cuò)誤。原因在于:窮舉路徑測(cè)試無(wú)法檢查出程序本身是否違反了設(shè)計(jì)規(guī)范,即程序是否是一個(gè)錯(cuò)誤的程序。窮舉路徑測(cè)試不可能查出程序因遺漏路徑而出錯(cuò)。窮舉路徑測(cè)試發(fā)現(xiàn)不了一些與數(shù)據(jù)相關(guān)的錯(cuò)誤。4軟件質(zhì)量保證與測(cè)試白盒測(cè)試技術(shù)白盒測(cè)試技術(shù)靜態(tài)方法(靜態(tài)分析)代碼檢查、靜態(tài)結(jié)構(gòu)分析靜態(tài)分析能夠有效地發(fā)現(xiàn)30%~70%的邏輯設(shè)計(jì)和編碼錯(cuò)誤定性分析軟件質(zhì)量動(dòng)態(tài)方法各種覆蓋方法……5軟件質(zhì)量保證與測(cè)試白盒測(cè)試的策略各種方法綜合使用應(yīng)盡量使
3、用工具進(jìn)行靜態(tài)結(jié)構(gòu)分析采取先靜態(tài)后動(dòng)態(tài)的組合方式先進(jìn)行靜態(tài)結(jié)構(gòu)分析、代碼檢查和靜態(tài)質(zhì)量度量然后進(jìn)行覆蓋率測(cè)試不同測(cè)試階段測(cè)試的側(cè)重點(diǎn)不同單元測(cè)試:代碼檢查、邏輯覆蓋集成測(cè)試:靜態(tài)結(jié)構(gòu)分析、靜態(tài)質(zhì)量度量系統(tǒng)測(cè)試:根據(jù)黑盒測(cè)試的結(jié)果采取相應(yīng)的白盒測(cè)試6軟件質(zhì)量保證與測(cè)試內(nèi)容提要白盒測(cè)試技術(shù)靜態(tài)白盒法侵入式法路徑覆蓋法基本路徑法定義/使用法程序片法白盒測(cè)試的其他方法7軟件質(zhì)量保證與測(cè)試為什么要進(jìn)行靜態(tài)白盒測(cè)試盡早發(fā)現(xiàn)軟件缺陷為黑盒測(cè)試員在接受軟件進(jìn)行測(cè)試時(shí)設(shè)計(jì)和應(yīng)用測(cè)試用例提供思路8軟件質(zhì)量保證與測(cè)試靜態(tài)白盒測(cè)試(靜態(tài)分析)靜態(tài)
4、白盒測(cè)試是在不執(zhí)行程序的情況下有條理地仔細(xì)審查軟件設(shè)計(jì)、體系結(jié)構(gòu)和代碼,從而找出軟件缺陷的過(guò)程。靜態(tài)分析的手段代碼檢查依據(jù)公司頒布的編碼規(guī)范等技術(shù)標(biāo)準(zhǔn),可通過(guò)事先制定好的檢查表(CheckList)進(jìn)行檢查。靜態(tài)結(jié)構(gòu)分析主要是以圖形的方式表現(xiàn)程序的內(nèi)部結(jié)構(gòu),如控制流圖、函數(shù)調(diào)用關(guān)系圖……9軟件質(zhì)量保證與測(cè)試靜態(tài)白盒方法檢查的內(nèi)容模塊規(guī)范性測(cè)試代碼對(duì)標(biāo)準(zhǔn)的遵循、可讀性、代碼的邏輯表達(dá)的正確性等。例:命名規(guī)范,…模塊邏輯性測(cè)試檢查算法是否實(shí)現(xiàn)了所要求的功能。例:引用分析、表達(dá)式分析(如數(shù)組下標(biāo)、零除數(shù),…)模塊接口測(cè)試確定參數(shù)
5、的個(gè)數(shù)、數(shù)據(jù)類(lèi)型、順序、返回值等是否正確模塊局部數(shù)據(jù)結(jié)構(gòu)測(cè)試局部變量的邏輯正確性模塊全局?jǐn)?shù)據(jù)結(jié)構(gòu)測(cè)試全局變量的邏輯正確性10軟件質(zhì)量保證與測(cè)試靜態(tài)白盒方法的四個(gè)要素確定問(wèn)題靜態(tài)白盒測(cè)試的目的是找出軟件的問(wèn)題,全部的批評(píng)應(yīng)該直指代碼或設(shè)計(jì),而不是其設(shè)計(jì)實(shí)現(xiàn)者。參與者之間不應(yīng)該相互指責(zé),應(yīng)該把自我意識(shí)、個(gè)人情緒和敏感丟在一邊。遵守規(guī)則靜態(tài)白盒測(cè)試要遵守一套固定的規(guī)則,如哪些內(nèi)容要做評(píng)價(jià)等。其重要性在于參與者了解自己的角色、目標(biāo)是什么。有助于使審查進(jìn)展更加順利。充分準(zhǔn)備每一個(gè)參與者都盡力為審查做準(zhǔn)備。根據(jù)審查的類(lèi)型,參與者可能扮
6、演不同的角色。他們需要了解自己的責(zé)任和義務(wù),并積極參與審查。在審查過(guò)程中找出的問(wèn)題大部分是在準(zhǔn)備期間發(fā)現(xiàn)的,而不是實(shí)際審查期間。編寫(xiě)報(bào)告審查小組必須做出審查結(jié)果的書(shū)面總結(jié)報(bào)告,并使報(bào)告便于開(kāi)發(fā)小組的成員使用。11軟件質(zhì)量保證與測(cè)試靜態(tài)白盒測(cè)試法分類(lèi)靜態(tài)白盒測(cè)試法一般根據(jù)審查的嚴(yán)格程度分為三種同行評(píng)審代碼走查評(píng)審12軟件質(zhì)量保證與測(cè)試同行評(píng)審/同事審查要求最底的正式審查同事之間換著審查常在編寫(xiě)代碼或設(shè)計(jì)體系結(jié)構(gòu)的程序員之間進(jìn)行為了提高效率,也必須遵守4個(gè)基本要素13軟件質(zhì)量保證與測(cè)試代碼走查走查是正式、嚴(yán)格、具有深度的技術(shù)評(píng)
7、審,以便盡可能準(zhǔn)確地確定問(wèn)題之所在。走查過(guò)程的目的:在軟件開(kāi)發(fā)過(guò)程中盡可能早地發(fā)現(xiàn)問(wèn)題確保對(duì)重要部分達(dá)成一致意見(jiàn)有組織的代碼走查在編碼階段去除錯(cuò)誤的成本是在軟件發(fā)布階段去除錯(cuò)誤成本的1/92。最大的問(wèn)題是勸說(shuō)開(kāi)發(fā)者要遵循一定的標(biāo)準(zhǔn)。14軟件質(zhì)量保證與測(cè)試編碼標(biāo)準(zhǔn)與規(guī)范編碼標(biāo)準(zhǔn)與規(guī)范的原因可靠性可讀性/維護(hù)性移植性……編碼規(guī)范與風(fēng)格代碼應(yīng)該是清楚的和簡(jiǎn)單的-------具有直截了當(dāng)?shù)倪壿嫛⒆匀坏谋磉_(dá)式、通行的語(yǔ)言使用方式好的風(fēng)格對(duì)于好的程序設(shè)計(jì)具有關(guān)鍵性作用項(xiàng)目要求從嚴(yán)格遵守國(guó)家和國(guó)際標(biāo)準(zhǔn)到松散的小組內(nèi)部規(guī)范ANSI標(biāo)準(zhǔn)IE
8、C標(biāo)準(zhǔn)ISO標(biāo)準(zhǔn)NCITS標(biāo)準(zhǔn)ACM標(biāo)準(zhǔn)IEEE標(biāo)準(zhǔn)……15軟件質(zhì)量保證與測(cè)試代碼審查(評(píng)審)評(píng)審是最正式的審查類(lèi)型。評(píng)審的陳述者不是原來(lái)的程序員。這就迫使他們學(xué)習(xí)和了解要陳述的材料,從而有可能在會(huì)議上提出不同的看法和解釋。其余的參與者稱(chēng)為評(píng)審員,其職責(zé)是從不同的角度,例如用戶(hù)、測(cè)試員或者產(chǎn)品支持人員的