標籤:style blog http ar io os 使用 sp java
軟體測試需求的意義
測試需求的意義
無論對於開發還是測試,一個全面精準有預見性的設計是保證項目順利進行的前提。實際項目操作中,常常感受到測試過程有著各種問題:
1、產品品質維度關注的不全面,測試類型不完整;
2、測試規格設計較為隨意,測試分解分配比較隨意;
導致測試過程中,經常會出現需求遺漏、測試設計遺漏的問題;
因此一份詳細精準的測試需求分析有利於這些問題的解決。
測試需求的定義
軟體需求定義的是要產品要實現的功能是什麼,而測試需求這個名詞業界並沒有權威的定義,多數的意見認為測試需求定義測試的範圍(即主要解決測什麼、及測 到什麼程度的問題),這樣說還是太過泛泛,換個說法,測試人員依據初期功能需求,評估需要測試的功能點都有什麼,每個功能點需要什麼類型的測試,每個功能 點測試到什麼程度算是通過,這樣初步評估出了測試的規模、複雜程度和風險,同時可以初步預估出哪個環節需要研發同事提供測試介面。
測試需求設計的愈加詳細精準,代表對待測試的軟體瞭解的愈深,對各種測試手段瞭解的愈深,但是這往往要求測試需求的設計者擁有一定的測試經驗。
測試需求的流程
測試需求的採集
測試需求最直接的來源是:
1、軟體需求規格;
2、業界協議規範;
3、測試經驗庫;
4、對於已有舊版本的軟體測試,還需要考慮繼承性的測試需求。
對以上內容進行梳理,形成原始測試需求表,列表的內容包括需求標識、原始測試需求描述、資訊來源,如下:
來源編號 |
測試原始需求編號 |
測試原始需求描述 |
開發特性 |
需求標識 |
需求描述 |
需求優先順序 |
測試規格分析的工程方法 |
DR001 |
EMAIL-001 |
能夠支援電子郵件的收發 |
Email |
OR_MKT.00010 |
能夠支援電子郵件的收發 |
|
|
測試人員需要對開發需求進行整理,首先需要確認軟體需求的正確性、其次保證軟體需求的可測試性。所謂的可測試指的是“存在一個可明確預知的結果,可用某 種方法對這個明確的結果進行判斷、驗證。”原則上,所有的軟體需求都應該是可測試的,因為如果作為測試人員對需求無法產生準確的理解(即無法得出明確的結 果),那麼開發人員也同樣無法對同一條需求產生準確的理解。每一個測試需求需要保證一條需求只包含一項測試內容,因此一條軟體需求通常可能對應多條測試需 求。
這個階段的測試需求整理,最重要的一點就是要注意廣泛性和全面性,要儘可能的收集更多的原始需求,不存在遺漏,並且可以對需求進行適當的擴充,這些需求應該不僅僅局限於上述的五種來源類型,也不僅僅局限於各種文檔、資料。
測試需求的分析
測試需求採集之後得到的是一張沒有最佳化的需求表,需要對這份原始需求表進行初步的規劃:
1、刪除冗餘重複的需求,各個需求間沒有過多的交集;
2、需求需覆蓋商務程序、功能、非功能方面的需求;
商務程序:任何一套軟體都會有一定的業務流,也就是使用者用該軟體來實現自己實際業務的一個流程。簡單的來說,在做測試需求分析時需要列出以下類別:
1)常用的或規定的商務程序
2)各商務程序分支的遍曆
3)明確規定不可使用的商務程序
4)沒有明確規定但是應該不可以執行的商務程序
5)其他異常或不符合規定的操作
1、需求需考慮了各功能模組之間互動關係分析;
2、確定測試特性(即測試功能點);
3、確定需求的測試類型;
1、確定需求的品質屬性;
2、確定本版本測試所屬的階段;
測試階段:產品的不同階段,對於測試階段的要求也不一樣。對於初期版本的產品,更側重於關註:功能是否實現(這個功 能正常情境下是否順利)、較為成熟階段之後,會關註:功能是否實現的夠完善(異常情境下,是否正常處理),更加成熟之後會關注,是否通得過各種壓力測試場 景。
測試需求跟蹤矩陣
建立測試需求跟蹤矩陣,對測試需求進行管理。將上述步驟分析、確定的開發需求、測試需求、測試類型填入測試跟蹤需求矩陣。
建立測試需求跟蹤矩陣,對測試需求進行管理。將上述步驟分析、確定的開發需求、測試需求、測試類型填入測試跟蹤需求矩陣。
通過測試需求跟蹤矩陣的方式對需求變更實施管理。軟體需求一旦發生變化,就要對需求跟蹤表進行維護,啟動組態管理過程,將與軟體需求變更相關的內容進行同步變更。
測試需求評審
評審的內容:
完整性審查:應保證測試需求能充分覆蓋軟體需求的各種特徵,重點關注功能要求、資料定義、介面定義、效能要求、安全性要求、可靠性要求、系統約束等方面,同時還應關注是否覆蓋開發人員遺漏的、系統隱含的需求;
準確性審查:應保證所描述的內容能夠得到相關各方的一致理解,各項測試需求之間沒有矛盾和衝突,各項測試需求在詳盡程度上保持一致,每一項測試需求都可以作為測試案例設計的依據。
軟體測試需求的意義