第6章-軟件測試(下)課件_第1頁
第6章-軟件測試(下)課件_第2頁
第6章-軟件測試(下)課件_第3頁
第6章-軟件測試(下)課件_第4頁
第6章-軟件測試(下)課件_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第6章軟件測試(下)

軟件測試策略調(diào)試軟件測試報(bào)告第6章軟件測試(下)軟件測試策略軟件測試策略

軟件測試階段完成的主要任務(wù)有兩類:一類是局部模塊的測試,它是整個(gè)測試階段的基石。另一類是軟件系統(tǒng)全局結(jié)構(gòu)的測試,它構(gòu)成整個(gè)測試系統(tǒng)的大廈。從局部到全局,是經(jīng)過一系列測試過程轉(zhuǎn)換而成,它們包括單元測試、集成測試、確認(rèn)測試和系統(tǒng)測試,每個(gè)測試過程都有各自不同的測試策略。軟件測試策略軟件測試階段完成的主要任務(wù)有兩類:測試步驟及策略所有測試過程都應(yīng)采用綜合測試策略;即先作靜態(tài)分析,再作動態(tài)測試,并事先制訂測試計(jì)劃。單元測試單元測試單元測試被測模塊被測模塊集成測試設(shè)計(jì)信息已測試的模塊確認(rèn)測試已集成的模塊軟件需求系統(tǒng)測試已確認(rèn)的軟件可交付的軟件系統(tǒng)其他元素軟件測試策略測試步驟及策略單元單元單元被測模塊被測模塊集成設(shè)計(jì)信息已測試軟件測試策略單元是軟件測試過程中最小的測試單位,它有兩個(gè)基本屬性:單元是可以獨(dú)立編譯的最小組件;單元是由個(gè)人開發(fā)的軟件組件。單元測試及其測試策略被測單元測試用例樁模塊1樁模塊2樁模塊N……測試用例驅(qū)動模塊軟件測試策略單元是軟件測試過程中最小的測試單位,它有兩個(gè)基本單元測試內(nèi)容模塊模塊接口測試局部數(shù)據(jù)結(jié)構(gòu)測試重要路徑測試錯(cuò)誤處理測試邊界條件測試I/O參數(shù)值的個(gè)數(shù)、類型、次序、格式是否正確,I/O文件屬性、操作是否正確等。數(shù)據(jù)說明是否正確、一致,變量及其初值定義是否正確等。檢查“錯(cuò)誤處理程序”本身的錯(cuò)誤。邊界條件常包括循環(huán)邊界,最大最小值、控制流中等于、大于、小于的比較值等。重要路徑通常是指完成模塊功能的主要路徑,一般是控制結(jié)構(gòu)。軟件測試策略單元測試內(nèi)容模塊模塊接口測試局部數(shù)據(jù)結(jié)構(gòu)測試重要路徑測試錯(cuò)誤軟件測試策略

集成測試是指在完成單元測試后,將各單元模塊依據(jù)設(shè)計(jì)的軟件系統(tǒng)結(jié)構(gòu),按照一定的集成測試策略進(jìn)行組裝的過程。

集成測試在組裝各模塊時(shí),應(yīng)該注意下列因素:各模塊間的數(shù)據(jù)傳遞是否會丟失;各模塊間的數(shù)據(jù)傳遞是否按照期望進(jìn)行傳遞;各模塊組裝后,是否能實(shí)現(xiàn)所期望的更復(fù)雜的功能;各模塊組裝后,是否出現(xiàn)對全局?jǐn)?shù)據(jù)結(jié)構(gòu)、公共數(shù)據(jù)操作的混亂,資源的競爭;各模塊組裝后,集成的誤差是否會被快速放大,直到難以接受為止。集成測試軟件測試策略集成測試是指在完成單元測試后,將軟件測試策略集成測試策略

集成測試的重點(diǎn),是將各模塊按照軟件系統(tǒng)結(jié)構(gòu)的定義,將軟件模塊組裝在一起。如何實(shí)施組裝過程,使得系統(tǒng)既能快速集成,又能準(zhǔn)確發(fā)現(xiàn)在組裝過程中出現(xiàn)的錯(cuò)誤和問題呢?這需要正確的集成測試方法。⑴非漸增式集成非漸增式集成是一次集成過程,即先按照各模塊在系統(tǒng)結(jié)構(gòu)中的位置,設(shè)計(jì)驅(qū)動模塊或樁模塊進(jìn)行輔助測試。然后將測試合格的各模塊按照系統(tǒng)結(jié)構(gòu)一次性完成系統(tǒng)集成的過程。⑵漸增式集成漸增式集成不同于非漸增式集成,它不是將模塊一次性組裝,而是按照系統(tǒng)結(jié)構(gòu)逐漸將模塊依次集成到系統(tǒng)中。從集成的過程來看,漸增式集成過程分為自底向上的集成和自頂向下的集成。軟件測試策略集成測試策略集成測試的重點(diǎn),是將

漸增式組裝策略是先進(jìn)行模塊測試,然后將這些模塊逐步組裝成較大的系統(tǒng),每連接一個(gè)模塊進(jìn)行一次測試。兩種方案:

設(shè)計(jì)驅(qū)動模塊或樁模塊,對每一個(gè)新組裝的子系統(tǒng)進(jìn)行測試,對發(fā)現(xiàn)問題較多的子系統(tǒng)或模塊應(yīng)該用白盒法作回歸測試。自頂而下增值自底而上增值軟件測試策略漸增式組裝策略是先進(jìn)行模塊測試,然后將這些模塊逐M1M4M3M2M6M5自頂向下增值S5M1S1S1S1S2S2S2S3S3S3第一步,測試主控模塊M1,設(shè)計(jì)樁模塊S1、S2、S3,模擬被M1調(diào)用的M2、M3、M4。M2M3M4第二步,依次用M2、M3、M4替代樁模塊S1、S2、S3,每替代一次進(jìn)行一次測試。S4S4S4S5S5第三步,對由主控模塊M1和模塊M2、M3、M4構(gòu)成的子系統(tǒng)進(jìn)行測試,設(shè)計(jì)樁模塊S4、S5。M5M6第四步,依次用模塊M5和M6替代樁模塊S4、S5,并同時(shí)進(jìn)行新的測試。組裝測試完畢。軟件測試策略M1M4M3M2M6M5自頂向下增值S5M1S1S1S1S2M3M6M5D1D2D3D1D1D2D2D3D3M2M4M1第四步,把已測試的子系統(tǒng)按程序結(jié)構(gòu)連接起來完成程序整體的組裝測試。D4D4D4D5D5D5M1M4M3M2M6M5第一步,對最底層的模塊M3、M5、M6進(jìn)行測試,設(shè)計(jì)驅(qū)動模塊D1、D2、D3來模擬調(diào)用。第三步,設(shè)計(jì)驅(qū)動模塊D4、D5和D6模擬調(diào)用,分別對新子系統(tǒng)進(jìn)行測試。第二步,用實(shí)際模塊M2、M1和M4替換驅(qū)動模塊D1、D2、D3。D6軟件測試策略自底向上增值M3M6M5D1D2D3D1D1D2D2D3D3M2M4M1

無論是自頂而下增值還是自底而上增值,還可選擇深度優(yōu)先或者寬度優(yōu)先增值。

舉例:按自頂而下增值法,寫出下圖中分別按照深度優(yōu)先或者寬度優(yōu)先增值的模塊組裝次序。ABCDHGJEFIKLMN軟件測試策略 無論是自頂而下增值還是自底而上增值,還可選擇深度優(yōu)

自頂而下增值優(yōu)點(diǎn):能夠盡早發(fā)現(xiàn)系統(tǒng)主控方面的問題。缺點(diǎn):無法驗(yàn)證樁模塊是否完全模擬了下屬模塊的功能。自底而上增值優(yōu)點(diǎn):驅(qū)動模塊較易編寫,且能夠盡早查出底層涉及較復(fù)雜的算法和實(shí)際的I/O模塊中的錯(cuò)誤。缺點(diǎn):最后才能發(fā)現(xiàn)系統(tǒng)主控方面的問題。集成過程的原則①盡早測試關(guān)鍵模塊。②盡早測試包含I/O的模塊。軟件測試策略自頂而下增值集成過程的原則軟件測試策略軟件測試策略確認(rèn)測試

確認(rèn)測試也稱為驗(yàn)收測試,它是指在模擬用戶實(shí)際操作的環(huán)境下(或開發(fā)環(huán)境下),運(yùn)用黑盒測試法驗(yàn)證軟件的有效性是否符合需求。確認(rèn)測試完成后,可能產(chǎn)生兩種情形:⑴軟件系統(tǒng)功能、性能、領(lǐng)域等要素滿足用戶需求規(guī)格說明,軟件是有效的。⑵軟件系統(tǒng)功能、性能、領(lǐng)域等要素存在不滿足用戶需求規(guī)格說明的某些方面,確認(rèn)測試文檔中給出了存在的錯(cuò)誤或問題。軟件測試策略確認(rèn)測試確認(rèn)測試也稱為驗(yàn)收測試,軟件測試策略系統(tǒng)測試

系統(tǒng)測試是指軟件系統(tǒng)作為整個(gè)計(jì)算機(jī)系統(tǒng)的一部分,與計(jì)算機(jī)系統(tǒng)的硬件系統(tǒng)、數(shù)據(jù)、外部其它軟件、文檔等要素相結(jié)合,在用戶實(shí)際運(yùn)行環(huán)境中進(jìn)行的確認(rèn)測試。

功能測試性能測試

壓力測試容量測試安全測試文檔測試

恢復(fù)性測試備份測試系統(tǒng)測試的內(nèi)容:軟件測試策略系統(tǒng)測試系統(tǒng)測試是指軟件系統(tǒng)作為軟件測試策略系統(tǒng)測試——壓力測試

壓力測試也成為強(qiáng)度測試,是指系統(tǒng)在各種資源超負(fù)荷得情況下對運(yùn)行狀況進(jìn)行測試。壓力測試的基本思路:計(jì)算機(jī)系統(tǒng)資源匱乏的條件下運(yùn)行的測試,是測試系統(tǒng)在使用峰值時(shí)的性能。壓力測試的主要對象包括:內(nèi)存、外部存儲、網(wǎng)絡(luò)負(fù)載、中斷處理、緩沖區(qū)、事務(wù)隊(duì)列、在線用戶量等。軟件測試策略系統(tǒng)測試——壓力測試壓力測試也成軟件測試策略系統(tǒng)測試——壓力測試次數(shù)條件實(shí)際機(jī)器數(shù)瀏覽器LoadRunner模擬的獨(dú)立IP數(shù)瀏覽器1延遲5分鐘6臺4臺IE模擬50個(gè)獨(dú)立IP模擬40個(gè)獨(dú)立IPIE2延遲5分鐘6臺4臺IE模擬50個(gè)獨(dú)立IP模擬40個(gè)獨(dú)立IPFireFox3延遲5分鐘6臺4臺FireFox模擬50個(gè)獨(dú)立IP模擬40個(gè)獨(dú)立IPIE4延遲5分鐘6臺4臺FireFox模擬50個(gè)獨(dú)立IP模擬40個(gè)獨(dú)立IPFireFox

對一個(gè)最大并發(fā)量在100臺的票務(wù)系統(tǒng)進(jìn)行壓力測試。軟件測試策略系統(tǒng)測試——壓力測試次數(shù)條件實(shí)際機(jī)器數(shù)瀏覽器Lo軟件測試策略系統(tǒng)測試——容量測試

容量測試是面向數(shù)據(jù)的測試,是指在系統(tǒng)運(yùn)行時(shí)超額處理大數(shù)據(jù)量時(shí)的能力。

在線系統(tǒng):測試在某時(shí)臨時(shí)緩沖區(qū)是否快溢出或填滿,執(zhí)行時(shí)間是否停機(jī)。要混合使用創(chuàng)建、更新、讀和刪除不同的操作。數(shù)據(jù)庫系統(tǒng):每個(gè)作業(yè)是在大量的業(yè)務(wù)數(shù)據(jù)下運(yùn)行的,比如數(shù)據(jù)庫中所有對象都需要處理的業(yè)務(wù),復(fù)雜的表檢索。文件交換:尤其長文件,長度長于通訊協(xié)議里典型最大值(1,2,4,8,...兆-或千兆字節(jié))。比如郵件協(xié)議不支持的長度。大長度通常是為了在通信中超時(shí)設(shè)定。磁盤空間:試著去填充磁盤中任何有磁盤空間的地方。檢查如果是已經(jīng)不再有空余空間,甚至還有更多數(shù)據(jù)要填入這個(gè)系統(tǒng)的情況下,會發(fā)生什么情況。有沒有像溢出緩沖區(qū)這樣的存儲區(qū)?是否會有任何警告信號,是否有數(shù)據(jù)丟失?文件系統(tǒng):文件系統(tǒng)的文件的最大數(shù)目或者最大長度。軟件測試策略系統(tǒng)測試——容量測試容量測試是面軟件測試策略系統(tǒng)測試——安全測試

安全測試用于驗(yàn)證系統(tǒng)安全保護(hù)機(jī)制是否能在實(shí)際運(yùn)行中,保護(hù)系統(tǒng)不受非法侵入。安全測試主要內(nèi)容有:外部的非法侵入、內(nèi)部操作的超越權(quán)限、出錯(cuò)時(shí)系統(tǒng)的反應(yīng)速度、安全性性能的花費(fèi)時(shí)間等。

軟件測試策略系統(tǒng)測試——安全測試安全測試用于簡單的例子:假設(shè)有txtName和txtPassword接受頁面輸入用戶名和密碼,然后構(gòu)造如下sql語句:

select*from[User]whereuserName='"+txtName+"’and

userPassword='"+txtPassword+"'";

這時(shí),如果輸入的用戶名為your,但不知道密碼,于是在"用戶名"處輸入:

your'--"select*from[User]whereuserName='your'--'

and

userPassword=....注意:"--",會把后邊的sql作為注釋,這就是sql注入。軟件測試策略系統(tǒng)測試——安全測試簡單的例子:軟件測試策略系統(tǒng)測試——安全測試軟件測試策略系統(tǒng)測試——恢復(fù)性測試

恢復(fù)性測試是對系統(tǒng)出現(xiàn)異常時(shí),系統(tǒng)能從錯(cuò)誤中正確恢復(fù)的能力測試。借助于系統(tǒng)運(yùn)行日志,恢復(fù)性測試可以通過系統(tǒng)自動恢復(fù)或人工恢復(fù)兩種形式?;謴?fù)內(nèi)容也主要包括兩種形式:一種是恢復(fù)系統(tǒng)在出現(xiàn)異常之前的所有活動,即系統(tǒng)功能從開始運(yùn)行到出現(xiàn)異常之前的所有操作重新執(zhí)行一次。另一種是恢復(fù)系統(tǒng)正在處理的數(shù)據(jù),這類恢復(fù)需要和系統(tǒng)的備份相關(guān)。軟件測試策略系統(tǒng)測試——恢復(fù)性測試恢復(fù)性測試是對系統(tǒng)硬件及有關(guān)設(shè)備故障。測試對于硬件及設(shè)備故障是否有有效的保護(hù)及恢復(fù)能力,系統(tǒng)是否具有診斷、故障報(bào)告及指示處理方法的能力。例如,設(shè)備掉電后(如客戶端和服務(wù)器端斷電)的可恢復(fù)程度。軟件系統(tǒng)故障。測試系統(tǒng)的程序及數(shù)據(jù)是否有足夠可靠的備份措施,在系統(tǒng)遭破壞后是否具有重新恢復(fù)正常工作的能力,對系統(tǒng)故障是否自動檢測和診斷的功能。在異常情況時(shí)是否記錄故障前后的狀態(tài),搜集有用信息供測試分析。數(shù)據(jù)故障。測試數(shù)據(jù)處理周期未完成時(shí)的恢復(fù)程度,例如數(shù)據(jù)交換或同步進(jìn)程被中斷,異常終止或提前終止的數(shù)據(jù)庫進(jìn)程,最后還有操作異常等情況。通信故障和錯(cuò)誤。測試有沒有糾正通信傳輸錯(cuò)誤的措施,有沒有恢復(fù)到與其他系統(tǒng)通信發(fā)生故障前原狀的措施,還有對通信故障所采取的措施是否滿足運(yùn)行要求等。軟件測試策略系統(tǒng)測試——恢復(fù)性測試硬件及有關(guān)設(shè)備故障。測試對于硬件及設(shè)備故障是否有有效的保護(hù)及軟件測試策略α測試和β測試α測試是在開發(fā)環(huán)境下,由用戶和軟件開發(fā)人員、測試人員共同對系統(tǒng)進(jìn)行的測試。測試的目的是盡可能模擬用戶使用環(huán)境,同時(shí)反映系統(tǒng)功能、性能的運(yùn)行能力。β測試是在系統(tǒng)實(shí)際用戶使用環(huán)境下進(jìn)行的測試,并且整個(gè)測試過程都是用戶獨(dú)立進(jìn)行,不受開發(fā)人員和測試人員的影響。β測試是涉及面最廣、測試用戶最多、最能真實(shí)反映用戶使用的測試,但其測試時(shí)間長、花費(fèi)較大、測試過程難以控制。軟件測試策略α測試和β測試α測試是在開發(fā)環(huán)境調(diào)試軟件測試的目的是發(fā)現(xiàn)錯(cuò)誤,測試完成之后的軟件調(diào)試目的是為了定位和修改錯(cuò)誤,以保證軟件運(yùn)行的正確性和可靠性。軟件調(diào)試活動主要分為以下三部分內(nèi)容:⑴確定軟件系統(tǒng)出現(xiàn)錯(cuò)誤的準(zhǔn)確位置,這需要一個(gè)過程,特別需要的是調(diào)試人員的經(jīng)驗(yàn)和技巧。⑵對發(fā)現(xiàn)錯(cuò)誤的修改。修改錯(cuò)誤也需要經(jīng)驗(yàn),如分析修改的程序是否涉及全局?jǐn)?shù)據(jù)、是否涉及面向?qū)ο髾C(jī)制(如

溫馨提示

  • 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

提交評論