軟件測試需求分析
1.什么是軟件測試需求?
測試需求就是明確在項目中要測試什么。
我們在測試活動中,首先要明確測試需求(what),才能決定怎么測(how)什么時候測(when)需要多少人(who)測試的環境是什么(where),測試中需要的技能,工具以及相應的背景知識,測試中可能遇到的風險等等。
2.軟目件需求分析的的
測試需求分析的主要目的“獲取測試點,根據測試點來編寫測試用例
1.把不直觀的需求-----轉變為直觀的需求(用例圖/活動圖 flow圖)
a.使得測試范圍可以度量(有多少功能,有多少功能項)度量測試范圍(規定測試范圍)
++ b.使得獨立的功能點對應的所 有處理分支可以度量 度量獨立功能點的功能處理分支(細化獨立功能點的功能范圍)
c.使得該系統需要測試的業務場景可以度量 度量業務場景(各種各樣的流程圖也是各種業務場景)
2.把不明確的需求轉變為可度量的需求明確其功能點的輸入,處理和輸出結果(明確輸入----輸出的結果)
3.如何對軟件測試需求分析
需求分析和測試需求分析的區別? 先需求分析(產品經理)-------測試需求分析(測試人員)
需求分析:初步設想(客戶需求)-需求分析-需求規格:輸入,處理和輸出(先得到原始需求,由產品經理進行需求分析,然后輸出需求規格說明書)
測試需求分析:單個功能點輸入處理輸出-------業務流程分析-------全局--(整個系統)------隱式需求挖掘(UI,性能,安全,應用性等)
測試需求分析:
---通過分析需求描述中的輸入,輸出,處理,限制,約束等給出對應的驗證內容:(功能測試)
---通過分析各個功能模塊之間的業務順序,和接口之間信息和數據的傳遞,對存在功能交互的功能項,給出對應的驗證內容(功能交互性測試,握手)
---考慮到需求的完整性,要充分考慮隱性需求的驗證,比如界面的驗證,注冊賬號的唯一性(界面,易用性,兼容性,安全性,性能)
---根據場景法和錯誤分析法補充測試案例
測試點分析步驟:
1.正常功能:核心最基本的功能
2.功能驗證:規則:按順序從上至下,對每一個輸入項進行驗證
3.功能交互驗證
4.隱性需求
充分熟悉產品業務,挖掘隱性需求。(UI,兼容,性能,安全,易用)
需求的變更
對於一個存在生命周期的軟件產品來說,軟件的開發和測試往往都不是一次性的,因為隨着新的需求出現,以及對原有版本的改進,新的版本會不斷的發布。
我們都面臨一個點實際問題:就是軟件需求在開發過程中會不斷發生變化,有時候到了后期還會有新的需求加進來,或者是發版以后發現原來的需求存在缺陷,之后重新返工,那么我們該如何在最終發布之前,確定需求呢?
如此我們就必須要考慮軟件需求的版本化控制。當要進行一個新版本的迭代時,我們在工作開始之前就確認好本次需求的范圍:如實出現需求變更,則根據市場策略,已公布的發布時間,客戶需求,實現的代價,難易程度以及對現有工作影響等方面考慮,對需求進行適度划分,嚴格定義當前版本需要實現的功能,而其他的部分,則作為未來版本的需求
總之遵循一個原則,對一個版本的需求版更,必須早飯先,早討論,早決定,早調整。
以上常用的黑盒用例設計方法,等價類,邊界值,錯誤推測,場景法細化出測試點。
桌子
功能度:桌子能不能放東西。
安全性:打造桌子所用的木料有沒有毒或者腐爛污染
可靠性:杯子從不同高度落下的損壞程度
可移植性:桌子在不同的地方、溫度等環境下是否都可以正常使用
兼容性:桌子能否作為飯桌,書桌,游戲桌子使用。
易用性:桌子是否平滑不拉手、桌角是否打磨平整,桌子的高度設置是否符合人體工學標准、是否方便辦公
用戶文檔:使用手冊是否對桌子的用法、限制、使用條件等有詳細描述
疲勞測試:將桌子放上100kg重物放24小時檢查桌子表面的情況
壓力測試:在桌子上面不斷加重物,看壓力多大時桌子會傾斜