測試策略 VS 測試計划、測試方案


日常測試工作中,或多或少有聽說過測試策略的術語,一開始所理解的概念比較模糊,很容易和測試計划、測試方案混淆,但這個東東實實在在的貫穿在測試過程中不可忽略。鑒於此,對實際工作的相關場景作一些簡單的梳理和總結,以作參考,不完善之處后續再作優化。

一、測試計划

測試計划:是對測試全過程的組織、資源、原則等進行規定和約束,並制定測試全過程各個階段的任務以及時間進度安排,並提出對各項任務的評估、風險分析和管理需求。簡言之,測試計划是從管理角度對整個測試活動進行規划和控制。

制定測試計划所包含的內容,主要有:
1.概述
項目背景、測試范圍(所需測試的特性)、參考文檔(需求文檔、會議記錄、同類項目的參考說明)
2.組織形式
測試涉及人員及其職責的划分
3.測試范圍
確定被測特性有哪些,然后按照功能性、非功能性的分類,對系統模塊&子模塊進行划分,重要級別的設置
4.測試通過與否的標准
根據對測試系統的預判,與項目經理協商並由其確認來定義項目通過&不通過的准則(如:測試覆蓋率、缺陷修復率...)
5.測試掛起&恢復條件
1)測試掛起:考慮測試過程中發生一些內外部問題致使測試受阻,用例無法執行的情形,由項目經理確認
2)測試恢復:導致阻塞的問題確認已被修復后,由項目經理確認恢復測試
6.測試進度人力分布計划
計划編制原則:
1)盡量准確預估整個測試活動所需的人力和持續時間
2)講一個階段分成若干個能進行有效監控的小階段
3)計划結構和進度須清晰明了,便於閱覽、檢查
4)結構包括:任務、負責人、檢查人、時間進度條

二、測試方案

測試方案:是描述被測對象需要測試的特性、測試的方法、測試環境的規划、測試工具的設計和選擇、測試用例的設計方法、測試代碼的設計方案。簡言之,測試方案是從技術角度對整個測試活動進行規划和控制。

制定測試方案所包含的內容,主要有:
1.概述
描述軟件項目的背景(如:項目名稱、項目時間、項目目的)、測試范圍、參考文檔
2.測試環境
1)軟硬件環境
硬件設備:電腦配置、無線路由器、手機...
軟件設備:應用服務器、數據庫服務器-型號&版本
2)網絡構成
測試環境的網絡結構、拓撲圖
3)環境搭建
測試所需的環境搭建步驟、要求、注意事項
4)測試工具
所需的測試工具,如:LR、Jmeter、Postman、AppScan、AWVS...
3.測試策略
說明此項目將要采取哪些測試手段與方法
結構包括:功能性/非功能性-系統模塊&子模塊、測試要點、測試要點說明、測試數據描述、優先級、測試方法、用例設計方法
4.測試風險評估與預防
評估項目測試過程中可能存在的風險,設置不同的風險等級,並提前分析相應的預防措施
結構包括:風險描述、風險等級、風險來源、產生階段、預防措施、對策責任人


測試計划提出“做什么”,測試方案明確“如何做”,測試方案需要在測試計划的指導下進行。

三、測試策略

測試策略:如何用盡量少的資源來盡量好的完成測試,給測試活動提供技術上的明確指導,以便測試活動的實施者能夠很快的開展自己的工作。

從宏觀角度來看,網絡上部分文章中的測試策略是站在全局整體的角度上進行考慮,為了增加對測試策略的多層面了解,此時可以作簡要總結,如下:
測試策略:在不同的項目背景下,根據產品需求和指標,分析產品的功能項和業務邏輯,並判斷測試的重點和方向,在當前有限的條件下,統籌各方資源、采取合理有效的方法來推動項目的測試活動開展,以最少的軟硬件、人力資源投入得到最佳的測試效果,達到符合當前環境的最優決策。

而從微觀角度來看,測試策略可以歸屬到測試方案中的一個重要組成項,通過采用有效的測試手段與方法,對產品模塊&子模塊進行划分,明確測試要點,然后按照功能性與非功能性(易用性、兼容性、性能、安全性...)的分類,明確所采用的測試方法(黑盒/白盒/單元/集成/系統/回歸/驗收...)、用例設計方法(等價類、邊界值、流程分析法、),並設置不同的測試優先級,從而指導后面編寫測試用例等工作的開展

 

測試策略描述測試工程的總體方法和目標

描述目前在進行哪一階段的測試(單元測試、集成測試、系dao統測試)以及每個階段內在進行的測試種類(功能測試、性能測試、覆蓋測試等)。

測試策略的制定主要包含三個方面的內容:

(1)確定測試過程要使用的測試技術和工具;

(2)制定測試啟動、停止、完成標准;

(3)進行風險分析和應對方案。例如測試與外部接口或者模擬物理損壞、安全性威脅。測試計划最關鍵的一步就是將軟件分解成單元,按照需求編寫測試計划。


測試策略描述了軟件開發過程中進行測試方法,用來告訴測試過程中所有可能的參與者,測試活動應該如何進行。其中主要會包括測試目標,測試新功能的方法,測試項目的時間和資源,以及測試環境等等。

除此以外,測試策略應該描述測試過程中存在哪些風險,以及如何能夠規避或者降低這些風險。同時,測試策略也會提到測試的級別,哪些測試應該被執行,入口出口條件是什么。創建測試策略時候我們可以參考各種需求文檔和設計文檔。

一般來說,測試策略在結構上可以包括以下一些要點:

(1)測試級別:常見的測試級別有單元測試,集成測試和系統測試。大部分的測試組織里面,單元測試由開發負責,而集成測試和系統測試由測試部門或者質量保證部門負責。

(2)角色與職責:需要在測試策略里面明確定義各個角色,以及該角色的職責。比如項目經理,測試組長,測試工程師…

(3)環境需求:這一點非常重要,它將描述測試時需要的系統環境,包括軟硬件以及網絡環境等等。在澄清環境需求的時候,測試組織可以識別出資源方面的風險。

(4)風險分析:影響測試過程的風險都應該盡早被識別出來,而且必須有相應的解決辦法以便消除或者減輕這些風險。

(5)測試進度:測試進度將會評估完成測試所需要的時間。在設定進度的時候,首先需要明確測試范圍,然后根據測試資源的多少來制定能被各方面認可的測試進度計划。做一個非常准確的進度計划是困難的事情,因為測試過程中充滿了各種不確定性,所以一般計划者需要考慮增加一定的buffer。當然,制定進度計划的時候可以參考已有的項目的數據。如果是一個全新的軟件項目,專家認為將初始計划的時間翻倍比較靠譜!

(6)回歸測試方法:回歸測試用來保證之前fix bug的代碼不會影響軟件的其他部分,這樣需要我們選擇已經執行過的測試用例重新運行。測試人員需要找到一個方法來確定哪些測試用例應該在回歸測試中運行,用例不能太多,因為資源有限,用例也不能太少,否則會達不到必須的測試強度。不過,如果測試部門對待測系統以及軟件架構非常了解的話,就比較容易找到合適的回歸測試集合。

(7)測試范圍:這個沒啥好說的,就是你要測試的內容,可能是某些模塊,可能是某些指標,比如功能,性能,易用性…

(8)測試優先級:測試范圍內的東西不會都是一樣重要的,加上測試資源各種有限,所以為測試排定優先級是十分的必要。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM