測試周期

測試周期

測試周期是指從測試項目計劃建立到BUG提交的整個測試過程,包括軟體項目測試計劃,測試需求分析,測試用例設計,測試用例執行,BUG提交五個階段。

軟體測試周期并行與軟體生命周期,存在於軟體生命周期的各個階段。

概念


測試的設計開發過程與正在構建的應用程序一樣複雜和艱巨。如果未能儘早開始,測試或者不夠完善,或者會導致需要在開發時間表上附加一個長時間的測試和錯誤修正時間表,這將有違迭代開發的初衷。此外,測試計劃和設計活動可以揭示應用程序定義中的故障和缺陷。這些問題越早得以解決,對整個時間表造成的影響就越小。評價過程中發現的問題可以在本次迭代解決,也可以留待下次迭代解決。通過核實已經實施的需求來評測迭代的完全程度,是評價的主要任務之一。迭代之間始終存在著某種“需求蠕變”,您需要意識到其存在並能夠對其加以管理。
執行測試的方式取決於多種因素:您的應用領域、預算、公司策略和風險承受能力以及職員。對於測試的投資多少取決於在具體環境中評價質量和承受風險的方式。

各種測試概念對照表


測試概念名稱目標範圍所有人是否該持續集成工具備註
單元測試驗證源代碼單元能夠正確工作class開發人員JUnit應該產生100%的代碼覆蓋率報告
功能測試面向代碼,通過組件內示例數據測試特徵class開發人員JUnit應該模擬依賴介面
集成測試依賴一定的環境進行一些路徑覆蓋測試components開發人員可選
JWebUnit
TestNG
如果測試很快並且環境依賴可以很容易的自動安裝,可以包含在持續集成中
冒煙測試確保關鍵功能運行application開發人員
JWebUnit
TestNG
代碼提交給測試人員前運行,對於web-app模塊等同於集成測試
回歸測試尋找回歸的bugs,即只在新版本上出現的bugs。application測試人員Selenium重新運行之前版本運行過的測試
完備性測試集中在修復的bugs和新特性上application測試人員Selenium為新特性增加新的測試用例
系統測試針對功能需求規範(FRS)、系統需求規範(SRS)測試整個系統
application
platform
測試人員Selenium可能包括更多測試,像可用性測試
平台測試在不同的硬體和軟體平台上運行
application
platform
測試人員Selenium
性能測試通過採集應用數據消除瓶頸
application
platform
開發人員
JMon,ab,
httperf,JMeter
負載測試暴露非表面bugs,確保達到性能指標
application
platform
團隊
ab,siege
httpref
負載測試有時叫做大數據量測試,或者耐力測試
壓力測試通過耗盡資源或者刪除資源來儘力破壞系統
application
platform
測試人員ab,httpref也叫拒絕測試或者恢複測試
用戶驗證測試需要的業務功能和正確的系統功能的一個最終驗證,在類實際環境中進行
application
platform
客戶客戶決定也叫拒絕測試或者恢複測試