軟件測試 第3章靜態(tài)測試技術(shù)_第1頁
軟件測試 第3章靜態(tài)測試技術(shù)_第2頁
軟件測試 第3章靜態(tài)測試技術(shù)_第3頁
軟件測試 第3章靜態(tài)測試技術(shù)_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、第3章 靜態(tài)測試技術(shù)1. 靜態(tài)測試技術(shù)概述1 概念: 1.1 定義:是指不通過執(zhí)行被測程序而對軟件產(chǎn)品(包括工作產(chǎn)品)進(jìn)行分析的測試活動測試對象:需求規(guī)約、分析和設(shè)計規(guī)約、代碼街開發(fā)過程中的各種文檔1.2 目的:一般是對工作產(chǎn)品進(jìn)行確認(rèn) (例如設(shè)計規(guī)格說明是否正確實現(xiàn)了所有的系統(tǒng)需求),并對設(shè)計的質(zhì)量進(jìn)行驗證1.3 優(yōu)點:靜態(tài)測試的成本低,效率高,可以在開發(fā)早期發(fā)現(xiàn)軟件中的缺陷和錯誤,是有效的測試技術(shù)。2 原則:2.1 所有違背編碼標(biāo)準(zhǔn)的因素都要進(jìn)行評審,例如標(biāo)識符如何命名,代碼如何縮進(jìn)2.2 對代碼的復(fù)雜度進(jìn)行評審,代碼要求易簡不易繁,提高可讀性,便于閱讀,代碼復(fù)雜度要降低2.3 審查并刪除

2、不可用的代碼、未被調(diào)用的過程和未使用的變量2.4 報告所有類型的數(shù)據(jù)流異常常見的數(shù)據(jù)流異常Ø 變量在初始化前使用(未初始化就使用),未定義先使用Ø 被賦值的變量一直末被使用:變量是多余無意義Ø 變量在兩次賦值之間末被使用:第一次賦值對程序而言是無意義Ø 參數(shù)不匹配:如果參數(shù)個數(shù),類型,順序不匹配,函數(shù)調(diào)用則失敗Ø 可疑的類型轉(zhuǎn)換:例如實型數(shù)據(jù)轉(zhuǎn)為整型,小數(shù)會丟失,不為零的數(shù)據(jù)變?yōu)榱?,造成運算錯誤3 靜態(tài)測試方法分類:靜態(tài)測試人工方法(評審)由測試人員手工逐步執(zhí)行所有的活動,并觀察每一步是否成功完成代碼檢查桌面檢查代碼審查走查正規(guī)技術(shù)評審自動方法

3、使用一組測試工具對被測軟件進(jìn)行分析和驗證說明:運行測試工具被測試軟件自己不運行而是被測試工具分析,作為測試工具輸入源2. 代碼檢查1. 概念:主要檢查代碼與設(shè)計的一致性,代碼對標(biāo)準(zhǔn)的遵循、可讀性,代碼邏輯表達(dá)的正確性,代碼結(jié)構(gòu)的合理性等2. 代碼檢查類型:2.1 桌面檢查Ø 程序員在程序通過編譯后,對自己編寫的程序代碼進(jìn)行分析、檢驗,補充相關(guān)文檔,目的是發(fā)現(xiàn)程序中的錯誤和缺陷2.2 代碼審查2.3 代碼走查3 代碼審查:3.1 由若干程序員和測試員組成一個審查小組,通過閱讀、討論和爭議,對程序進(jìn)行靜態(tài)分析3.2 審查步驟Ø 第一步:準(zhǔn)備:事先把審查材料(如設(shè)計規(guī)格說明、控制

4、流程圖、程序文本以及相關(guān)的要求和規(guī)范)分發(fā)給小組成員,準(zhǔn)備一份常見的錯誤和缺陷清單(稱為檢查表),小組成員充分閱讀這些材料Ø 第二步:代碼審查會:程序員介紹程序邏輯,審查小組成員提問、討論、審查錯誤和缺陷是否存在3.3 GB/T 15532-2008計算機(jī)軟件測試規(guī)范附錄A介紹了靜態(tài)測試方法-代碼審查3.3.1 測試內(nèi)容:檢查代碼和設(shè)計的一致性;檢查代碼執(zhí)行標(biāo)準(zhǔn)的情況;檢查代碼邏輯表達(dá)的正確性;檢查代碼結(jié)構(gòu)的合理性;檢查代碼的可讀性3.3.2 組織:由四人以上組成,分別為組長、資深程序員、程序編寫者與專職測試人員3.3.3 過程:準(zhǔn)備階段,程序閱讀,會議審查,形成報告3.3.4 代碼

5、審查單內(nèi)容:寄存器使用,格式,入口和出口連接,程序語言的使用,存儲器使用,測試與轉(zhuǎn)移,性能,可維護(hù)性,邏輯,軟件等4 代碼走查:4.1 走查是一種非正式評審,被查工作產(chǎn)品的開發(fā)者向其他相關(guān)人員描述其產(chǎn)品并征求意見屬于一種即興的審查,如編寫了某一代碼,直接與其他編程人員討論,一般準(zhǔn)備一組測試用例,人工模擬計算機(jī)運行軟件;雖然笨拙,但發(fā)現(xiàn)錯誤的概率很高,在發(fā)現(xiàn)錯誤的同時能找到解決的方法。4.2 代碼走查的步驟與代碼審查的步驟相似4.3 走查的參與者模擬計算機(jī)運行過程來人工執(zhí)行少量的、用于人工跟蹤的測試用例,其目的是質(zhì)疑隱藏在源代碼之后的邏輯和基本假設(shè)4.4 走查的主要目標(biāo)是對故障進(jìn)行檢測和文檔化,

6、而不是對開發(fā)者的能力進(jìn)行評價5 走查過程:5.1 計劃走查會議5.2 走查產(chǎn)品5.3 走查會議5.4 解決問題5.5 記錄走查5.6 返工產(chǎn)品6 走查類型:6.1 規(guī)格說明走查Ø 規(guī)格說明走查包括:系統(tǒng)規(guī)格說明、項目計劃和需求分析Ø 目標(biāo)是檢查規(guī)格說明中存在的問題以及不準(zhǔn)確、不清晰和冗長之處Ø 參與者:用戶、高級分析員、項目分析員Ø 對象:數(shù)據(jù)流圖、數(shù)據(jù)字典、實體關(guān)系圖等6.2 設(shè)計走查Ø 設(shè)計走查包括初步設(shè)計和詳細(xì)設(shè)計Ø 目標(biāo)是檢查設(shè)計結(jié)構(gòu)中的缺陷、薄弱環(huán)節(jié)、錯誤和冗余Ø 參與者:用戶、分析人員、高級設(shè)計師、項目設(shè)計人員&

7、#216; 對象:結(jié)構(gòu)圖、詳細(xì)設(shè)計文檔等6.3 代碼走查(使用人工方法模擬計算機(jī)運行軟件)Ø 目標(biāo)是檢查代碼中的錯誤以及違背標(biāo)準(zhǔn)、不清晰、不一致的地方Ø 參與者:編碼人員、項目程序員、設(shè)計人員和外部程序員Ø 對象:代碼列表、編譯器列表等6.4 測試走查Ø 測試走查包括測試計劃和測試步驟Ø 目標(biāo)是檢查測試文檔中不充分、不完整和不清晰的地方Ø 參與者:項目程序員、測試人員、分析人員和設(shè)計人員Ø 對象:測試計劃、測試步驟、測試數(shù)據(jù)示例等3 代碼檢查:代碼檢查的內(nèi)容事項l 檢查變量的交叉引用表l 檢查標(biāo)號的交叉引用表l 檢查子程序、

8、宏、函數(shù)l 等價性檢查l 常量檢查l 標(biāo)準(zhǔn)檢查l 風(fēng)格檢查l 比較控制流l 選擇、激活路徑l 對照程序的規(guī)格說明,詳細(xì)閱讀源代碼,比較實際代碼與期望代碼的差異,從中發(fā)現(xiàn)程序的問題和錯誤l 補充文檔3. 正式評審(正規(guī)評審)1 概述:正式評審在軟件開發(fā)生存周期中每個階段結(jié)束時實施,采用正式的會議評審方式,通過正式評審的活動標(biāo)志著該活動到達(dá)了一個里程碑,該活動的制品也就成為一個基線;正式評審也可以在出現(xiàn)嚴(yán)重問題的時候?qū)嵤? 兩種類型:管理評審和技術(shù)評審a) 項目管理評審的任務(wù)是針對適用的項目計劃、進(jìn)度安排、標(biāo)準(zhǔn)和指南進(jìn)行項目狀態(tài)的評價b) 技術(shù)評審的任務(wù)是舉行技術(shù)評審以評價正在考慮中的軟件產(chǎn)品或服

9、務(wù),并提供相關(guān)證據(jù)(如它們是完備的、符合標(biāo)準(zhǔn)和規(guī)范的等)3. 正式技術(shù)評審內(nèi)容:3.1 評審會議Ø 由評審會主席和若干名評審員組成,參加者大多是與評審內(nèi)容相關(guān)的技術(shù)專家,參加人員不宜太多,通常為35人Ø 必要時(如需求評審)可請用戶代表參加 :是否與用戶需求一致3.2 評審記錄Ø 指派專人記錄會上提出的所有問題Ø 會議結(jié)束后將其整理成一份“評審問題列表”并存檔 3.3 評審報告Ø 評審會結(jié)束時應(yīng)形成評審總結(jié)報告,總結(jié)報告應(yīng)指明被評審的制品,參加評審的人員,評審中發(fā)現(xiàn)的問題以及評審的結(jié)論Ø 評審總結(jié)報告不必很長(通常一頁紙就夠了),而“

10、評審問題列表”可作為評審總結(jié)報告的附件4 正式技術(shù)評審過程:4.1 計劃4.2 預(yù)備會4.3 會前準(zhǔn)備(自評審)4.4 評審會4.5 修正錯誤4.6 復(fù)審4.7 復(fù)核5 正式技術(shù)評審的指導(dǎo)原則:5.1 評審產(chǎn)品,而不是評審生產(chǎn)者(對事不對人,不是對程序員的評判)5.2 制定議事日程且遵守日程5.3 限制爭論和辨駁(主要是發(fā)現(xiàn)問題,不是為了解決問題,解決問題應(yīng)放到評審會以后處理)5.4 對各個問題都發(fā)表見解,但不要試圖解決所有記錄的問題5.5 做書面筆記5.6 限制參與者人數(shù)并堅持事先做準(zhǔn)備5.7 為每個可能要評審的工作制品建立一個檢查表5.8 為正式技術(shù)評審分配資源和時間5.9 對所有評審者進(jìn)行有意義的培訓(xùn)5.10 評審以前所做的評審6 正式技術(shù)評審的檢查表:6.1 根據(jù)不同的評審活動(如軟件需求評審、軟件設(shè)計評審、源代碼評審等)設(shè)計不同的檢查表6.2 例如,軟件設(shè)計評審檢

溫馨提示

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

評論

0/150

提交評論