測試分析
php
下面這個測試分析圖展現的在一個全新的項目開始準備測試時,若是進行測試分析的基本方法。安全
在開始接手一個新項目時,按照基本的測試生命週期流程(編寫測試計劃-測試方案-準備測試環境-編寫測試用例-編寫測試腳本-執行測試-反饋缺陷-調整或完善測試用例-迴歸測試-收集測試結果-編寫測試報告)架構
在編寫測試計劃和測試方案前,應該還有個測試初始階段-主要工做就是了解和分析系統,這是一個學習成本。在傳統的開發方法和敏捷開發方法這個階段的啓動時間不一樣,在傳統的開發方法中可能要等待需求說明書出來以後進行測試需求的分析,來肯定測試範圍,根據範圍編寫測試計劃。 敏捷開發方法因爲測試人員在需求討論,那麼瞭解和分析系統的事情在敏捷的需求討論時就完成,而不在須要再等待需求說明書等需求文檔。性能
無論是傳統或是敏捷的開發方法,測試初始階段都是理解測試需求,根據理解的需求準備相關的測試工做。 那麼如何理解需求並根據需求來編寫測試計劃和測試方案?這就是本文重點要闡述的一些方法:單元測試
一、肯定範圍,任何產品的需求無非兩種類型:功能需求和非功能需求學習
測試需求範圍肯定按照測試不一樣階段進行分層劃分爲:單元測試範圍、集成測試範圍、系統測試範圍、驗收測試範圍;測試
單元測試範圍一般包括:單元功能正確性測試、單元功能容錯性測試、單元代碼結構性測試、單元測試代碼性能測試雲計算
集成測試範圍包括:模塊或服務功能正確性,模塊或服務接口一致性、模塊或服務容錯性、模塊或服務的性能等spa
系統測試範圍包括:系統可用性測試、系統穩定性測試、系統安全性測試、系統業務能力測試等等設計
固然還有用戶驗收測試: 用戶核心業務支持能力測試等等
二、肯定測試點,也就是肯定測試具體內容:
測試一般是有測試參照物,例如需求分析,概要設計,詳細設計等。
如何肯定測試點,也就是如何分析測試需求並找出測試規則, 根據不一樣的系統對測試人員的技能也有不一樣的要求:
例如:
測試一個業務系統,在集成測試和系統測試、驗收測試階段的測試點分析和提取,測試人員須要充分的瞭解這個系統要支撐的業務規範或規則,例如保險系統,證券系統,ERP系統等等。 這類系統測試要求測試人員更偏重於業務的知識。舉個證券的清算系統,測試它就要業務清算規則和流程。
測試一個技術性系統,例如雲計算的測試,BI系統的測試,中間件的測試,網關係統的測試, 這類系統的技術性比較強,他的測試點或測試規則對應的是技術規範或技術規則。好比多媒體消息網關係統的測試,須要多種消息的傳遞和路由規則。不一樣協議消息的構造和解析規則。 些測試對測試人員的技術要求更強。
三、測試執行準備和場景設計時 ,也就是設計測試用例和測試場景時要充分考慮系統的技術特色。
根據系統的設計和技術特色,來決定如何測試一個測試點或一個測試規則、一個場景。
根據測試點和系統架構和技術輸入,要有以下輸入:
1)測試上下文環境準備
2)測試數據構造(測試數據按照類型分爲,直接輸入數據、規則數據、背景數據)
3)測試調用方法
4) 測試結果驗證方法和測試結果截取方法
四、肯定工做量
測試分析基本是由大到小,由外到裏的分析方法
肯定大範圍,規則細分,技術確認 最後就要估算測試工做量
一般估算單個測試點的工做量再彙總的方式比較準確。
小結:測試分析能力是保證被測試系統被正確測試的保證, 測試分析就要肯定測試範圍和測試方法。 範圍和方法決定了測試的正確性與否。 針對不一樣系統的測試分析時,對測試人員的技能有專向要求和知識儲備。不要但願業務系統測試人員,可以作好雲系統的測試。