探秘軟件質量保證的五大法則
軟件質量保證***經驗
軟件質量保證是指通過對軟件的功能、性能和可靠性等質量要素進行驗證,發現軟件缺陷并幫助定位和修復缺陷,確保軟件系統功能滿足需求的活動。 IBM Rational根據多年軟件工程研究和實踐經驗,認為通過在軟件項目中執行如下***經驗,可以有效提高軟件質量,確保項目進度。
強化開發人員測試
開發人員測試通常也稱為單元測試,是指由開發人員對自己開發的代碼進行測試。強化開發人員測試,可盡早發現軟件代碼缺陷,保證每個模塊的質量,大大縮短后期模塊集成測試和系統測試的時間,提高項目計劃的準確性。此外,通過對測試程序進行有效的管理,可在應用的單元級進行回歸測試自動化,從而確保軟件項目能快速、高質量地實現新需求。
盡早引入性能測試
性能測試是指通過模擬大量虛擬客戶端來訪問被測服務器,從而發現系統在性能和可靠性方面的問題。軟件系統的性能問題主要分為應用程序方面和系統配置方面。傳統的性能測試通常在系統上線前才進行,這時即使發現系統在應用程序方面的性能問題,但迫于進度壓力,也不可能去大量修改應用代碼,而只能對系統配置進行升級或優化,有時會導致不得不增加硬件投資。因此我們建議在軟件項目的早期就引入性能測試手段,對軟件架構進行性能測試,從而盡早發現并及時解決系統在應用程序方面的性能問題。
實施測試管理自動化
測試管理是指對系統測試活動的管理,其主要目的是測準(有效選擇運行測試用例,發現系統的缺陷)和測全(保證所有需求對被測試過)。 系統測試的依據是系統需求,系統測試人員只有準確把握需求信息,才能進行有效的測試。同時,測試人員的職責不僅僅是發現缺陷,還有幫助開發人員重現并解決缺陷的義務,應該為開發人員提供缺陷的相關信息,以幫助開發人員快速定位并解決問題。因此,測試管理不僅僅以測試用例為核心,還應考慮對需求和缺陷信息的管理,并建立需求、測試用例、測試腳本以及缺陷的關聯。 測試管理自動化的主要目的是通過工具自動能獲得軟件質量以及測試過程的相關信息,從而及時有效地指導軟件測試。通過測試管理自動化,測試人員能把更多精力關注在如何設計有效的測試用例,如何有效選擇執行測試用例,從而保證系統質量。
引入功能測試執行自動化
功能測試是指通過對軟件系統界面進行操作,驗證系統功能是否正常。傳統的手工功能測試是通過測試人員手工操作被測系統界面,并通過眼睛來檢查系統界面輸出,從而驗證系統功能。當測試用例需要輸入大量測試數據或需要被多次執行時,傳統的手工測試方法將花費大量的時間,而且容易出錯。通過引入自動化測試腳本,并把測試輸入數據以及期望結果和測試腳本建立關聯,就可通過運行自動化測試腳本來完成測試用例執行,大大節省測試時間。