糾正軟件中錯誤的方法_第1頁
糾正軟件中錯誤的方法_第2頁
糾正軟件中錯誤的方法_第3頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第第頁糾正軟件中錯誤的方法糾正軟件中錯誤的方法

發(fā)表于:2023-10-18來源::點擊數(shù):標簽:軟件

糾正軟件中錯誤的方法軟件測試1、跟蹤法跟蹤執(zhí)行可疑的程序段,是對小型程序糾錯又一種常用的策略。它的要求是,就是讓帶錯的程序“分步執(zhí)行”,即每執(zhí)行完一條語句(或指令),就暫時停下檢查執(zhí)行的結果,確認正常后再繼續(xù)進行。許多高級語言都設有專用于

糾正軟件中錯誤的方法軟件測試

1、跟蹤法

跟蹤執(zhí)行可疑的程序段,是對小型程序糾錯又一種常用的策略。它的要求是,就是讓帶錯的程序“分步執(zhí)行”,即每執(zhí)行完一條語句(或指令),就暫時停下檢查執(zhí)行的結果,確認正常后再繼續(xù)進行。許多高級語言都設有專用于跟蹤糾錯的語句或命令。他們都具有讓程序分步執(zhí)行的功能。

對于較小的程序,用跟蹤執(zhí)行來確定錯誤部位是相當有效的。例如:倘若再某一PASCAL程序中把語句

FORI:=1to10中的10誤寫為-10,則程序執(zhí)行到語句就會直接跳過循環(huán)體中的語句,轉到for循環(huán)之后的語句去執(zhí)行。

但有些時候,發(fā)現(xiàn)程序出錯的語句其本身并無錯誤,問題倒出在位于它前面的一些語句上。例如,當某FORTRAN程序執(zhí)行到語句ix=iy/(k/n)時發(fā)生了運行出錯,屏幕上顯示“整數(shù)上溢”。順著這條語句返回尋找,在它的前數(shù)行找到了給k,n賦值的語句:

k=5

n=6

則不難想到,由于k/n整除所得結果為0,才導致iy被0除后發(fā)生上溢。像這樣從出錯處逐句返回探尋錯誤的根由,一般稱為回溯(backtracking)或反向跟蹤。而通常高級語言所設置的跟蹤命令都只提供正向跟蹤,反向跟蹤只能人工進行。

當程序較長,包含的分支與嵌套又相當多時,跟蹤尤其是反向跟蹤的路徑變得多而且復雜。這是使用跟蹤法糾錯不僅效率不高,而且會變得難于執(zhí)行,最好改用推理法進行糾錯。

2、推理法

推理法來源于定理證明,又可區(qū)分為歸納法和演繹法兩大類。

歸納法是從個別到整體的推理過程。它從收集個別的故障癥狀開始,分析各種癥狀的相互關系后,就有可能將它們歸納為某一些假想的錯誤。如果這一些假想能被證實,就找到了真實的病根。

演繹法是從一般到特殊的推理過程。根據(jù)測試獲得的錯誤癥狀,可以先列出一批可能的病因。接著在這一大范圍的設想中,逐一的排除根據(jù)不足或與其他測試結果有明顯矛盾的病因,然后對余下的一種或數(shù)種病因作詳細的鑒別,確定真正的病因。由于真正的病因是從大量可能病因中篩選得來的,所以此法有時也稱為“病因排除法(CauseElimination)”

3、試湊法

這是一種不甚嚴格的糾錯策略。根據(jù)測試中暴露達到錯誤征兆,首先可設定一個可疑區(qū)。然后采用一些簡單的糾錯手段(例如在程序中插入打印語句),進一步獲取與可疑區(qū)有關的信息,借以肯定或修改原來的設想。如果可疑區(qū)沒有找準,便再來一遍,重置新的可疑區(qū)。這種“邊試邊瞧”的做法,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論