軟件測試

軟體測試 （ software testing ） ， 描述一種用來促進鑑定軟體的正確性 、 完整性 、 安全性和品質的過程 。 依照可計算理論 （ 計算機科學的一個支派 ） 一個簡單的數學證明推斷出下列結果 ： 不可能完全解決所謂 「 當機 」 ， 指任意電腦程式是否會進入無窮迴圈 ， 或者罷工併產生輸出問題 。 換句話說 ， 軟體測試是一種實際輸出與預期輸出間的稽覈或者比較過程 。 軟件測試的經典定義是 ： 在規定的條件下對程序進行操作 ， 以發現程序錯誤 ， 衡量軟體品質 ， 並對其是否能滿足設計要求進行評估的過程 。 軟體測試有許多方法 ， 但對複雜的產品執行有效測試不僅僅是研究過程 ， 更是創造並嚴格遵守某些呆板步驟的大事 。 測試的其中一個定義 ： 爲了評估而質疑產品的過程 ； 這裏的 “ 質疑 ” 是測試員試著對產品做的事 ， 而產品以測試者腳本行爲反應作爲回答 。 雖然大部分測試的質疑過程不外乎回顧 、 檢查 ， 然而 「 測試 」 這個詞意味著產品動態分析 ─ ─ 讓產品流暢運行 。 程式品質可能 ， 而且通常會 ， 隨系統不同而有差異 ； 不過某些公認特性是共通的 ： 可靠性 、 穩定性 、 輕便性 、 易於維護 、 以及實用性 。 請參照至ISO標準ISO 9126有更詳盡的說明 。