信息系統測試
出自 MBA智库百科(https://wiki.mbalib.com/)
目錄 |
信息系統測試是為了發現錯誤而運行系統的過程,是根據程式開發階段的規格說明及程式內部結構而精心設計的一批測試用例,並利用這些測試用例運行程式,以發現程式錯誤的過程。
信息系統測試的原則[1]
信息系統測試應該儘早並且不斷地進行。測試用例應當由測試輸入數據和對應的預期輸出結果兩部分組成;程式員應避免檢查自己的程式;在設計測試用例時,應包括合理的輸入條件和不合理的輸入條件;嚴格執行測試計劃,排除測試的隨意性;應當對每一個測試結果做全面檢查。
信息系統測試不等於程式測試。信息系統測試應貫穿系統定義與開發的整個過程。需求分析、概要設計、詳細設計以及程式編碼等各階段的文檔,都應作為軟體測試的對象。
信息系統測試的種類[1]
1.功能測試
功能測試是在規定的一段時間內運行系統所有功能,以驗證信息系統沒有嚴重錯誤。
2.強度測試
強度測試是要檢查在系統運行環境不正常乃至發生故障的情況下,系統可以運行到何種程度的測試。
3.性能測試
性能測試是要檢查系統是否滿足在需求分析時確定的性能。
4.恢複測試
恢複測試是要證實在剋服硬體故障(包括斷電、硬體或網路出錯等)後,系統能否正常繼續工作,並且不會對系統造成任何損害。
5.安全性測試
安全性測試是要檢驗在系統中已經存在的系統安全性、保密性措施是否發揮作用,有無漏洞。
6.可使用性測試
主要是從使用的合理性和方便性等角度對軟體系統進行檢查,以發現人為因素或使用上的問題。
信息系統測試的目的[2]
①確認信息系統的質量,包括信息系統是否完成了預期的目標、是否滿足用戶的需求,也包括系統是否以正確的方式正確地完成了工作任務。
③瞭解開發過程的可信性。
信息系統測試的過程[2]
完整的測試體系包括:測試過程、測試方法、測試工具、測試管理工具、測試用例庫和缺陷庫,它們之間的關係,如圖所示。
接下來從低層測試和高層測試兩個方面來介紹系統測試。
- (1)低層次測試
低層次系統測試過程可以被看作是一個不斷運行的程式段、輸人數據、觀察和記錄程式的運行行為和輸出結果,並判斷其行為和輸出結果的正確性,直到能夠由這些結果有效地分析該程式段的特性的過程。
為了完成這一測試過程,往往需要編寫一些輔助的程式。一是能夠調用被測試模塊的程式段,稱之為測試的驅動程式,它負責向被測試模塊輸入測試數據,顯示、記錄該模塊運行的行為。二是測試的樁基模塊(stub),它負責為被測試的模塊提供數據,這些數據可能是由其他模塊被調用後運行的結果,也可能是直接從資料庫讀取的數據。三是軟體測試監視代碼,是為了能有效地記錄測試的動態行為而在模塊中插入的一些反饋信息的程式代碼。因為對模塊動態行為的觀察和記錄不能只限於該模塊測試的輸出結果,有時需要對模塊的執行路徑以及在路徑上的一些關鍵點的中間結果進行記錄和分析,找出程式缺陷的位置,它們之間的關係如圖所示。
- (2)高層次測試
從更高的層次上來分析,系統測試過程可以被看成不斷測試、排錯、修改程式和文檔,然後再進行測試,直到系統達到用戶質量要求的一個迴圈往複的過程。
通過測試,評價模塊是否有錯誤主要從兩個方面來考慮:一是要保證被測試的模塊在足夠多的測試數據上是正確的,但並不能說明被測試模塊是完全正確的,它可能存在一些隱含的錯誤,只是在測試數據上並未發現;二是要保證測試數據是充分的,即該模塊在測試數據上的動態行為能夠充分反映模塊質量特性的總體表現,只有經過充分測試後才能保證模塊的正確性。
系統測試的主要工作包括制定測試大綱、準備測試數據、程式測試、功能測試、子系統測試、系統介面測試、系統集成測試、寫出測試報告書,並向下階段工作提交系統運行和維護手冊。
系統測試工作開始之前,要組織主要開發人員和技術骨幹制定周密的系統測試計劃,並確定測試目標、測試方法、測試步驟和測試進度,組建精幹的系統測試小組,這個小組往往需要用戶的參與。
在系統測試過程中,要指定專人做好每個項目的測試記錄,包括原始記錄和總結整理後的測試報告,同時做好每天的工作日記,特別是要對原系統設計進行變更時,一定要多方論證,慎重考慮,認真記錄事件的每一個細節,並存入系統測試工作文檔庫。
系統測試工作完成後,還要做一個全面的總結報告,對於系統的技術性能做出結論並提出進一步完善和修改的建議。