8.軟件測試與質(zhì)量管理.ppt_第1頁
8.軟件測試與質(zhì)量管理.ppt_第2頁
8.軟件測試與質(zhì)量管理.ppt_第3頁
8.軟件測試與質(zhì)量管理.ppt_第4頁
8.軟件測試與質(zhì)量管理.ppt_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第六章軟件測試與質(zhì)量管理 軟件工程 SoftwareEngineering 湯景凡計算機學院軟件工程研究所E mail tangjf QQ 7338172PH1 1軟件測試的概念 是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程 即根據(jù)軟件開發(fā)各階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計一批測試用例 并利用這些測試用例去運行程序 以發(fā)現(xiàn)程序錯誤的過程 軟件測試的目的 根據(jù)G J Myers觀點 軟件測試的目的 軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程一個好的測試能夠在第一時間發(fā)現(xiàn)程序中存在的錯誤一個好的測試是發(fā)現(xiàn)了至今尚未發(fā)現(xiàn)的錯誤的測試 軟件測試是質(zhì)量控制的重要手段 保證客戶拿到或用戶使用高質(zhì)量的軟件產(chǎn)品 1 2軟件測試的誤區(qū)和原則 軟件測試的誤區(qū) 誤區(qū)一 如果發(fā)布出去的軟件有質(zhì)量問題 都是軟件測試人員的錯誤區(qū)二 軟件測試技術(shù)要求不高 至少比編程容易多了誤區(qū)三 有時間就多測試一些 來不及就少測試一些誤區(qū)四 軟件測試是測試人員的事 與開發(fā)人員無關(guān)誤區(qū)五 根據(jù)軟件開發(fā)瀑布模型 軟件測試是開發(fā)后期的一個階段 軟件測試的原則 軟件測試的原則 所有測試的標準都是建立在用戶需求之上 軟件測試必須基于 質(zhì)量第一 的思想去開展各項工作 當時間和質(zhì)量沖突時 時間要服從質(zhì)量 事先定義好產(chǎn)品的質(zhì)量標準 只有有了質(zhì)量標準 才能根據(jù)測試的結(jié)果 對產(chǎn)品的質(zhì)量進行分析和評估 軟件項目一啟動 軟件測試也就是開始 而不是等程序?qū)懲?才開始進行測試 窮舉測試是不可能的 甚至一個大小適度的程序 其路徑排列的數(shù)量也非常大 因此 在測試中不可能運行路徑的每一種組合 第三方進行測試會更客觀 更有效 軟件測試計劃是做好軟件測試工作的前提 測試用例是設(shè)計出來的 不是寫出來的 所以要根據(jù)測試的目的 采用相應(yīng)的方法去設(shè)計測試用例 從而提高測試的效率 更多地發(fā)現(xiàn)錯誤 提高程序的可靠性 軟件測試的原則 續(xù) 軟件測試的原則 對發(fā)現(xiàn)錯誤較多的程序段 應(yīng)進行更深入的測試 一般來說 一段程序中已發(fā)現(xiàn)的錯誤數(shù)越多 其中存在的錯誤概率也就越大 重視文檔 妥善保存一切測試過程文檔 測試計劃 測試用例 測試報告等 應(yīng)當把 盡早和不斷地測試 作為測試人員的座右銘回歸測試的關(guān)聯(lián)性一定要引起充分的注意 修改一個錯誤而引起更多錯誤出現(xiàn)的現(xiàn)象并不少見測試應(yīng)從 小規(guī)模 開始 逐步轉(zhuǎn)向 大規(guī)模 不可將測試用例置之度外 排除隨意性 必須徹底檢查每一個測試結(jié)果 一定要注意測試中的錯誤集中發(fā)生現(xiàn)象 這和程序員的編程水平和習慣有很大的關(guān)系對測試錯誤結(jié)果一定要有一個確認的過程 1 3軟件測試的方法 軟件測試的方法 黑盒子和白盒子靜態(tài)的和動態(tài)的文檔 代碼審查數(shù)據(jù)輸入邊界條件法等價劃分 數(shù)據(jù)流程圖狀態(tài)變換圖邏輯路徑法 黑盒子和白盒子 功能測試數(shù)據(jù)驅(qū)動測試 結(jié)構(gòu)測試邏輯驅(qū)動測試 靜態(tài)的和動態(tài)的 運行程序 自動測試和手工測試 手工模擬用戶操作 驗證和確認 V V Verification Arewebuildingtheproductright 是否正確地構(gòu)造了軟件 即是否正確地做事 驗證開發(fā)過程是否遵守已定義好的內(nèi)容 驗證產(chǎn)品滿足規(guī)格設(shè)計說明書的一致性 Validation Arewebuildingtherightproduct 是否構(gòu)造了正是用戶所需要的軟件 即是否正在做正確的事 驗證產(chǎn)品所實現(xiàn)的功能是否滿足用戶的需求 1 4軟件測試的分類和階段 軟件測試分類 軟件測試階段 1 單元測試 單元測試的對象是程序系統(tǒng)中的最小單元 模塊或組件上 在編碼階段進行 針對每個模塊進行測試 主要通過白盒測試方法 從程序的內(nèi)部結(jié)構(gòu)出發(fā)設(shè)計測試用例 檢查程序模塊或組件的已實現(xiàn)的功能與定義的功能是否一致 以及編碼中是否存在錯誤 多個模塊可以平行地 對立地測試 通常要編寫驅(qū)動模塊和樁模塊 單元測試一般由編程人員和測試人員共同完成 單元測試的重點 模塊的接口局部數(shù)據(jù)結(jié)構(gòu)重要的執(zhí)行路徑出錯處理路徑影響以上多項的邊界條件 2 集成測試 集成測試 也稱組裝測試 聯(lián)合測試 子系統(tǒng)測試 在單元測試的基礎(chǔ)上 將模塊按照設(shè)計要求組裝起來同時進行測試 主要目標是發(fā)現(xiàn)與接口有關(guān)的模塊之間問題 兩種集成方式 一次性集成方式和增殖式集成方式 集成測試的重點 不正確的接口 因存取全局 公用 數(shù)據(jù)引起的塊間干擾 不一致的文件與數(shù)據(jù)結(jié)構(gòu) 不適合的模塊調(diào)用順序 出錯處理上的錯誤 集成測試的測試技術(shù)和集成策略 集成測試常采用黑盒測試技術(shù) 其實施策略分為非漸增式和漸增式兩種 非漸增式測試 一次就把通過了單元測試的所有模塊組裝起來 進行全程序的測試 出了問題很難進行錯誤定位 自頂向下測試 漸增式 測試時從頂層模塊開始 沿被測程序的結(jié)構(gòu)圖逐步下移 每次只增加一個新的模塊 特點 1 能較早的顯示出程序的輪廓2 由頂向下的組裝順序 保證任何模塊加進程前 其上級模塊已先它裝入 所以模塊的驅(qū)動可以利用真實模塊 只須編寫樁模塊供測試之用 3 上層模塊得到更多的測試機會 使被測程序獲得更為徹底的檢驗 自底向上測試 漸增式 模塊組裝順序采取由下向上的路線 測試步驟 1 從程序的較低層中找一個葉模塊 由下向上地逐步增加新模塊 組成程序的一個子程序或具有某一功能的模塊 群 2 從另一子系統(tǒng)或群中選擇另一個模塊 仿照1 組成又一個子系統(tǒng) 3 重復第2 步 得出所有子系統(tǒng) 然后組裝成程序 特點 1 不能在測試的早期顯示出程序的輪廓 2 測試軟件只需要驅(qū)動模塊 不需要樁模塊 混合測試 是自頂向下與自底向下測試方法的結(jié)合 3 功能測試 功能測試一般須在完成集成測試后進行 而且是針對應(yīng)用系統(tǒng)進行測試 功能測試是基于產(chǎn)品功能說明書 是在已知產(chǎn)品所應(yīng)具有的功能 從用戶角度來進行功能驗證 以確認每個功能是否都能正常使用 4 系統(tǒng)測試 系統(tǒng)測試是將軟件放在整個計算機環(huán)境下 包括軟硬件平臺 某些支持軟件 數(shù)據(jù)和人員等 在實際運行環(huán)境下進行一系列的測試 包括恢復測試 安全測試 強度測試和性能測試等 5 驗收測試 安裝測試 驗收測試的目的是向未來的用戶表明系統(tǒng)能夠像預定要求那樣工作 驗證軟件的功能和性能如同用戶所合理期待的那樣 安裝測試是指按照軟件產(chǎn)品安裝手冊或相應(yīng)的文檔 在一個和用戶使用該產(chǎn)品完全一樣的環(huán)境中或相當于用戶使用環(huán)境中 進行一步一步的安裝操作性的測試 2測試用例設(shè)計 測試用例設(shè)計與實現(xiàn) 2 1黑盒測試方法 黑盒測試方法 等價分類法 邊界值分析法 錯誤推測法 因果圖法 2 2白盒測試方法 白盒測試方法 邏輯覆蓋法 語句覆蓋 使被測試程序的每條語句至少執(zhí)行一次 判定覆蓋 使被測試程序的每一分支都至少執(zhí)行一次 條件覆蓋 要求判定中的每個條件都按 真 假 兩種結(jié)果至少執(zhí)行一次 判定 條件覆蓋 要求判定中的每個條件都取到各種可能的值 而且每個判定表達式也都要取到各種可能的結(jié)果 條件組合覆蓋 要求判定中每個條件的各種可能組合都至少出現(xiàn)一次 路徑測試法 結(jié)點覆蓋 程序的測試路徑至少經(jīng)過程序圖中的每個結(jié)點一次 邊覆蓋 程序的測試路徑至少經(jīng)過程序圖中每條邊一次 路徑覆蓋 要求程序圖中每條路徑都至少經(jīng)過一次 2 3黑盒和白盒測試方法的區(qū)別 黑盒測試著重測試軟件功能 黑盒測試并不能取代白盒測試 它是與白盒測試互補的測試方法 它很可能發(fā)現(xiàn)白盒測試不易發(fā)現(xiàn)的其他類型的錯誤 黑盒測試力圖發(fā)現(xiàn)下述類型的錯誤 功能不正確或遺漏了功能 界面錯誤 數(shù)據(jù)結(jié)構(gòu)錯誤或外部數(shù)據(jù)庫訪問錯誤 性能錯誤 初始化和終止錯誤 白盒測試在測試過程的早期階段進行 而黑盒測試主要用于測試過程的后期 設(shè)計黑盒測試方案時 應(yīng)該考慮下述問題 怎樣測試功能的有效性 哪些類型的輸入可構(gòu)成好測試用例 系統(tǒng)是否對特定的輸入值特別敏感 怎樣劃定數(shù)據(jù)類的邊界 系統(tǒng)能夠承受什么樣的數(shù)據(jù)率和數(shù)據(jù)量 數(shù)據(jù)的特定組合將對系統(tǒng)運行產(chǎn)生什么影響 應(yīng)用黑盒測試技術(shù) 能夠設(shè)計出滿足下述標準的測試用例集 所設(shè)計出的測試用例能夠減少為達到合理測試所需要設(shè)計的測試用例的總數(shù) 所設(shè)計出的測試用例能夠告訴我們 是否存在某些類型的錯誤 而不是僅僅指出與特定測試相關(guān)的錯誤是否存在 2 4課堂練習 軟件測試方法 設(shè)有一程序 如圖所示 能夠?qū)?姓名 年齡 性別

溫馨提示

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

評論

0/150

提交評論