《軟件測試》課件:第10課 集成測試技術(shù)_第1頁
《軟件測試》課件:第10課 集成測試技術(shù)_第2頁
《軟件測試》課件:第10課 集成測試技術(shù)_第3頁
《軟件測試》課件:第10課 集成測試技術(shù)_第4頁
《軟件測試》課件:第10課 集成測試技術(shù)_第5頁
已閱讀5頁,還剩36頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

陳大衛(wèi)Wednesday,January11,2023軟件集成測試一、集成測試及其目的二、集成測試設(shè)計及準(zhǔn)備工作三、集成測試策略的選擇四、集成測試相關(guān)質(zhì)量特性五、集成測試的實施六、面向?qū)ο蟮募蓽y試集成測試:是一個應(yīng)用系統(tǒng)的各個部件的聯(lián)合測試,用以決定他們能否在一起共同工作,部件可以是代碼塊、對象、獨立應(yīng)用、網(wǎng)絡(luò)上的客戶端或服務(wù)器端程序。一、集成測試及其目的目的:保證每一個功能模塊的功能正確和性能良好,以至于這些模塊組裝在一起時他們可以很好地協(xié)調(diào)工作,保證整個系統(tǒng)功能和性能的良好。一、集成測試及其目的集成測試的入口準(zhǔn)則與輸入:前一階段測試完成,測試報告被批準(zhǔn);測試計劃被批準(zhǔn)概要設(shè)計說明書被批準(zhǔn);需求和需求規(guī)格說明書一致。

《軟件概要設(shè)計說明書》二、集成測試設(shè)計及準(zhǔn)備工作二、集成測試設(shè)計及準(zhǔn)備工作2.通過概要設(shè)計,了解整個系統(tǒng)的組織結(jié)構(gòu)和開發(fā)順序,選擇適當(dāng)?shù)募刹呗裕⒏鶕?jù)接口描述和主要功能描述制定集成測試計劃、設(shè)計和用例。

二、集成測試設(shè)計及準(zhǔn)備工作3.人員安排:集成測試既要求參與人熟悉單元的內(nèi)部細(xì)節(jié),又要求他們能夠從足夠高的層次上觀察整個系統(tǒng),因此一般由主要的軟件開發(fā)者協(xié)助測試人員來完成集成測試的設(shè)計。

二、集成測試設(shè)計及準(zhǔn)備工作軟件集成測試分單元級別,功能配置級別,系統(tǒng)級別進(jìn)行集成,過程比較復(fù)雜。將集成測試設(shè)計轉(zhuǎn)變?yōu)楹喢饕锥募蓽y試用例。定義集成測試環(huán)境。建立測試通過和失敗的準(zhǔn)則。二、集成測試設(shè)計及準(zhǔn)備工作估計人力和其他資源。檢查接口規(guī)格,功能流程在測試用例中的分布。由測試小組和開發(fā)小組對測試設(shè)計和用例(即測試說明)進(jìn)行評審。二、集成測試設(shè)計及準(zhǔn)備工作4.設(shè)計準(zhǔn)備文檔:《集成測試計劃》《集成測試說明》三、集成測試策略的選擇非增量測試增量測試三、集成測試策略的選擇非增量測試局部大爆炸:在被組合成子系統(tǒng)之前,對每個軟件單元模塊進(jìn)行的測試,然后對整個系統(tǒng)進(jìn)行測試。這種大爆炸的測試方法適用于那種測試時間較短,結(jié)構(gòu)不很復(fù)雜的系統(tǒng)的集成測試。

三、集成測試策略的選擇增量測試自頂向下:從最具控制力的軟件單位(主模塊)開始,按控制層次減弱的順序向系統(tǒng)中增加模塊,直至實現(xiàn)整個系統(tǒng)。三、集成測試策略的選擇增量測試自底向上:從原子模塊開始進(jìn)行構(gòu)造和測試。一次向上提高一個級別,采用驅(qū)動程序(一個供測試用的控制程序)來驅(qū)動測試執(zhí)行。從控制力最弱的模塊(程序結(jié)構(gòu)的最底層模塊)開始,按控制層次增強(qiáng)的順序向系統(tǒng)中增加模塊,直至實現(xiàn)整個系統(tǒng)。

三、集成測試策略的選擇增量測試基于線程的測試:根據(jù)功能集成模塊。從一個功能開始,用樁來替換這個功能的相應(yīng)的模塊,直到這個功能的所有模塊被測試,然后再加入另外一種功能,繼續(xù)進(jìn)行直到系統(tǒng)被測試完畢。這種測試方法提供了更好的可見性并能跟蹤集成活動。

三、集成測試策略的選擇增量測試自頂向下集成適用于幾乎所有范圍或體系結(jié)構(gòu);自底向上集成在面向結(jié)構(gòu)的開發(fā)中非常有用,首先應(yīng)確?!暗蛯幽K組合能夠?qū)崿F(xiàn)軟件特定的子功能”,這種集成策略對小型到中型系統(tǒng)比較有效;基于線程的測試適用于那些功能流程較為清晰的系統(tǒng)。練習(xí):基于結(jié)構(gòu)化的設(shè)計

(A)(C)(B)上面三種結(jié)構(gòu)中,哪種設(shè)計較好?上述系統(tǒng)應(yīng)選擇何種策略如果測試對象像圖(A)那種比較理想的情況,采用自底向上或自頂向下、功能線(FunctionThread)和大爆炸(BigBang)的測試策略均可。如果出現(xiàn)像圖(B)和(C)那樣的情況,一般來說采用兩種方法來對付:采用大爆炸的測試策略,先測試所有的單個的集成測試粒度,然后組合起來進(jìn)行總的測試即可;增粗測試粒度:把其中個別比較混亂的那部分函數(shù)當(dāng)作一個整體來進(jìn)行測試,這樣可能比死摳單個函數(shù)測試效果要更好,遇到這種情況要靈活應(yīng)付。四、與集成測試相關(guān)的質(zhì)量特性集成測試階段能夠測試的質(zhì)量特性有:功能性、可靠性、效率、易維護(hù)性、可移植性可靠性(成熟性、容錯性、易恢復(fù)性)工具:BoundsCheck,檢查程序是否有資源、內(nèi)存泄漏等,還可以檢查測試的代碼覆蓋率。效率(時間特性、資源特性)工具:Developepartner,可以檢查每個函數(shù)的運(yùn)行效率。五、集成測試的實施集成測試環(huán)境的搭建樁或驅(qū)動的制造集成測試的測試點

集成測試的操作步驟

需要注意的問題

五、集成測試的實施集成測試環(huán)境的搭建搭建集成測試的運(yùn)行環(huán)境,包括操作系統(tǒng)、數(shù)據(jù)庫、開發(fā)軟件和所需的測試工具。設(shè)置系統(tǒng)運(yùn)行所需的參數(shù)、數(shù)據(jù)初始化工作。

五、集成測試的實施樁或驅(qū)動的制造在集成測試中,我們需要根據(jù)集成測試策略的選取決定是否在測試中制造樁或驅(qū)動,然后輸入測試數(shù)據(jù)進(jìn)行測試并查看測試結(jié)果。針對不同的代碼版本,驅(qū)動和樁一般不需要改變,但是測試用例可能需要完善。

五、集成測試的實施制造樁的目的模擬待測系統(tǒng)運(yùn)行的實際環(huán)境,為其提供可用來調(diào)用的模塊。如果為一個類制造樁,所要關(guān)心的是該類中定義使用的其他類的實例(對象)。即要搞清該類都使用了哪些外部的資源。然后我們以最簡單的方式來提供這些資源。五、集成測試的實施制造驅(qū)動的目的模擬待測系統(tǒng)運(yùn)行的實際環(huán)境,提供調(diào)用待測系統(tǒng)的模塊。如果為一個類制造驅(qū)動,所要關(guān)心的是該類提供了哪些供調(diào)用的公有函數(shù)。然后在驅(qū)動模塊中對這些函數(shù)進(jìn)行調(diào)用,觀察這些函數(shù)的工作情況。這時就需要對函數(shù)的調(diào)用參數(shù),調(diào)用方式等方面設(shè)計測試用例。

五、集成測試的實施集成測試的測試點

接口測試:測試模塊間的接口是否吻合。數(shù)據(jù)傳遞測試:各模塊連接時,穿越模塊接口的數(shù)據(jù)是否會丟失。例如調(diào)用函數(shù)獲得返回值、不同的模塊使用同一個數(shù)據(jù)。

五、集成測試的實施集成測試的測試點

誤差積累測試:由于原來可接受的誤差的積累可能導(dǎo)致結(jié)果不可以接受,所有在測試方案中要考慮那些模塊會產(chǎn)生誤差,誤差是否會積累,誤差以什么方式增長。全局?jǐn)?shù)據(jù)測試:考慮全局?jǐn)?shù)據(jù)的有效期,在有效期內(nèi)對其的操作是否合理,是否存在使用過期數(shù)據(jù)的情況。五、集成測試的實施集成測試的測試點

負(fù)作用測試:測試某一個模塊的功能是否會對另一個模塊的功能產(chǎn)生不利的影響。如搶占資源、破壞數(shù)據(jù)、安全漏洞、性能瓶頸等。

組裝功能測試:子功能組合是否能達(dá)到父功能的預(yù)期要求。

回歸測試:在問題修改后,要對所有相關(guān)模塊再進(jìn)行一輪測試,驗證本次修改沒有產(chǎn)生負(fù)作用。五、集成測試的實施集成測試的操作步驟

假定開發(fā)的軟件系統(tǒng)按自底向上集成的方式進(jìn)行測試。

a.將最底層的功能模塊進(jìn)行分組,原則是將那些與上層某個功能模塊相關(guān)聯(lián)的模塊分為一組。

b.對每一組分別進(jìn)行測試,各組測試可并行展開,這樣可以加快測試的進(jìn)程。c.沿軟件的結(jié)構(gòu),逐級向上集成,直到所有的單元都組合到一起,這樣就完成了集成測試的任務(wù)。

五、集成測試的實施集成測試的操作步驟

集成測試階段是以黑盒測試為主,在自底向上集成的早期,白盒法測試占一定的比例,隨著集成測試的不斷深入,這種比例在測試過程中將越來越少,漸漸地,黑盒測試占據(jù)主導(dǎo)地位。

五、集成測試的實施需要注意的問題

1.類內(nèi)部使用全局變量。2.類內(nèi)部使用全局函數(shù)。3.類內(nèi)部使用庫函數(shù)。4.使用宏定義。六、面向?qū)ο蟮募蓽y試對于面向?qū)ο蟪绦颍嗷フ{(diào)用的功能是散布在程序的不同類中,類通過消息相互作用申請和提供服務(wù)。類的行為與它的狀態(tài)密切相關(guān),狀態(tài)不僅僅是體現(xiàn)在類數(shù)據(jù)成員的值,也許還包括其他類中的狀態(tài)信息,類相互依賴極其緊密。

六、面向?qū)ο蟮募蓽y試面向?qū)ο蟮募蓽y試能夠檢測出相對獨立的單元測試無法檢測出的那些類相互作用時才會產(chǎn)生的錯誤?;趩卧獪y試對成員函數(shù)行為正確性的保證,集成測試只關(guān)注于系統(tǒng)的結(jié)構(gòu)和內(nèi)部的相互作用。面向?qū)ο蟮募蓽y試可以分成兩步進(jìn)行:先進(jìn)行靜態(tài)測試,再進(jìn)行動態(tài)測試。

六、面向?qū)ο蟮募蓽y試靜態(tài)測試:靜態(tài)測試主要針對程序的結(jié)構(gòu)進(jìn)行,檢測程序結(jié)構(gòu)是否符合設(shè)計要求。這種方法的主要特性是不利用計算機(jī)運(yùn)行被測試的程序,而是采用其他手段達(dá)到檢測的目的。

六、面向?qū)ο蟮募蓽y試動態(tài)測試:實際運(yùn)行被測程序,輸入相應(yīng)的測試用例,判定執(zhí)行結(jié)果是否符合要求,從而檢驗程序的正確性、可靠性和有效性。六、面向?qū)ο蟮募蓽y試具體設(shè)計測試用例,可參考下列步驟:1.先選定檢測的類,仔細(xì)找出類的狀態(tài)和相應(yīng)的行為,類或成員函數(shù)間傳遞的消息,輸入或輸出的界定等。2.確定覆蓋標(biāo)準(zhǔn)。六、面向?qū)ο蟮募蓽y試3.利用結(jié)構(gòu)關(guān)系圖確定待測類的所有關(guān)聯(lián)。4.根據(jù)程序中類的對象構(gòu)造測試用例,確認(rèn)使用什么輸入激發(fā)類的狀態(tài)、使用類的服務(wù)和期望產(chǎn)生什么行為等。六、面向?qū)ο蟮募蓽y試值得注意,設(shè)計測試用例時,不但要設(shè)計確認(rèn)類功能滿足的輸入,還應(yīng)該有意識的設(shè)計一些被禁止的例子,確認(rèn)類是否有不合法的行為產(chǎn)生,如發(fā)送與類狀態(tài)不相適應(yīng)的消息,要求不相適應(yīng)的服務(wù)等。根據(jù)具體情況,動態(tài)的集成測試,有時也可以通過系統(tǒng)測試完成。六、面向?qū)ο蟮募蓽y試值得注意,設(shè)計測試用例時,不但要設(shè)計確認(rèn)類功能滿足的輸入,還應(yīng)該有意識的設(shè)計一些

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論