資源描述:
《測(cè)試、性能和可擴(kuò)展性》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、內(nèi)容提要程序設(shè)計(jì)實(shí)踐(三):ò測(cè)試測(cè)試、性能和可擴(kuò)展性ò性能ò可擴(kuò)展性郭宇紅2005.12.7內(nèi)容提要測(cè)試vs.調(diào)試ò測(cè)試ò調(diào)試(Debug):在程序無(wú)法運(yùn)行或輸出結(jié)果錯(cuò)ò性能誤時(shí),通過(guò)設(shè)置斷點(diǎn)、打印變量值和跟蹤等方法發(fā)現(xiàn)和排除bugò可擴(kuò)展性ò測(cè)試(Testing):調(diào)試通過(guò)后,用系統(tǒng)的方法來(lái)試圖發(fā)現(xiàn)程序中可能存在的隱藏的bug,避免這些bug出現(xiàn)在發(fā)行版本中ò調(diào)試——已知bug測(cè)試——未知bug什么是Bug?Bug舉例1ò功能沒有實(shí)現(xiàn)或與規(guī)格說(shuō)明不一致的問(wèn)題是bug;文本文件保存錯(cuò)誤:ò不能工作(死機(jī)、沒反應(yīng))的部分是bug;在WindowsXP桌面上ò
2、不兼容的部分是bug;新建一個(gè)文本文檔,ò邊界條件未做處理是bug;輸入“聯(lián)通”兩個(gè)ò界面、消息、提示、幫助不夠準(zhǔn)確是bug;字,并保存退出。ò屏幕顯示、打印結(jié)果不正確也是bug;退出后再次打開這個(gè)ò有時(shí)把尚未完成的工作也作為一個(gè)bug。文本文件時(shí),剛才輸入的內(nèi)容變成了亂碼。1Bug舉例2Bug舉例3共享文件夾名超長(zhǎng)時(shí)提示錯(cuò)誤:替換字符串長(zhǎng)度未作限定:WindowsXP支持的最大共享文件夾名長(zhǎng)度為80個(gè)英文字母或Word2000中,40個(gè)漢字,但設(shè)置共享文件夾如果替換字符名時(shí)可輸入的范圍是80個(gè)英文串長(zhǎng)度過(guò)長(zhǎng),字符或80個(gè)漢字,如果共享文則會(huì)引起程序件夾名在
3、41~80個(gè)漢字之間,系統(tǒng)會(huì)提示“該共享名包含無(wú)崩潰。效的字符”。其實(shí)真正的原因是共享文件夾名超長(zhǎng)。Bug報(bào)告Bug狀態(tài)報(bào)告Bug狀態(tài)報(bào)告項(xiàng)目名稱:報(bào)告接收人:報(bào)告人:ò軟件問(wèn)題(Bug)報(bào)告是軟件測(cè)試過(guò)程中最重要的報(bào)告日期:文檔。它記錄了Bug發(fā)生的環(huán)境,如各種資源的配一、Bug狀態(tài)統(tǒng)計(jì)置情況,Bug的再現(xiàn)步驟以及Bug性質(zhì)的說(shuō)明。狀態(tài)NEWASSIGNEDRESOLVEDVERIFIEDREOPENEDUNCONFIRMEDCLOSED總計(jì)模塊Component1ò更重要的是它還記錄著Bug的處理過(guò)程和狀態(tài)。owner1Component2Owner2C
4、omponent3Bug的處理進(jìn)程從一定角度反映了測(cè)試的進(jìn)程和被Owner3總計(jì)測(cè)軟件的質(zhì)量狀況以及改善過(guò)程。二、Bug列表ID嚴(yán)重性優(yōu)先級(jí)屬主狀態(tài)解決摘要注:Bug列表應(yīng)按照狀態(tài)進(jìn)行排序。測(cè)試分類測(cè)試方法ò單元測(cè)試——程序員負(fù)責(zé)ò兩種常用的測(cè)試方法ò一段代碼是否按預(yù)想中方式工作ò黑盒測(cè)試ò系統(tǒng)測(cè)試——專門的測(cè)試部門負(fù)責(zé)ò白盒測(cè)試ò功能測(cè)試:系統(tǒng)是否實(shí)現(xiàn)了特定的功能ò性能測(cè)試:性能上是否滿足要求ò回歸測(cè)試:修改過(guò)的系統(tǒng)是否像以前一樣工作ò壓力測(cè)試:系統(tǒng)在最大可能負(fù)荷時(shí)的表現(xiàn)ò異常測(cè)試:測(cè)試不可能出現(xiàn)的輸入輸出等ò……2黑盒測(cè)試黑盒測(cè)試ò黑盒測(cè)試方法是在程序接
5、口上進(jìn)行測(cè)試,主要是ò這種方法是把測(cè)試對(duì)象看做一個(gè)黑盒子,測(cè)試人為了發(fā)現(xiàn)以下錯(cuò)誤:員完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性,∑是否有不正確或遺漏了的功能?只依據(jù)程序的需求規(guī)格說(shuō)明書,檢查程序的功能∑在接口上,輸入能否正確地接受?能否輸出正確的結(jié)果?是否符合它的功能說(shuō)明?!剖欠裼袛?shù)據(jù)結(jié)構(gòu)錯(cuò)誤或外部信息訪問(wèn)錯(cuò)誤?ò黑盒測(cè)試又叫做功能測(cè)試或數(shù)據(jù)驅(qū)動(dòng)測(cè)試。∑性能上是否能夠滿足要求?∑是否有初始化或終止性錯(cuò)誤?黑盒測(cè)試白盒測(cè)試ò假設(shè)一個(gè)程序P有輸入量X和Y及輸出量Z。在字長(zhǎng)為32位的計(jì)ò此方法把測(cè)試對(duì)象看做一個(gè)透明的盒子,它允許算機(jī)上運(yùn)行。若X、Y取整數(shù),按黑盒方法進(jìn)
6、行窮舉測(cè)試:測(cè)試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息,ò可能采用的設(shè)計(jì)或選擇測(cè)試用例,對(duì)程序所有邏輯路徑進(jìn)行測(cè)試數(shù)據(jù)組:測(cè)試。232×232=264ò通過(guò)在不同點(diǎn)檢查程序的狀態(tài),確定實(shí)際的狀態(tài)ò如果測(cè)試一組數(shù)據(jù)需要1毫秒,一年工作365×24小時(shí),完成是否與預(yù)期的狀態(tài)一致。因此白盒測(cè)試又稱為結(jié)所有測(cè)試需5億年。構(gòu)測(cè)試或邏輯驅(qū)動(dòng)測(cè)試。白盒測(cè)試測(cè)試用例是軟件測(cè)試的核心ò軟件人員使用白盒測(cè)試方法,主要想對(duì)程序模塊進(jìn)行如下檢ò如何以最少的人力、資源投入,在最短的時(shí)間內(nèi)查:完成測(cè)試,發(fā)現(xiàn)軟件系統(tǒng)的缺陷,保證軟件的優(yōu)∑對(duì)程序模塊的所有獨(dú)立的執(zhí)行路徑至少測(cè)試一次;良品質(zhì),
7、則是軟件公司探索和追求的目標(biāo)?!茖?duì)所有的邏輯判定,取“真”與取“假”的兩種情況都至少ò測(cè)試用例是測(cè)試工作的指導(dǎo),是軟件測(cè)試的必須測(cè)試一次;遵守的準(zhǔn)則。更是軟件測(cè)試質(zhì)量穩(wěn)定的根本?!圃谘h(huán)的邊界和運(yùn)行界限內(nèi)執(zhí)行循環(huán)體;障。∑測(cè)試內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性。ò對(duì)一個(gè)具有多重選擇和循環(huán)嵌套的程序,不同的路徑數(shù)目可能是天文數(shù)字3測(cè)試用例設(shè)計(jì)生成的基本準(zhǔn)則黑盒測(cè)試用例的設(shè)計(jì)方法ò測(cè)試用例的代表性:能夠代表并覆蓋各種合理的和不合ò具體的黑盒測(cè)試用例設(shè)計(jì)方法包括等價(jià)類劃分理、合法的和非法的、邊界的和越界的、以及極限的輸入法、邊界值分析法、場(chǎng)景法、錯(cuò)誤推測(cè)法、因果數(shù)據(jù)、操作和環(huán)境
8、設(shè)置等;圖法、判定表驅(qū)動(dòng)法、正交試驗(yàn)設(shè)計(jì)法、功能圖ò