由於即使是簡單的軟體元件也可能進行測試的數量實際上是無限的,所有軟體測試都使用某種策略來選擇可用時間和資源的測試. 因此,軟體測試通常 (但不僅限於) 試圖執行程式或應用程式,目的是找到軟體錯誤 (錯誤或其他缺陷). 測試是一個<unk>代的過程, 當一個錯誤被修復, 它可以照亮其他更深層次的錯誤,  雖然測試可以根據一些特定假設來確定軟體的正確性 (見下面的測試難度等級),但測試無法識別軟體中的所有缺陷. 它提供了批評或比較,比較產品的狀態和行為與預言的原則或機制, 這些預言可能包括 (但不限於) 規格,合同,可比產品,同一個產品的過去版本,關於預期或預期用途的推斷,使用者或客戶的期望,相關標準,適用法律或其他標準.  根據這篇文章和下面的答案列表,寫下問題列表.  1.可能的測試 2. 軟體錯誤 3. 沒有 4. 它可以照亮或創造新的 5. 沒有 6. 它提供了批評 7 是的 8. 超過八個 9. 執行一個程式 10. <unk>代的  編號問題:
一個. 什麼是無限? 2. 沒有 這些測試發現了什麼? 3. 沒有. 一旦它修復了,一切都準備好了嗎? 4. 沒有 為什麼沒有? 五個 測試可以識別所有? 六個 它做了什麼? 七個 預言中是否包含合同? 沒有. 有多少東西是預言? 9. 沒有 軟體測試通常試圖做什麼? 十個 這項工作是什麼樣的過程?