改正錯誤。軟件調試是為了發現錯誤而執行程序的過程。測試是為了證明程序有錯,而不是證明程序無錯(發現錯誤不是唯一目的)。一個好的測試用例在于它發現至今未發現的錯誤,一個成功的測試是發現了至今未發現的錯誤的測試。
在對程序進行了測試以後進入程序調試。調試的任務是診斷和改正程序中的錯誤。它與軟件測試不同,軟件測試是盡可能多地發現軟件中的錯誤。軟件運行失效或出現問題,往往隻是潛在錯誤的外部表現,而外部表現與内在原因之間常常沒有明顯的聯系,如果要找出真正的原因,排除潛在的錯誤,不是一件易事。可以說,調試是通過現象,找出原因的一個思維分析的過程。