軟體測試的七大原則
軟體測試是在規定的條件下對程式進行操作,以發現程式錯誤,衡量軟體質量,並對其是否能滿足設計要求進行評估的過程。
軟體測試的基本原則有助於測試人員進行高質量的測試,盡早盡可能多的發現缺陷,並負責跟蹤和分析軟體中的問題,對存在的問題和不足提出質疑和改進,從而持續改進測試過程。
軟體測試的七大原則
原則1: 測試顯示缺陷的存在
測試可以顯示缺陷的存在,但不能證明系統不存在缺陷。測試可以減少軟體中存在缺陷的可能性,但即使測試沒有發現任何缺陷,也不能證明軟體或系統是完全正確的,或者說是不存在缺陷的。
原則2: 窮盡測試是不可能的
窮盡測試是不可能的,當滿足一定的測試出口準則時測試就應當終止。考慮到所有可能輸入值和它們的組合,以及結合所有不同的測試前置條件,這是乙個天文數字,我們沒有可能進行窮盡測試。
原則3: 測試的盡早介入
根據統計表明,在軟體開發生命週期早期引入的錯誤佔軟體過程中出現所有錯誤(包括最終的缺陷)數量的50%~60%。此外,ibm的乙份研究結果表明,缺陷存在放大趨勢。如需求階段的乙個錯誤可能會導致n個設計錯誤,因此,越是測試後期,為修復缺陷所付出的代價就會越大。因此,軟體測試人員要盡早地且不斷地進行軟體測試,以提高軟體質量降低軟體開發成本。
原則4:缺陷集群性
pareto原則表明「80%的錯誤集中在20%的程式模組中」。實際經驗也證明了這一點,通常情況下,大多數的缺陷只是存在測試物件的極小部分。缺陷並不是平均而是集群分布的。因此,如果在乙個地方發現了很多缺陷,那麼通常在這個模組中可以發現更多的缺陷。因此,測試過程中要充分注意錯誤集群現象,對發現錯誤較多的程式段或者軟體模組,應進行反覆的深入的測試。
原則5:
殺蟲劑悖論
論殺蟲劑用得多了,害蟲就有免疫力,殺蟲劑就發揮不了效力。在測試中,同樣的測試用例被一遍一遍反覆使用時,發現缺陷的能力就會越來越差。這種現象的主要原因在於測試人員沒有及時更新測試用例,同時對測試用例及測試物件過於熟悉,形成思維定勢。
為克服這種現象,測試用例需要經常的評審和修改,不斷增加新的不同的測試用例來測試軟體或系統的不同部分,保證測試用例永遠是最新的,即包含著最後一次程式**或說明文件的更新資訊。
原則6: 測試活動依賴於測試背景
原則7:
不存在缺陷的謬論
系統的質量特徵不僅僅是功能性要求,還包括了很多其它方面的要求比如穩定性、可用性、相容性等等。假如系統無法使用,或者系統不能完成客戶的需求和期望,那麼,這個系統的研發是失敗。同時在系統中發現和修改缺陷也是沒有任何意義的。
軟體測試七大原則與分類
原文 測試可以顯示缺陷的存在,但不能證明系統不存在缺陷。測試可以減少軟體中存在缺陷的可能性,但即使測試沒有發現任何缺陷,也不能證明軟體或系統是完全正確的,或者說是不存在缺陷的。窮盡測試是不可能的,當滿足一定的測試出口準則時測試就應當終止。考慮到所有可能輸入值和它們的組合,以及結合所有不同的測試前置條...
軟體設計原則(七大原則)
本片是自己在工作閒餘時間學習軟體設計模式所獲,在這裡歸納總結,如有不足請多多指教 說到軟體設計原則,可能很多人都會和軟體設計模式混淆,尤其是對剛工作不久的童鞋,其實軟體設計原則只是我們在軟體設計中對軟體架構,各模組之間松耦合,可重用性的一種總結的抽象。而軟體設計模式傾向於軟體架構方面,是站在全域性看...
七大原則 開閉原則
開閉原則 open closed principle,ocp 由勃蘭特 梅耶 bertrand meyer 提出,他在 1988 年的著作 物件導向軟體構造 object oriented software construction 中提出 軟體實體應當對擴充套件開放,對修改關閉 software ...