軟件測試理論(二)
測試覆蓋率
覆蓋率是用來度量測試完整性的一個手段,同時也是測試技術有效性的一個度量
特點:1.通過覆蓋率數據,可以檢測我們的測試是否充分
2.分析出測試的弱點在哪方面
3.知道我們設計能夠增加覆蓋率的測試用例,有效提高測試質量,但是測試用例設計不能一昧追求覆蓋率,因為測試成本會隨著測試率增加而增加
軟件測試的原則
- 所有的測試都應追溯到用戶需求
- 測試工作應該盡早啟動
- pareto法則應用於軟件測試(28效率法則,在分析,設計,實現階段的復審和測試工作能夠發現和避免80%的缺陷,而系統測試又能找到其余缺陷的中的80%,最後4%的缺陷可能只有在用戶的大範圍,長時間使用後才能暴露出來)
- 窮盡測試是不可能,測試始終需要停止
- 殺蟲劑怪事(測試人員必須不斷編寫不同的測試程序,對程序的不同部分進行測試,已找出更多缺陷)
- 前進兩步,後退一步(測試中的一個基本問題是----缺陷修復會以20%-50%的幾率引入新的缺陷,每次修復後,必須重新運行先前所有的測試用例,從而確保系統不會以隱蔽的方式被破壞)
- 三心二意(【細心耐心信心】,團隊溝通意識,保持懷疑的態度且有缺陷預防意識)
需求分析
1.測試人員參與需求分析,對需求了解很深刻,減少與開發人員的交互,節省時間
2.早期確定測試用例的編寫思路,為測試打好了基礎
3.可以獲取到一些測試數據,業務場景,為測試用例設計提供幫助
4.可以發現需求不合理的地方(如違反正常操作準則的),降低測試成本
需求測試的作用
1.測試需求的分析用來確認整個測試工作,明確測試對象以及測試工作的範圍和作用,並作為測試覆蓋的基礎
2.被確定的測試需求項必須是可以核實的,測試需求必須有一個可觀察,可評測的結果
3.如果無法核實的需求就不是測試需求
4.測試需求的優先級,哪些更重要
5.確保風險承擔者盡早地對項目達成共識
6.並對將來的產品有個清晰的認識
測試需求是制定測試計劃的基本依據
測試需求是設計測試用例的指導
確定了要測什麽,測哪些方面才能有效設計用例
需求驗證過程
1.審查需求文檔
對需求文檔及相關模型進行仔細檢查
在需求開發期間所做的非正式評審也是有所裨益的
2.以需求為依據編寫測試用例
編寫用戶手冊(簡潔版)
(在需求開發期間起草一份簡略,淺顯易懂的用戶手冊,用以描述出所有對用戶可見的功能,並用他作為需求規格說明的參考並輔助需求分析)
3.確定合格的標準
讓用戶描述什麽樣的產品才算滿足他們的要求和適合他們的使用
將確認合格的測試建立在使用情景描述或使用實例的基礎之上
軟件測試理論(二)