11月 04, 2010

[系統分析] 軟體測試 (Software Testing)

軟體測試方法:

(a) 白箱測試
根據程式的控制邏輯與架構,設計測試個案(Test case)來進行測試。保證模組內的所有敘述與控制邏輯都執行過了。此法在程式架構較大時,無法輕易實施。
優點:可以完全 100% 測試所有可能性
缺點:成本高,而且當程式邏輯複雜、系統架構大時,難以實現。
(b) 黑箱測試
對程式架構與設計無所知,測試重點在於:對於每種輸入資料,是否能得到預期的輸出結果。
優點:不用知道程式內部的架構,不會受條件限制
缺點:此種測試方法,不一定可以測試到所有狀況。

軟體測試步驟:

(a) 單元測試
針對個別程式或模組所做的測試。根據細部設計規格的描述,用「白箱測試」來檢驗程式「控制路徑」,通常由程式設計師自己進行,目的在於執行程式中,每個敘述、邏輯關係。主要測試項目有:模組內部資料結構、邊界條件(最小最大值)、控制結構中的執行路徑。
(b) 整合測試
由上而下(靠虛擬模組)或者由下而上(靠驅動模組)進行整合,目的在測試模組經過整合後,是否能正常運作與合乎規格需求。測試資料在模組間的傳遞是正常的。
(c) 驗收測試 (口訣:客人要驗收了)
檢驗系統是否滿足客人需求(依需求分析)。可以為成α、β測試:
α:在原本的系統開發環境下測試,即軟體開發商自行內部測試。
β:在用戶的使用環境下測試,將軟體交由其他公司、個人進行測試。
(d) 系統測試
※系統測試有時被稱為:驗收測試。通過此測試才能得到用戶與管理階層的認可。

基於整個資訊系統的測試,檢驗各元件間整合,系統功能和執行績效是否滿足需求。使用者會輸入資料、執行查詢、產生報表,以模擬實際的作業環境,包括下列型態:
(1) 功能測試:檢驗所有功能是否能正常運作(跟單元測試不一樣)
(2) 績效測試:測試整體的效能(benchmark)可否達到要求。
(3) 回復測試:系統失效後是否能回復到正常操作狀態。
(4) 安全測試:系統是否有符合安全需求。
(5) 壓力測試:評估系統滿載時的運作情形

沒有留言:

張貼留言