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

下載本文檔

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

文檔簡(jiǎn)介

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

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

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

4、錯(cuò)誤地點(diǎn)和原因。,調(diào)試與排錯(cuò),二、調(diào)試方法 Visual Basic 6.0提供了強(qiáng)大的調(diào)試工具,可以在“調(diào)試”菜單中找到,也可以在“調(diào)試”工具欄中找到。通過(guò)它們可以便捷有效地檢測(cè)出程序中邏輯錯(cuò)誤地點(diǎn)和原因。 1使用斷點(diǎn) 斷點(diǎn)是一行加有標(biāo)記的語(yǔ)句,程序執(zhí)行到該行時(shí)會(huì)暫停下來(lái)(斷點(diǎn)語(yǔ)句并未被執(zhí)行),這時(shí)可進(jìn)行各種調(diào)試工作。在程序調(diào)試過(guò)程中,不僅需要設(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)的語(yǔ)句行,按F9鍵或單擊語(yǔ)句行首的灰色標(biāo)記區(qū),也可以通過(guò)執(zhí)行【調(diào)試】【切換斷點(diǎn)】

5、命令完成斷點(diǎn)的設(shè)置。 (2)取消斷點(diǎn) 單擊語(yǔ)句行首的灰色標(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)知道某行語(yǔ)句存在問(wèn)題時(shí),使用斷點(diǎn)查找錯(cuò)誤是個(gè)有效的方法,但通常程序出錯(cuò)的具體位置并不容易確定,只能夠猜測(cè)到在某個(gè)范圍內(nèi)可能存在問(wèn)題,這需要在此范圍內(nèi)跟蹤程序的執(zhí)行結(jié)果,一條條地單步執(zhí)行語(yǔ)句,這種方式稱為“跟蹤”。 VB提供了4種跟蹤方式:逐語(yǔ)句、逐過(guò)程、跳出、和運(yùn)行到光標(biāo)處。 注

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

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

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

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

溫馨提示

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

評(píng)論

0/150

提交評(píng)論