版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第6章系統(tǒng)測試及運行維護測試并不僅僅是為了要找出錯誤,而是通過錯誤分析錯誤產(chǎn)生的原因和錯誤的分布特征,可以幫助項目管理者發(fā)現(xiàn)當前系統(tǒng)開發(fā)過程中的缺陷,以便改進。6.1系統(tǒng)測試概述最終目的是盡可能減少軟件系統(tǒng)中的錯誤,提高軟件產(chǎn)品的質量6.1.1測試的目的與原則原則1、盡早開展測試2、避免同化效應3、在發(fā)現(xiàn)較多錯誤的地方投入更多的測試4、確定預期輸出5、程序員應避免測試自己的程序6、程序設計機構不應測試自己的程序7、對非法的和非預期的輸入情況,也要像對合法的、預期的輸入一樣,編寫測試數(shù)據(jù)8、檢查程序是否做了要做的事僅是成功的一半,另一半是看程序是否做了不要它做的事。這條原則意味著在程序測試時,必須對那些人們不需要的“副作用”進行檢查9、不要扔掉測試數(shù)據(jù)10、在進行測試設計時不要設想程序中不會查出錯誤1、黑盒測試和白盒測試(1)黑盒測試(Black_Boxtesting)6.1.2測試基本方法(2)白盒測試(White_Boxtesting)2、手工測試和自動化測試(1)手工測試手工測試有其不可替代的地方,因為人具有很強的判斷能力,而工具沒有,所以手工測試的不可替代性體現(xiàn)在以下幾個方面:①測試用例的設計:測試人員的經(jīng)驗和對錯誤的判斷能力是工具不可替代的;②界面和用戶體驗測試:人類的審美觀和心理體驗是工具不可模擬的;③正確性的檢查:人們對是非的判斷、邏輯推理能力是工具不具備的。手工測試有兩種基本的方式:程序審查會和人工運行。①程序審查會程序審查會(CodeInspections)是讓小組成員閱讀程序代碼而進行的一系列步驟和查找錯誤的辦法。審查會通常由四人組成調解人程序員系統(tǒng)分析或設計人員測試專家程序審查會的工作過程是:調解人在會議開發(fā)之前(前幾天),把這個程序清單和設計規(guī)范分發(fā)給小組的其他成員。要求他們在會議之前就熟悉這些材料,在會議期間完成兩件事:首先,請程序員逐個語句地講述程序的邏輯結構其次,根據(jù)常見程序錯誤檢驗單分析程序②人工運行人工運行小組由三至五人組成。其中一人起類似于程序審查會中調解人的作用;另外由一人當秘書,他負責記錄發(fā)現(xiàn)的錯誤;第三個人進行測試,稱他為測試員。其他人員可以是一個具有豐富實踐經(jīng)驗的程序員、一個程序語言專家、一個新程序員(以便提供新鮮的無偏見的意見)、最終將維護這個程序的人、從事別的項目的人或者是程序小組中的另外一個程序員。人工運行的第一步與程序審查會一樣。在讓小組成員分析這個程序之前,提前幾天提供給他們一些資料以便讓他們更仔細研究程序,然而會議中所采取的步驟卻與程序審查會有所不同,它不是簡單地閱讀程序或者使用錯誤檢查表,而是要求與會者當“計算機”。被指定為測試員的人要攜帶一組寫在紙上的測試數(shù)據(jù)參加會議,這些測試數(shù)據(jù)都是這個程序或模塊的輸入情況及期望的輸出中的典型代表。在會議期間,與會者動腦筋運行每一個測試數(shù)據(jù)。沿著程序邏輯把這些測試數(shù)據(jù)“運行”一遍,在紙上或黑板上監(jiān)視追蹤程序的狀態(tài)。(2)自動化測試自動化測試是把人為驅動的測試行為轉化為機器執(zhí)行的一種過程自動化測試技術主要有:錄制/回放、腳本技術、數(shù)據(jù)驅動、關鍵字驅動、業(yè)務驅動等常用的自動化測試工具有:負載壓力測試工具、功能測試工具、白盒/黑盒測試工具、測試管理工具、測試輔助工具、GUI接口自動化測試工具階段輸入和要求輸出需求分析測試市場/產(chǎn)品需求定義、分析文檔和相關技術文檔。要求:需求定義準確、完整和一致,真正理解客戶需求。需求定義中的問題列表、批準的需求分析文檔、測試計劃書的起草。設計測試產(chǎn)品規(guī)格設計說明、系統(tǒng)架構和技術設計文檔、測試計劃和測試用例。要求:系統(tǒng)結構的合理性、處理過程的正確性、數(shù)據(jù)庫的規(guī)范化、模塊的獨立性、測試用例的有效性和完備性等,并能清楚定義測試策略、范圍、資源和風險。設計問題列表、批準的各類設計文檔、系統(tǒng)和功能的測試計劃和測試用例、測試環(huán)境的準備。單元測試源程序、編程規(guī)范、產(chǎn)品規(guī)格設計說明書和詳細的程序設計文檔。要求:遵守規(guī)范、模塊的內聚性、功能實現(xiàn)的一致性和正確性。缺陷報告、跟蹤報告、完善的測試用例、測試計劃,對系統(tǒng)功能及其實現(xiàn)等了解清楚;獲得可組裝的單元。集成測試通過單元測試的模塊和組件、編程規(guī)范、集成測試規(guī)格和程序設計文檔、系統(tǒng)設計文檔。要求:接口定義清楚且正確、模塊或組件一起工作正常、能集成為完整系統(tǒng)。缺陷報告、跟蹤報告、完善的測試用例、測試計劃;集成測試分析報告;集成后的系統(tǒng)。功能驗證代碼軟件包(含文檔)、功能詳細設計說明書、測試計劃和用例。要求:模塊集成功能的正確性和適用性。缺陷報告、代碼完成狀態(tài)報告、功能驗收測試報告。系統(tǒng)測試修改后的軟件包、測試環(huán)境、系統(tǒng)測試用例和測試計劃。要求:系統(tǒng)能正常、有效地運行,包括性能、可靠性、安全性、兼容性等。缺陷報告、系統(tǒng)性能分析報告。缺陷狀態(tài)報告。驗收測試產(chǎn)品規(guī)格設計說明、預發(fā)布的軟件包、確認測試用例。要求:向用戶表明系統(tǒng)能夠按照預定要求工作,需要用戶參與驗收測試。用戶驗收報告、缺陷報告審查、版本審查、最終測試報告。維護變更的需求、修改的軟件包、測試用例和計劃。要求:新的或增強的功能正常,原有的功能正常,不能出現(xiàn)回歸缺陷。缺陷報告。更改跟蹤報告、測試報告。6.1.3系統(tǒng)測試的步驟及工作產(chǎn)品6.2.1測試用例的設計步驟1、測試需求的分析2、業(yè)務流程分析3、測試用例設計6.2測試用例設計編號測試日期標題項目名稱版本(號)功能模塊測試階段測試員操作環(huán)境缺陷類型等級及優(yōu)先級詳細描述步驟(操作、數(shù)據(jù)輸入等):結果:期望:備注:涉及人員解決日期解決方案4、測試用例評審5、測試用例更新完善白盒測試主要用于檢查程序的內部結構、邏輯、循環(huán)和路徑。常用的白盒測試用例設計方法有代碼檢查法、靜態(tài)結構分析法、靜態(tài)質量度量法、邏輯覆蓋法、基本路徑測試法、符號測試法等。其中最主要的方法就是邏輯覆蓋法6.2.2白盒測試1、語句覆蓋2、判定覆蓋3、條件覆蓋4、條件判定覆蓋5、多條件覆蓋黑盒測試把程序看作一個不能打開的黑盒子,在完全不考慮程序內部結構和內部特性的情況下、注重于測試軟件的功能性要求,測試者在程序接口處進行測試,只檢查程序功能是否按照規(guī)格說明書的規(guī)定正常使用,程序是否能接收輸入數(shù)據(jù)而產(chǎn)生正確的輸出信息,并且保持數(shù)據(jù)庫和文件的完整性6.2.3黑盒測試黑盒測試通常能發(fā)現(xiàn)以下幾類錯誤:功能不對或遺漏界面錯誤數(shù)據(jù)結構或外部數(shù)據(jù)庫訪問錯誤性能錯誤初始化和終止錯誤采用黑盒技術設計測試用例的方法1、等價類劃分2、邊值分析法3、因果圖4、猜錯5、隨機測試1、需求規(guī)格說明書的檢查要點需求測試重點關注以下幾個方面:正確性:對照原始需求規(guī)格說明書;必要性:不能回溯到出處的需求項可能是多余的;優(yōu)先級:恰當?shù)貏澐植俗R;明確性:不能使用含糊的詞匯可測性:每項需求都必須是可驗證的;完整性:不能遺漏必要和必須的信息;一致性:與原始需求一致、內容前后一致;可修改性:良好的組織結構使需求易于修改。6.2.4需求分析測試2、需求規(guī)格說明書的檢查步驟①獲取最新版本的軟件需求規(guī)格說明書,同時盡量取得用戶原始需求文檔;②閱讀和嘗試理解需求規(guī)格說明書中描述的所有需求項;③對照需求規(guī)格說明書檢查列表進行檢查并記錄;④針對檢查結果進行討論、修訂需求規(guī)格說明書后回到第一步,直到檢查列表中所有項通過。3、編寫測試用例來檢查需求1、用戶界面測試的時機用戶界面測試應該盡早進行,如果有界面原型,應該在界面原型產(chǎn)生時開始檢查界面。界面測試延遲后到后期進行會存在很大的風險和壓力,這種風險和壓力源于兩個方面:開發(fā)人員修改的風險和測試人員漏測的風險。①后期修改界面的風險②界面測試遺漏6.2.5用戶界面測試2、用戶界面測試的要點①“射箭”原理②減少用戶工作量③少就是多3、界面測試用例設計實例目前界面風格主要有三種方式:多窗體、單窗體以及資源管理器方式,無論那種方式,界面都要進行測試,簡化的界面測試用例設計實例如下。測試目的:檢驗界面的可用性、可靠性、用戶界面友好性測試對象:界面測試內容:易用性、規(guī)范性、幫助設施、合理性、美觀與協(xié)調性、菜單位置、獨特性、快捷方式的組合、安全性、多窗口的應用和系統(tǒng)資源、文本框、命令按鈕控件、單選按鈕控件、up-down空間文本框、組合列表框、復選框、列表框控件、滾動條控件、各種控件在窗體中混合使用、插入操作、編輯操作等。1、面向對象測試模型6.2.6面向對象測試2、面向對象分析測試面向對象分析階段的測試劃分為以下五個方面:對認定的對象的測試;對認定的結構的測試;對認定的主題的測試;對定義的屬性和實例關聯(lián)的測試;對定義的服務和消息關聯(lián)的測試。3、面向對象設計測試對認定類的測試對構造類層次結構的測試對類庫支持的測試4、面向對象編程測試應將測試的目光集中在類功能的實現(xiàn)和相應的面向對象程序風格上,主要體現(xiàn)為數(shù)據(jù)成員是否滿足數(shù)據(jù)封裝的要求、類是否實現(xiàn)了要求的功能兩個方面①數(shù)據(jù)成員是否滿足數(shù)據(jù)封裝的要求②類是否實現(xiàn)了要求的功能5、面向對象單元測試(1)面向對象單元測試的特殊性①與外界的接口(i)繼承的成員函數(shù)是否需要測試(ii)對父類的測試是否能照搬到子類②局部數(shù)據(jù)③重要的執(zhí)行通路④出錯處理通路⑤影響上述各方面特性的邊界條件(2)測試用例設計在進行面向對象單元測試時,傳統(tǒng)的結構化的邏輯覆蓋是不夠的,還需要考慮上下文覆蓋(contextcoverage),上下文覆蓋是一種收集被測試軟件如何執(zhí)行數(shù)據(jù)的方法。6、面向對象集成測試面向對象的集成測試的目的是:檢測出相對獨立的單元測試中無法檢測出的那些類相互作用時才會產(chǎn)生的錯誤。面向對象的集成測試可以分成兩步進行:先進行靜態(tài)測試,再進行動態(tài)測試。面向對象集成測試的測試用例設計方法有大爆炸集成、自低向上集成、自頂向下集成、協(xié)作集成、層次集成、客戶/服務器集成、分布服務集成。7、面向對象系統(tǒng)測試系統(tǒng)測試應該盡量搭建與用戶實際使用環(huán)境相同的測試平臺,應該保證被測系統(tǒng)的完整性,對臨時沒有的系統(tǒng)設備部件,也應有相應的模擬手段。系統(tǒng)測試時,應該參考面向對象分析的結果,對應描述的對象、屬性和各種服務,檢測軟件是否能夠完全“再現(xiàn)”問題空間。系統(tǒng)測試不僅是檢測軟件的整體行為表現(xiàn),從另一個側面看,也是對軟件開發(fā)設計的再確認面向對象系統(tǒng)測試具體測試內容包括功能測試、強度測試、性能測試、安全性測試、恢復測試、可用性測試等6.3.1系統(tǒng)測試系統(tǒng)測試是指將通過集成測試的軟件系統(tǒng)或子系統(tǒng),作為基于計算機系統(tǒng)的一個元素,與計算機硬件、外設、某些支持軟件、數(shù)據(jù)和人員等其它系統(tǒng)元素組合在一起所進行的測試工作,目的在于通過與系統(tǒng)的需求定義(系統(tǒng)方案說明書、需求說明書等)作比較,發(fā)現(xiàn)軟件與系統(tǒng)需求定義不符合或矛盾的地方。6.3其它測試1、功能測試(FunctionalTesting)2、性能測試(PerformanceTesting)3、負載測試(LoadTesting)4、強度測試(StressTesting)5、容量測試(VolumeTesting)6、安全性測試(SecurityTesting)7、用戶界面測試(UITesting)8、有效性測試(ValidityTesting)9、配置測試(ConfigurationTesting)10、故障恢復測試(RecoveryTesting)
11、安裝測試(InstallabilityTesting)12、可靠性測試(ReliablityTesting)1、驗收測試標準驗收測試同樣需要制訂測試計劃和過程,測試計劃應規(guī)定測試的種類和測試進度,測試過程則定義一些特殊的測試用例,旨在說明軟件與需求是否一致。無論是計劃還是過程,都應該著重考慮軟件是否滿足合同規(guī)定的所有功能和性能,文檔資料是否完整、準確人機界面和其它方面(例如:可移植性、兼容性、錯誤恢復能力和可維護性等)是否令用戶滿意。6.3.2驗收測試2、配置復審驗收測試的另一個重要環(huán)節(jié)是配置復審。復審的目的在于保證軟件配置齊全、分類有序,并且包括軟件維護所必須的細節(jié)。3、α、β測試α測試是指軟件開發(fā)公司組織內部人員模擬各類用戶行為對即將面市軟件產(chǎn)品(稱為α版本)進行測試,試圖發(fā)現(xiàn)錯誤并修正。經(jīng)過α測試調整的軟件產(chǎn)品稱為β版本。緊隨其后的β測試是指軟件開發(fā)人員組織各方面的典型用戶在日常工作中實際使用β版本,并要求用戶報告異常情況、提出批評意見。然后開發(fā)人員再對β版本進行改錯和完善?;貧w測試(RegressionTesting)是對軟件修改之后進行的測試,其目的是檢驗對軟件進行的修改是否正確。這里,修改的正確性具有兩重含義:一是指所作的修改達到了預期的目的,如錯誤得到改正、能夠適應新的運行環(huán)境;二是指不影響軟件的其它功能的正確性。6.3.3回歸測試6.4.1系統(tǒng)切換1、系統(tǒng)切換前的準備①數(shù)據(jù)準備②文檔的準備③用戶培訓6.4系統(tǒng)運行維護2、系統(tǒng)切換①直接方式②平行方式③逐步
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 專題04-水圈(核心精講)高一地理新教材知識講學(解析版)
- 4-4-走可持續(xù)發(fā)展之路(同步練習)-2021-2022學年高一地理(原卷版)
- 2025版金融科技項目股權合作轉讓及風險控制協(xié)議3篇
- 家庭教育中的禮儀教育塑造孩子文明形象
- 新高考古詩文背誦篇目(情境訓練)3必修上+下冊詩詞篇(學生版)
- 二零二五年度海上貨物運輸及船舶資產(chǎn)評估合同2篇
- 2024年簡化版財產(chǎn)放棄離婚合同書版B版
- 家庭教育中的心理輔導與情感教育結合
- 酒店管理的經(jīng)驗分享
- 小學生體育運動與心理健康的關聯(lián)研究
- DB43∕T 1591-2019 鋰電池正極材料單位產(chǎn)品能源消耗限額及計算方法
- 征信合規(guī)知識線上測試題庫征信知識競賽題庫(題目+答案)
- 貴州省貴陽市2021-2022學年蘇教版四年級上冊期末數(shù)學試卷(含答案)
- 新教材高中歷史選擇性必修一全冊知識點總結
- 2017英語專業(yè)八級改錯真題及答案持續(xù)更新部分詳解文字答案校對版
- 室內蒸汽供熱系統(tǒng)
- 小型塑料注射成型機液壓系統(tǒng)設計
- 《干部廉政檔案》2022年最新模板
- 高支模方案(專家論證定稿)
- 城投集團年度安全管理工作計劃
- 美術課教案《線造型》
評論
0/150
提交評論