软件测试
维库,知识与思想的自由文库
|
软件测试的经典定义是在规定的条件下对程序进行操作,以发现错误,对软件质量进行评估的过程。 軟體測試描述一種用來促進鑑定軟體的 正確性、完整性、安全性、和品質的過程。據此,您可能會想,軟體測試永遠不可能完整的確立任意電腦軟體的正確性。然而,在可計算理論──計算機科學的一個支派──一個簡單的數學證明推斷出下列結果:不可能完全解決所謂『當機』(指任意電腦程式是否會進入 無限迴圈、或者罷工並產生輸出) 問題。換句話說,軟體測試是一種實際輸出與預期輸出間的稽核或者比較過程。 軟體測試有許多方法,但對複雜的產品執行有效測試不僅僅是研究過程,更是創造並嚴格遵守某些呆板步驟的大事。測試的其中一個定義:“為了評估而質疑產品的過程”──這裡的“質疑”是測試員試著對產品做的事,而產品以測試者腳本行為反應作為回答。雖然大部分測試的智力過程不外乎回顧、檢查,然而“測試”這個辭意味著產品動態分析──讓產品流暢運行。程式品質可能,而且通常會,隨系統不同而有差異;不過某些公認特性是共通的:可靠性、穩定性、輕便性、易於維護、以及實用性。請參照至 ISO 標準 ISO 9126 有更詳盡的說明。
[编辑] 系统测试回归测试指在软件维护阶段,为了检测代码修改而引入的错误所进行的测试活动。回归测试是软件维护阶段的重要工作,有研究表明,回归测试带来的耗费占软件生命周期的1/3总费用以上。 与普通的测试不同,在回归测试过程开始的时候,测试者有一个完整的测试用例集可供使用,因此,如何根据代码的修改情况对已有测试用例集进行有效的复用是回归测试研究的重要方向,此外,回归测试的研究方向还涉及自动化工具,面向对象回归测试,测试用例优先级,回归测试用例补充生成等。 [编辑] 测试用例、测试脚本和测试场景[编辑] 测试过程示例[编辑] 参见[编辑] 软件测试活动[编辑] 代碼覆蓋率代碼覆蓋率原本是種白箱測試活動。目標軟體通過特殊選項或者函式館編譯並且/或者執行在特殊環境──程式裡每個函式都被映射回原始碼裡函式起點──下。這個過程允許開發員與品管員檢視系統中在正常情況下極少或從未被讀寫的部分 (例如:例外處理之類) 並且幫助測試員確認最重要的情況 (函式點) 都被測過了。 [编辑] 参考
[编辑] 外部鏈接 |


