系統(tǒng)測試常見的方法
恢復(fù)測試(容錯測試):
體現(xiàn):通常若計算機系統(tǒng)出現(xiàn)錯誤,就必須在一定時間內(nèi)從錯誤中恢復(fù)過來,修正錯誤并重新啟動系統(tǒng)。
目的:通過各種手段,強制性地使軟件出錯,使其不能正常工作,進而檢驗系統(tǒng)的恢復(fù)(容錯)能力。
內(nèi)容:
1.如果系統(tǒng)恢復(fù)是自動的(由系統(tǒng)自身完成),則應(yīng)該檢驗:重新初始化、檢驗點設(shè)置機構(gòu)、數(shù)據(jù)恢復(fù)以及重新啟動是否正確。
2.如果這一恢復(fù)需要人為干預(yù),則應(yīng)考慮平均修復(fù)時間是否在限定的、可以接受的范圍之內(nèi)。
安全測試:
目的:驗證安裝在系統(tǒng)內(nèi)的保護機制能否在實際中保護系統(tǒng)且不受非法入侵,不受各種非法干擾。
在安全測試中,測試者扮演著試圖攻擊系統(tǒng)的個人角色:
1.嘗試去通過外部的手段來獲取系統(tǒng)的密碼
2.使用可以瓦解任何防守的客戶軟件來攻擊系統(tǒng)
3.讓系統(tǒng)“癱瘓”,使得其他用戶無法訪問
4.有目的地引發(fā)系統(tǒng)錯誤,期望在恢復(fù)過程中侵入系統(tǒng)
5.通過瀏覽非保密的數(shù)據(jù),從中找到進入系統(tǒng)的鑰匙
測重點:
1.系統(tǒng)的安全測試要設(shè)置一些測試用例試圖突破系統(tǒng)的安全保密措施,檢驗系統(tǒng)是否有安全保密的漏洞。
2.對軟件產(chǎn)品安全測試應(yīng)側(cè)重于以下方面:
1).用戶對數(shù)據(jù)或業(yè)務(wù)功能的訪問控制,數(shù)據(jù)存儲和數(shù)據(jù)通信的遠程安全控制。
2).用戶管理和訪問控制
3).通信加密
4).安全日志測試
準則:讓非法侵入者攻擊系統(tǒng)的代價大于保護系統(tǒng)安全的價值。
強度測試(壓力測試):
目的:檢測非正常的情形,測試是想要破壞程序。
體現(xiàn):在反常規(guī)數(shù)據(jù)量、頻率或資源的方式下運行系統(tǒng),以檢驗系統(tǒng)能力的最高實際限度。
案例:
1.如果正常的中斷頻率為每秒5次,強度測試設(shè)計為每秒50次中斷。
2.把輸入數(shù)據(jù)的量提高一個數(shù)量級來測試輸入功能會如何響應(yīng)。
3.若某系統(tǒng)正常運行可支持200個終端并行工作,強度測試則檢驗4.1000個終端并行工作的情況。
5.運行大量的消耗內(nèi)存或其他系統(tǒng)資源的測試實例。
性能測試:
目的:測試軟件在系統(tǒng)集成中的運行性能,比如運行速度、系統(tǒng)資源占有或響應(yīng)時間等。
特別是針對實時系統(tǒng)和嵌入式系統(tǒng),僅提供符合功能需求但不符合性能需求的軟件是不能被接受的。
階段:可以在測試過程的任意階段進行,但只有當(dāng)整個系統(tǒng)的所有成分都集成在一起后,才能檢查一個系統(tǒng)的真正性能。
容量測試:
定義:在系統(tǒng)正常運行的范圍內(nèi)測定系統(tǒng)能夠處理的數(shù)據(jù)容量,測試系統(tǒng)承受超額數(shù)據(jù)容量的能力。
系統(tǒng)容量必須滿足用戶需求,如果不能滿足實際要求,必須努力改進,尋求解決辦法。
暫時無法解決的需要在產(chǎn)品說明書中給予說明。
正確性測試:
目的:檢查軟件的各項功能是否符合規(guī)格說明的要求。
軟件的正確與否關(guān)系著軟件的質(zhì)量好壞,所以非常重要。
設(shè)計思路:設(shè)計一些邏輯正確的輸入值,檢查運行結(jié)果是不是期望值。
1.枚舉法: 即構(gòu)造一些合理輸入,檢查是否得到期望的輸出。測試時應(yīng)盡量設(shè)法減少枚舉的次數(shù),關(guān)鍵在于尋找等價區(qū)間,因為在等價區(qū)間中,只需用任意值測試一次即可。
2.邊界值法: 即采用定義域或者等價區(qū)間的邊界值進行測試。因為程序設(shè)計容易疏忽邊界情況,程序也容易在邊界值處出錯。
可靠性測試:
目的:從驗證的角度出發(fā),檢驗系統(tǒng)的可靠性是否達到預(yù)期目標(biāo),同時給出當(dāng)前系統(tǒng)可能的可靠性增長情況。
可靠性測試需要從用戶角度出發(fā),模擬用戶實際使用系統(tǒng)的情況,設(shè)計出系統(tǒng)的可操作視圖。
關(guān)鍵的測試數(shù)據(jù):失效間隔時間,失效修復(fù)時間,失效數(shù)量,失效級別等。
根據(jù)獲得的測試數(shù)據(jù),應(yīng)用可靠性模型,可以得到系統(tǒng)的失效率及可靠性增長趨勢。
可靠性指標(biāo)有時很難確定,通常采用平均無故障時間或系統(tǒng)投入運行后出現(xiàn)的故障不能大于多少數(shù)量這些指標(biāo)來對可靠性進行評估。
案例:
1.淘寶一天24小時正常工作,你剛使用了3小時正起勁,突然就崩潰了。
2.銀行系統(tǒng)持續(xù)工作時間24小時,銀行剛使用10分鐘,系統(tǒng)異常就不能操作
兼容性測試:
定義:檢測各軟件之間能否正確地交互和共享信息
目標(biāo):保證軟件按照用戶期望的方式進行交互,使用其它軟件檢查軟件操作的過程。
解決以下問題:
1.新開發(fā)的軟件需要與哪種操作系統(tǒng)、Web瀏覽器和應(yīng)用軟件保持兼容,如果要測試的軟件是一個平臺,那么要求應(yīng)用程序能在其上運行。
2.應(yīng)該遵守哪種定義軟件之間交互的標(biāo)準或者規(guī)范。
3.軟件使用何種數(shù)據(jù)與其它平臺、與新的軟件進行交互和共享信息
Web測試:
Web網(wǎng)站的網(wǎng)頁是由文字、圖形、音頻、視頻和超級鏈接組成的文檔。
對網(wǎng)站的測試包含許多方面,如配置測試、兼容測試、可用性測試、文檔測試等;黑盒測試、白盒測試、靜態(tài)測試和動態(tài)測試都有可能采用。
通常Web網(wǎng)站測試包含以下內(nèi)容:
(1)文字測試
(2)鏈接測試
(3)圖像測試
(4)表單測試
(5)動態(tài)內(nèi)容測試
(6)數(shù)據(jù)庫測試
(7)服務(wù)器性能及負載測試
(8)安全性測試