介紹軟件可靠性檢測中的隨機破壞測試
軟件可靠性檢測是軟件系統(tǒng)在規(guī)定的時間內(nèi)以及規(guī)定的環(huán)境條件下,完成規(guī)定功能的能力。一般情況下,只能通過對軟件系統(tǒng)進行測試來度量其可靠性。
隨機破壞測試:
測試可靠性的一個較為簡單的方法是使用隨機輸入。這種類型的測試通過提供虛假的不合邏輯的輸入,努力使應用程序發(fā)生故障或掛起。輸入可以是鍵盤或鼠標、程序消息流、Web 頁、數(shù)據(jù)緩存或其他可強制進入應用程序的輸入情況。應該使用隨機破壞測試測試重要的錯誤路徑,并公開軟件中的錯誤。這種可靠性檢測通過強制失敗以便可以觀察返回的錯誤處理來改進代碼質(zhì)量。
隨機測試故意忽略程序行為的規(guī)范。如果該應用程序中斷,則未通過測試。如果該應用程序不中斷,則通過測試。這里的要點是隨機測試可高度自動化,因為它完全不關心基礎應用程序應該如何工作。
可能需要某種測試裝備,以驅(qū)使混亂的、高壓力的、不合邏輯的測試狀況進入應用程序的接口中。Microsoft 使用名為“注射器”的工具,使得以將錯誤注射到API 中,而不用訪問源代碼。“注射器”可用于:模擬資源失敗,修改調(diào)用參數(shù),注射損壞的數(shù)據(jù),檢查參數(shù)驗證界限,添加定時延遲,以及執(zhí)行許多其他功能。