程序調(diào)試與軟件測試70638.ppt_第1頁
程序調(diào)試與軟件測試70638.ppt_第2頁
程序調(diào)試與軟件測試70638.ppt_第3頁
程序調(diào)試與軟件測試70638.ppt_第4頁
程序調(diào)試與軟件測試70638.ppt_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、程序調(diào)試與軟件測試,學(xué)習(xí)要點(diǎn) 錯(cuò)誤的類型 調(diào)試工具和調(diào)試方法 軟件測試的方法與技術(shù),由安博測試空間技術(shù)中心,錯(cuò)誤類型,程序調(diào)試就是對程序進(jìn)行測試并查找出錯(cuò)誤所在。 Visual Basic的錯(cuò)誤類型可以分為語法錯(cuò)誤、編譯錯(cuò)誤、運(yùn)行錯(cuò)誤和邏輯錯(cuò)誤。 1語法錯(cuò)誤 通常是由于不正確書寫代碼而產(chǎn)生的。例如:多寫、漏寫、關(guān)鍵字寫錯(cuò),標(biāo)點(diǎn)符號使用不當(dāng)?shù)取τ谶@種錯(cuò)誤,用Visual Basic中提供的自動(dòng)語法檢查功能就可解決。當(dāng)輸入一行代碼并回車后,Visual Basic系統(tǒng)就立即檢測出錯(cuò)誤,出錯(cuò)的那一行變成紅色,出錯(cuò)部分被高亮顯示并彈出消息對話框指出錯(cuò)誤的原因,對通過基本語法檢查的語句,會自動(dòng)將對象、

2、常數(shù)等首字母變?yōu)榇髮?,自?dòng)調(diào)整各單詞之間的空格等。,錯(cuò)誤類型,2編譯錯(cuò)誤 編譯錯(cuò)誤是指單擊了“啟動(dòng)”按鈕,VB開始運(yùn)行程序前,先編譯執(zhí)行的程序段首產(chǎn)生的錯(cuò)誤。此類錯(cuò)誤是由于用戶未定義變量、遺漏關(guān)鍵字等原因而產(chǎn)生的。這時(shí)VB也彈出一個(gè)對話框,提示錯(cuò)誤信息。出錯(cuò)的那行被高亮顯示,同時(shí)VB停止編譯。這時(shí),用戶必須單擊“確定”按鈕,關(guān)閉出錯(cuò)提示對話框,然后對出錯(cuò)行進(jìn)行修改。,錯(cuò)誤類型,3運(yùn)行錯(cuò)誤 運(yùn)行時(shí)的錯(cuò)誤是VB在編譯通過后,運(yùn)行代碼時(shí)發(fā)生的錯(cuò)誤。這類錯(cuò)誤往往是由指令代碼執(zhí)行了非法操作引起的。 例如,除法運(yùn)算中除數(shù)為零,類型不匹配,訪問文件時(shí)文件夾或文件找不到等。 4邏輯錯(cuò)誤 邏輯錯(cuò)誤是指程序能正常

3、運(yùn)行但是沒有得到預(yù)期結(jié)果的錯(cuò)誤。 例如,運(yùn)算符使用不正確,語句的次序不對,循環(huán)語句的起始、終值不正確。通常,邏輯錯(cuò)誤不會產(chǎn)生錯(cuò)誤提示信息,故錯(cuò)誤較難排除,需要程序員仔細(xì)閱讀分析程序,并具有調(diào)試程序的經(jīng)驗(yàn)。,調(diào)試與排錯(cuò),VB雖不能診斷或更正錯(cuò)誤,但是提供了一些非常有用的工具,幫助分析運(yùn)行是如何從過程的一部分流動(dòng)到另一部分,分析變量和屬性是如何隨著語句的執(zhí)行而改變的。使用調(diào)試工具,可以能深入到應(yīng)用程序內(nèi)部去觀察,從而確定產(chǎn)生錯(cuò)誤的原因。 一、調(diào)試工具 Visual Basic 6.0提供了強(qiáng)大的調(diào)試工具,可以在“調(diào)試”菜單中找到,也可以在“調(diào)試”工具欄中找到。通過它們可以便捷有效地檢測出程序中邏輯

4、錯(cuò)誤地點(diǎn)和原因。,調(diào)試與排錯(cuò),二、調(diào)試方法 Visual Basic 6.0提供了強(qiáng)大的調(diào)試工具,可以在“調(diào)試”菜單中找到,也可以在“調(diào)試”工具欄中找到。通過它們可以便捷有效地檢測出程序中邏輯錯(cuò)誤地點(diǎn)和原因。 1使用斷點(diǎn) 斷點(diǎn)是一行加有標(biāo)記的語句,程序執(zhí)行到該行時(shí)會暫停下來(斷點(diǎn)語句并未被執(zhí)行),這時(shí)可進(jìn)行各種調(diào)試工作。在程序調(diào)試過程中,不僅需要設(shè)置斷點(diǎn),而且需要變換斷點(diǎn)的位置,清除前面設(shè)置的斷點(diǎn)。斷點(diǎn)的設(shè)置既可以在設(shè)計(jì)時(shí)完成,也可以在中斷模式下切換。,調(diào)試與排錯(cuò),(1)設(shè)置斷點(diǎn) 在代碼窗口中將光標(biāo)移動(dòng)到欲設(shè)置斷點(diǎn)的語句行,按F9鍵或單擊語句行首的灰色標(biāo)記區(qū),也可以通過執(zhí)行【調(diào)試】【切換斷點(diǎn)】

5、命令完成斷點(diǎn)的設(shè)置。 (2)取消斷點(diǎn) 單擊語句行首的灰色標(biāo)記區(qū)中的斷點(diǎn)標(biāo)記,也可以將光標(biāo)移動(dòng)到斷點(diǎn)所在的行后,執(zhí)行“調(diào)試”菜單中的“切換斷點(diǎn)”命令或按F9鍵,就可以將該斷點(diǎn)清除掉。如果希望清除程序中設(shè)置的所有斷點(diǎn),可以按Ctrl+Shift+F9鍵或執(zhí)行“調(diào)試”“清除所有斷點(diǎn)”命令。,調(diào)試與排錯(cuò),2跟蹤執(zhí)行軌跡 當(dāng)已經(jīng)知道某行語句存在問題時(shí),使用斷點(diǎn)查找錯(cuò)誤是個(gè)有效的方法,但通常程序出錯(cuò)的具體位置并不容易確定,只能夠猜測到在某個(gè)范圍內(nèi)可能存在問題,這需要在此范圍內(nèi)跟蹤程序的執(zhí)行結(jié)果,一條條地單步執(zhí)行語句,這種方式稱為“跟蹤”。 VB提供了4種跟蹤方式:逐語句、逐過程、跳出、和運(yùn)行到光標(biāo)處。 注

6、意:這4種方式都只能在中斷模式下使用。,調(diào)試與排錯(cuò),(1)逐語句 逐語句執(zhí)行又稱為單步執(zhí)行,一次執(zhí)行一條語句(不包括說明性語句和注釋行),每執(zhí)行完一條語句后就轉(zhuǎn)入中斷模式。 在逐語句調(diào)試下,用戶可以使用調(diào)試工具欄或F8鍵進(jìn)入“逐語句”跟蹤方式。繼續(xù)逐語句執(zhí)行。 (2)逐過程 在執(zhí)行一般代碼語句時(shí),“逐過程”與“逐語句”相似,只有在當(dāng)前的語句含有一個(gè)對過程的調(diào)用時(shí),兩者才會有差異。“逐語句”將進(jìn)入被調(diào)用的過程,并在該過程中執(zhí)行一個(gè)語句,與它不同的是,“逐過程”把被調(diào)用的過程視為一個(gè)基本單位來執(zhí)行,然后轉(zhuǎn)回到當(dāng)前過程的下一語句。要使代碼按這種方式執(zhí)行,單擊“調(diào)試”工具欄上的“逐過程”按鈕。 在現(xiàn)實(shí)

7、調(diào)試中,一般可以交替使用“逐語句”和“逐過程”。通過“逐過程”,可以跳過不想測試的過程代碼,縮短調(diào)試時(shí)間;而通過“逐語句”,則可以詳細(xì)測試可能出現(xiàn)錯(cuò)誤的代碼。 用戶可以使用調(diào)試工具欄或Shift+F8鍵進(jìn)入“逐過程”跟蹤方式。,調(diào)試與排錯(cuò),(3)跳出 跳出與前面兩種方式也很類似,它連續(xù)執(zhí)行當(dāng)前過程的剩余部分,并在調(diào)用過程的下一行中斷執(zhí)行。 (4)運(yùn)行到光標(biāo)處 如果比較肯定錯(cuò)誤可能發(fā)生在某行代碼中,這時(shí)就不需要單步調(diào)試執(zhí)行,跳過對無關(guān)代碼的跟蹤,從光標(biāo)處開始程序的分析。要采取“運(yùn)行到光標(biāo)處”調(diào)試方法。先將光標(biāo)置于該行代碼上,按Ctrl+F8鍵或執(zhí)行“調(diào)試”菜單中的“運(yùn)行到光標(biāo)處”命令,程序就會執(zhí)

8、行到光標(biāo)處后轉(zhuǎn)入中斷模式。,調(diào)試與排錯(cuò),3.使用調(diào)試窗口 VB提供了4個(gè)調(diào)試窗口:本地窗口、立即窗口、監(jiān)視窗口及調(diào)用堆棧窗口,用于在跟蹤過程中監(jiān)視變量、表達(dá)式的取值情況。 用戶可以在“視圖”菜單中相應(yīng)的命令打開它們。 (1)“本地”窗口 “本地”窗口的功能是在中斷模式下,顯示當(dāng)前過程的所有變量和活動(dòng)窗體的所有屬性,并能改變它們的值。 “本地”窗口可以顯示當(dāng)前過程中所有變量的值。但需要注意,“本地”窗口只能顯示本過程,一般都與“單步執(zhí)行”配合使用。,調(diào)試與排錯(cuò),(2)“立即”窗口 “立即”窗口的功能是幫助用戶檢查變量或?qū)傩缘闹担瑫r(shí)也可以通過它重新設(shè)置變量或?qū)傩缘闹?。其?yōu)點(diǎn)是:不中斷程序執(zhí)行即可

9、看到結(jié)果,以及不影響原有窗體外觀。 在程序進(jìn)入中斷模式后,一般會自動(dòng)彈出“立即”窗口,如果界面上沒有顯示出“立即”窗口,可執(zhí)行“視圖”菜單中的“立即窗口”子菜單來打開它。 (3)“監(jiān)視”窗口 “監(jiān)視”窗口的功能是幫助用戶自動(dòng)對監(jiān)視表達(dá)式所定義的表達(dá)式進(jìn)行監(jiān)視,當(dāng)應(yīng)用程序進(jìn)入中斷模式后,這些監(jiān)視表達(dá)式會出現(xiàn)在“監(jiān)視”窗口中,可在此處觀察它們的值。,調(diào)試與排錯(cuò),(4)“調(diào)用堆棧”窗口的使用。 通過這個(gè)窗口可以顯示正在執(zhí)行的過程、程序和方法程序。第1個(gè)程序運(yùn)行時(shí),該程序名列在“調(diào)用堆棧”窗口中,如果調(diào)用了第1個(gè)程序中的子程序或子過程,同時(shí)又在執(zhí)行第2個(gè)程序,則兩個(gè)程序的名字均顯示在“調(diào)用堆棧”窗口中。,軟件測試,軟件測試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程。測試時(shí)要根據(jù)軟件開發(fā)各個(gè)階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計(jì)的一批有代表性的測試用例,并利用這些測試用例運(yùn)行程序,以發(fā)現(xiàn)錯(cuò)誤的過程。 軟件測試分單元測試、集成測試、驗(yàn)收測試幾個(gè)階段: 1)單元測試在編碼完成之后由編程人員自己完成; 2)集成測試和驗(yàn)收測試由專門的測試

溫馨提示

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

評論

0/150

提交評論