軟件測試方法和技術(shù)(第三版)總復(fù)習(xí).ppt_第1頁
軟件測試方法和技術(shù)(第三版)總復(fù)習(xí).ppt_第2頁
軟件測試方法和技術(shù)(第三版)總復(fù)習(xí).ppt_第3頁
軟件測試方法和技術(shù)(第三版)總復(fù)習(xí).ppt_第4頁
軟件測試方法和技術(shù)(第三版)總復(fù)習(xí).ppt_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

軟件測試 總復(fù)習(xí) 主要內(nèi)容 CH1軟件測試概述CH2黑盒測試CH3白盒測試CH4集成測試CH5系統(tǒng)測試CH6軟件測試自動化基礎(chǔ) CH1軟件測試概述 軟件測試的目的和意義軟件測試的過程軟件測試與軟件開發(fā)的關(guān)系 軟件測試的定義 軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程 或者說 軟件測試是根據(jù)軟件開發(fā)各階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計一批測試用例 即輸入數(shù)據(jù)及其預(yù)期的輸出結(jié)果 并利用這些測試用例去運行程序 以發(fā)現(xiàn)程序錯誤的過程 簡單地說 軟件測試是 探測 在 探測 中發(fā)現(xiàn)軟件的毛病 CH1軟件測試概述 CH1軟件測試概述 軟件測試的目的和意義 以最少的時間和人力 系統(tǒng)地找出軟件中潛在的各種錯誤和缺陷 如果我們成功地實施了測試 我們就能夠發(fā)現(xiàn)軟件中的錯誤 測試的附帶收獲是 它能夠證明軟件的功能和性能與需求說明相符合 實施測試收集到的測試結(jié)果數(shù)據(jù)為可靠性分析提供了依據(jù) CH1軟件測試概述 軟件測試的過程 模塊中有無故障 1 可以發(fā)現(xiàn)很多軟件故障 2 修改成本較低 發(fā)現(xiàn)與接口有關(guān)的模塊之間的問題 增量式集成測試法 是否滿足軟件需求 結(jié)論性評價 證明系統(tǒng)性能 獨立的測試機(jī)構(gòu) 向用戶表明系統(tǒng)可以像用戶預(yù)的那樣工作 CH1軟件測試概述 軟件測試與軟件開發(fā)的關(guān)系軟件測試過程V模型 CH1軟件測試概述 軟件測試過程W模型 CH1軟件測試概述 軟件測試環(huán)境的搭建測試環(huán)境是指用來運行軟件的環(huán)境 測試環(huán)境 硬件 軟件 網(wǎng)絡(luò) 數(shù)據(jù)準(zhǔn)備 測試工具搭建軟件測試環(huán)境還應(yīng)注意以下幾點 盡量模擬用戶的真實使用環(huán)境 測試環(huán)境中盡量不要安裝其它與被測軟件無關(guān)的軟件 但最好安裝殺毒軟件 以確保系統(tǒng)沒有病毒 測試環(huán)境應(yīng)與開發(fā)環(huán)境獨立 CH2黑盒測試 黑盒測試是從一種從軟件外部對軟件實施的測試 也稱功能測試或基于規(guī)格說明的測試 基本觀點 任何程序都可以看作是從輸入定義域到輸出值域的映射 這種觀點將被測程序看作一個打不開的黑盒 黑盒里面的內(nèi)容 實現(xiàn) 是完全不知道的 只知道軟件要做什么 只關(guān)心軟件的輸入數(shù)據(jù)和輸出結(jié)果 CH2黑盒測試 黑盒測試兩個顯著的優(yōu)點 黑盒測試與軟件具體實現(xiàn)無關(guān) 所以如果軟件實現(xiàn)發(fā)生了變化 測試用例仍然可以使用 設(shè)計黑盒測試用例可以和軟件實現(xiàn)同時進(jìn)行 因此可以壓縮項目總的開發(fā)時間 CH2黑盒測試 1 等價類劃分方法輸入域的某個互不相交的子集合 所有等價類的并便是整個輸入域 劃分等價類 測試用例設(shè)計 無冗余性 完備性 CH2黑盒測試 第一步 第二步 第三步 1 形成等價類表2 每一等價類規(guī)定一個唯一的編號 1 設(shè)計一測試用例 使其盡可能多地覆蓋尚未覆蓋的有效等價類 2 重復(fù)這一步驟 直到所有有效等價類均被測試用例所覆蓋 1 設(shè)計一新測試用例 使其只覆蓋一個無效等價類2 重復(fù)這一步驟直到所有無效等價類均被覆蓋 CH2黑盒測試 CH2黑盒測試 CH2黑盒測試 CH2黑盒測試 2 邊界值分析法在等價類劃分基礎(chǔ)上進(jìn)行邊界值分析測試的基本思想是 選取正好等于 剛剛大于或剛剛小于等價類邊界的值作為測試數(shù)據(jù) 而不是選取等價類中的典型值或任意值做為測試數(shù)據(jù) CH2黑盒測試 3 判定表法判定表是把作為條件的所有輸入的各種組合值以及對應(yīng)輸出值都羅列出來而形成的表格 它能夠?qū)?fù)雜的問題按照各種可能的情況全部列舉出來 簡明并避免遺漏 因此 利用判定表能夠設(shè)計出完整的測試用例集合 CH2黑盒測試 任何一個條件組合的特定取值及其相應(yīng)要執(zhí)行的操作稱為一條規(guī)則 CH2黑盒測試 構(gòu)造判定表可采用以下5個步驟 1 列出所有的條件樁和動作樁 2 確定規(guī)則的個數(shù) 3 填入條件項 4 填入動作項 得到初始判定表 5 簡化判定表 合并相似規(guī)則 CH3白盒測試 白盒測試也稱結(jié)構(gòu)測試或邏輯驅(qū)動測試 是一種測試用例設(shè)計方法 它從程序的控制結(jié)構(gòu)導(dǎo)出測試用例 CH3白盒測試 1 邏輯驅(qū)動測試為了衡量測試的覆蓋程度 需要建立一些標(biāo)準(zhǔn) 目前常用的一些覆蓋標(biāo)準(zhǔn)從低到高分別是 語句覆蓋 每個語句至少都能被執(zhí)行一次 判定覆蓋 分支覆蓋 每一個分支至少都通過一次 條件覆蓋 每個判斷的每個條件的每個可能取值至少執(zhí)行一次 判定 條件覆蓋 每個條件取到各種可能的值 并使每個判定取到各種可能的結(jié)果 條件組合覆蓋 每個判定中條件的各種可能組合都至少出現(xiàn)一次 CH3白盒測試 CH3白盒測試 CH3白盒測試 2 基本路徑測試在程序控制流圖的基礎(chǔ)上 通過分析控制構(gòu)造的環(huán)路復(fù)雜性 導(dǎo)出基本可執(zhí)行路徑集合 從而設(shè)計測試用例 包括以下4個步驟和一個工具方法 程序的控制流圖 描述程序控制流的一種圖示方法 程序圈復(fù)雜度 從程序的環(huán)路復(fù)雜性可導(dǎo)出程序基本路徑集合中的獨立路徑條數(shù) 這是確定程序中每個可執(zhí)行語句至少執(zhí)行一次所必須的測試用例數(shù)目的上界 導(dǎo)出測試用例 根據(jù)圈復(fù)雜度和程序結(jié)構(gòu)設(shè)計用例數(shù)據(jù)輸入和預(yù)期結(jié)果 準(zhǔn)備測試用例 確?;韭窂郊械拿恳粭l路徑的執(zhí)行 工具方法 圖形矩陣 CH3白盒測試 流圖只有二種圖形符號圖中的每一個圓稱為流圖的結(jié)點 代表一條或多條語句 流圖中的箭頭稱為邊或連接 代表控制流 在將程序流程圖簡化成控制流圖時 應(yīng)注意 在選擇或多分支結(jié)構(gòu)中 分支的匯聚處應(yīng)有一個匯聚結(jié)點 邊和結(jié)點圈定的區(qū)域叫做區(qū)域 當(dāng)對區(qū)域計數(shù)時 圖形外的區(qū)域也應(yīng)記為一個區(qū)域 如果判斷中的條件表達(dá)式是由一個或多個邏輯運算符 OR AND 連接的復(fù)合條件表達(dá)式 則需要改為一系列只有單條件的嵌套的判斷 獨立路徑 至少沿一條新的邊移動的路徑 voidSort intiRecordNum intiType 1 2intx 0 3inty 0 4while iRecordNum 0 5 6if iType 0 7x y 2 8else9if iType 1 10 x y 10 11else12x y 20 13 14 CH3白盒測試 程序流程圖和對應(yīng)的控制流圖如下 CH4集成測試 集成測試 假定各個軟件單元已經(jīng)通過了單元測試的前提下 檢查各個軟件單元之間的相互接口是否正確 CH4集成測試 集成策略非漸增式集成漸增式集成自頂向下 自底向上 三明治 CH4集成測試 自頂向下優(yōu)點 在測試過程早期 對主要的控制點或判決點進(jìn)行檢驗 如果主要控制點有問題 早點認(rèn)識到這個問題就變得很重要 如果選用按深度方向組裝的方式 可以首先實現(xiàn)和驗證一個完整的軟件功能 功能可行性較早得到證實 能夠給開發(fā)者和用戶帶來成功的信心 缺點 在測試較高層模塊時 低層處理采用樁模塊替代 不能反映真實情況 重要數(shù)據(jù)不能及時回送到上層模塊 因此測試并不充分 CH4集成測試 自底向上優(yōu)點 由于驅(qū)動模塊模擬了所有調(diào)用參數(shù) 測試模塊返回結(jié)果不影響驅(qū)動模塊 生成測試數(shù)據(jù)也沒有困難 如果關(guān)鍵模塊是在結(jié)構(gòu)圖的底部 自底向上的測試是有優(yōu)越性的 另外自底向上的組裝測試不必開發(fā)樁模塊 缺點 當(dāng)最后一個模塊尚未測試時 還沒有呈現(xiàn)出被測軟件系統(tǒng)的雛形 CH5系統(tǒng)測試 性能測試 檢驗軟件是否達(dá)到需求規(guī)格說明書中規(guī)定的各類性能指標(biāo) 并滿足一些性能相關(guān)的約束和限制條件 評估系統(tǒng)的能力 識別系統(tǒng)中的弱點 系統(tǒng)調(diào)優(yōu) 壓力測試 是指模擬巨大的工作負(fù)荷 以查看系統(tǒng)在峰值使用情況下是否可以正常運行通過增加系統(tǒng)負(fù)載來測試系統(tǒng)性能的變化 并最終確定在什么負(fù)載條件下系統(tǒng)性能處于失效狀態(tài)反常的方式 找出性能瓶頸 本質(zhì) 破壞程序 壓力測試與性能測試的聯(lián)系與區(qū)別 壓力測試是用來保證產(chǎn)品發(fā)布后系統(tǒng)能否滿足用戶需求 關(guān)注的重點是系統(tǒng)整體 性能測試可以發(fā)生在各個測試階段 即使是在單元層 一個單獨模塊的性能也可以進(jìn)行評估 壓力測試是通過確定一個系統(tǒng)的瓶頸 來獲得系統(tǒng)能提供的最大服務(wù)級別的測試 性能測試是檢測系統(tǒng)在一定負(fù)荷下的表現(xiàn) 是正常能力的表現(xiàn) 而壓力測試是極端情況下的系統(tǒng)能力的表現(xiàn) 容量測試 采用特定的手段測試系統(tǒng)能夠承載處理任務(wù)的極限值所從事的測試工作 容量測試往往應(yīng)用于數(shù)據(jù)庫方面的測試數(shù)據(jù)庫容量測試使測試對象處理大量的數(shù)據(jù) 以確定是否達(dá)到了將使軟件發(fā)生故障的極限 容量測試還將確定測試對象在給定時間內(nèi)能夠持續(xù)處理的最大負(fù)載或工作量 容量測試與壓力測試的區(qū)別與容量測試十分相近的概念是壓力測試 二者都是檢測系統(tǒng)在特定情況下 能夠承擔(dān)的極限值 然而兩者的側(cè)重點有所不同 壓力測試主要是使系統(tǒng)承受速度方面的超額負(fù)載 例如一個短時間之內(nèi)的吞吐量 容量測試關(guān)注的是數(shù)據(jù)方面的承受能力 并且它的目的是顯示系統(tǒng)可以處理的數(shù)據(jù)容量 自動化測試的定義自動化測試就是使用軟件工具來代替手工進(jìn)行的一系列動作 它具有良好的可操作性 可重復(fù)性和高效率等特點 自動化測試的目的是減輕手工測試的工作量 以達(dá)到節(jié)約資源 包括人力 物力等 保證軟件質(zhì)量 縮短測試周期的效果 通常是使用腳本或者其他代碼驅(qū)動應(yīng)用程序 這一切可以通過可視用戶界面 如瀏覽器 完成 也可以通過直接命令 從客戶端發(fā)向服務(wù)器 以模仿瀏覽器發(fā)送的命令 完成自動化測試 自動化測試大都屬于回歸測試的范疇 CH6軟件測試自動化基礎(chǔ) 自動化測試優(yōu)點提高測試效率降低對軟件

溫馨提示

  • 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

提交評論