第十一章 軟件實(shí)現(xiàn)、測(cè)試和維護(hù)_第1頁(yè)
第十一章 軟件實(shí)現(xiàn)、測(cè)試和維護(hù)_第2頁(yè)
第十一章 軟件實(shí)現(xiàn)、測(cè)試和維護(hù)_第3頁(yè)
第十一章 軟件實(shí)現(xiàn)、測(cè)試和維護(hù)_第4頁(yè)
第十一章 軟件實(shí)現(xiàn)、測(cè)試和維護(hù)_第5頁(yè)
已閱讀5頁(yè),還剩78頁(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)介

?2008

BUPTTSEG軟件工程

SoftwareEngineering第十一章軟件實(shí)現(xiàn)、測(cè)試和維護(hù)黃海 hhuang@軟件實(shí)現(xiàn)軟件測(cè)試基礎(chǔ)軟件測(cè)試方法與技術(shù)軟件測(cè)試過程面向?qū)ο蟮臏y(cè)試方法軟件維護(hù)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.1軟件實(shí)現(xiàn)

從宏觀上講,軟件實(shí)現(xiàn)包括詳細(xì)設(shè)計(jì)、程序編碼、單元測(cè)試和集成測(cè)試。

從微觀上來(lái)講,軟件實(shí)現(xiàn)指程序編碼和單元測(cè)試。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.1軟件實(shí)現(xiàn)1.軟件實(shí)現(xiàn)的目標(biāo)

軟件實(shí)現(xiàn)的目標(biāo)就是選擇某種程序設(shè)計(jì)語(yǔ)言,將詳細(xì)設(shè)計(jì)結(jié)果進(jìn)行編碼實(shí)現(xiàn),并形成可執(zhí)行的軟件系統(tǒng)的過程。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.1軟件實(shí)現(xiàn)2.軟件實(shí)現(xiàn)的任務(wù)程序設(shè)計(jì)語(yǔ)言的選擇。根據(jù)軟件系統(tǒng)的特點(diǎn)和設(shè)計(jì)方案,選擇一種或多種程序設(shè)計(jì)語(yǔ)言作為編碼實(shí)現(xiàn)的工具。集成開發(fā)環(huán)境的選擇。集成開發(fā)環(huán)境是來(lái)幫助程序設(shè)計(jì)者組織、編譯、調(diào)試程序的開發(fā)工具軟件。程序?qū)崿F(xiàn)算法的設(shè)計(jì)。針對(duì)要實(shí)現(xiàn)特定功能的程序模塊,設(shè)計(jì)其實(shí)現(xiàn)所需的數(shù)據(jù)結(jié)構(gòu)和算法。程序編碼實(shí)現(xiàn)。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心軟件實(shí)現(xiàn)軟件測(cè)試基礎(chǔ)軟件測(cè)試方法與技術(shù)軟件測(cè)試過程面向?qū)ο蟮臏y(cè)試方法軟件維護(hù)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.2軟件測(cè)試基礎(chǔ)1.軟件測(cè)試概述

(1)軟件測(cè)試的定義(早期和狹義的定義)軟件測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行“程序”的過程。或者說(shuō),軟件測(cè)試是根據(jù)軟件開發(fā)各階段的規(guī)格說(shuō)明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計(jì)一批測(cè)試用例(即輸入數(shù)據(jù)及其預(yù)期的輸出結(jié)果),并利用這些測(cè)試用例去運(yùn)行程序,以發(fā)現(xiàn)程序錯(cuò)誤的過程。軟件測(cè)試在軟件生存期中橫跨兩個(gè)階段單元測(cè)試(編碼者)各種綜合測(cè)試(專門的測(cè)試人員)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.2軟件測(cè)試基礎(chǔ)(2)軟件測(cè)試的目的測(cè)試是執(zhí)行程序的過程,目的在于發(fā)現(xiàn)錯(cuò)誤。一個(gè)好的測(cè)試用例在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤。一個(gè)成功的測(cè)試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。設(shè)計(jì)測(cè)試的目標(biāo)是想以最少的時(shí)間和人力系統(tǒng)地找出軟件中潛在的各種錯(cuò)誤和缺陷。測(cè)試不能表明軟件中不存在錯(cuò)誤,它只能說(shuō)明軟件中存在錯(cuò)誤。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.2軟件測(cè)試基礎(chǔ)(3)軟件測(cè)試的原則應(yīng)當(dāng)盡早地和不斷地進(jìn)行軟件測(cè)試。測(cè)試用例應(yīng)由測(cè)試輸入數(shù)據(jù)和與之對(duì)應(yīng)的預(yù)期輸出結(jié)果這兩部分組成。程序員應(yīng)避免測(cè)試自己的程序。在設(shè)計(jì)測(cè)試用例時(shí),應(yīng)當(dāng)包括合理的輸入條件和不合理的輸入條件。充分注意測(cè)試中的群集現(xiàn)象。嚴(yán)格執(zhí)行測(cè)試計(jì)劃,排除測(cè)試的隨意性。應(yīng)當(dāng)對(duì)每一個(gè)測(cè)試結(jié)果做全面檢查。妥善保存測(cè)試計(jì)劃,測(cè)試用例,出錯(cuò)統(tǒng)計(jì)和最終分析報(bào)告,為維護(hù)提供方便。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.2軟件測(cè)試基礎(chǔ)2.軟件的可測(cè)試性軟件的可測(cè)試性就是一個(gè)計(jì)算機(jī)程序能夠被測(cè)試的容易程度。在軟件開發(fā)過程中,很多環(huán)節(jié)都能夠影響軟件的可測(cè)試性,例如需求分析的描述、設(shè)計(jì)架構(gòu)、實(shí)現(xiàn)手段等如果設(shè)計(jì)人員和程序員樂于完成一些對(duì)測(cè)試過程有幫助的工作,則可以極大提高軟件的可測(cè)試性?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.2軟件測(cè)試基礎(chǔ)

?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心影響軟件可測(cè)試性因素描述表現(xiàn)可用性運(yùn)行的越好,被測(cè)試的效率越高系統(tǒng)的錯(cuò)誤很少?zèng)]有阻礙測(cè)試執(zhí)行的錯(cuò)誤產(chǎn)品在功能階段的演化(允許同時(shí)開發(fā)和測(cè)試)可觀察性所看見的就是所測(cè)試的每個(gè)測(cè)試有唯一的輸出

系統(tǒng)狀態(tài)和變量可見,或在運(yùn)行中可查詢過去的系統(tǒng)狀態(tài)和變量可見,或在運(yùn)行中可查詢(事物日志)所有影響輸出的因素都可見容易識(shí)別錯(cuò)誤輸出通過自測(cè)機(jī)制自動(dòng)偵測(cè)內(nèi)部錯(cuò)誤自動(dòng)報(bào)告內(nèi)部錯(cuò)誤可獲取源代碼可控制性對(duì)軟件的控制越好,測(cè)試越能被自動(dòng)執(zhí)行與優(yōu)化所有可能的輸出都產(chǎn)生于某種輸入組合通過某種輸入組合,所有的代碼都可能被執(zhí)行測(cè)試工程師可直接控制軟件和硬件的狀態(tài)及變量輸入和輸出格式保持一致且有結(jié)構(gòu)能夠便利地對(duì)測(cè)試進(jìn)行說(shuō)明、自動(dòng)化和再生可分解性通過控制測(cè)試范圍,能夠更快地分解問題,執(zhí)行更靈巧的再測(cè)試軟件系統(tǒng)由獨(dú)立模塊構(gòu)成能夠獨(dú)立測(cè)試各軟件模塊簡(jiǎn)單性需要測(cè)試的內(nèi)容越少,測(cè)試的速度越快功能簡(jiǎn)單性結(jié)構(gòu)簡(jiǎn)單性代碼簡(jiǎn)單性穩(wěn)定性改變?cè)叫。瑢?duì)測(cè)試的破壞越小軟件的變化是不經(jīng)常的軟件的變化是可控制的軟件的變化不影響已有的測(cè)試軟件失效后能得到良好的恢復(fù)易理解性得到的信息越多,進(jìn)行的測(cè)試越靈巧設(shè)計(jì)能夠被很好地理解內(nèi)部、外部和共享構(gòu)建之間的依賴性能夠被很好地理解設(shè)計(jì)的改變被通知可隨時(shí)獲取技術(shù)文檔技術(shù)文檔組織合理技術(shù)文檔明確詳細(xì)技術(shù)文檔精確性穩(wěn)定§11.2軟件測(cè)試基礎(chǔ)3.軟件測(cè)試的對(duì)象(現(xiàn)代和廣義的測(cè)試定義)軟件測(cè)試并不等于程序測(cè)試,現(xiàn)代軟件測(cè)試指為發(fā)現(xiàn)軟件中存在的錯(cuò)誤,對(duì)軟件開發(fā)過程中形成的各項(xiàng)輸出進(jìn)行檢查的過程。測(cè)試應(yīng)該貫穿于軟件開發(fā)的整個(gè)期間,需求分析規(guī)格說(shuō)明、概要設(shè)計(jì)說(shuō)明、詳細(xì)設(shè)計(jì)說(shuō)明、單元代碼、集成的系統(tǒng)以及其他輸出文檔,都應(yīng)該成為測(cè)試的對(duì)象。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.2軟件測(cè)試基礎(chǔ)廣義的軟件測(cè)試包含三類具體活動(dòng):測(cè)試:設(shè)計(jì)測(cè)試用例,運(yùn)行程序,執(zhí)行具體系統(tǒng)測(cè)試的過程。確認(rèn):評(píng)估待開發(fā)的軟件產(chǎn)品是否正確無(wú)誤、可行和有價(jià)值,并確保待開發(fā)的軟件是正確的,與用戶期望是完全符合的,是對(duì)軟件開發(fā)構(gòu)想的檢測(cè),能夠回答“是否構(gòu)造了正確的軟件”的問題。驗(yàn)證:檢測(cè)軟件開發(fā)的每個(gè)階段、每個(gè)步驟結(jié)果是否正確無(wú)誤,是否與軟件開發(fā)各階段的要求和期望的結(jié)果相一致,并確保軟件會(huì)正確無(wú)誤地實(shí)現(xiàn)軟件的需求,開發(fā)過程是沿正確的方向進(jìn)行的,能夠回答“是否正確地構(gòu)造了軟件”的問題。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.2軟件測(cè)試基礎(chǔ)

?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心用戶要求用戶:我要什么?運(yùn)行結(jié)果計(jì)算機(jī):程序運(yùn)行得到的結(jié)果源程序程序員:我要讓計(jì)算機(jī)什么做?設(shè)計(jì)說(shuō)明書設(shè)計(jì)員:我要讓軟件做什么?需求說(shuō)明書分析員:我可以提供什么?12345理解正確性表達(dá)正確性理解正確性設(shè)計(jì)正確性表達(dá)正確性理解正確性編碼正確性運(yùn)行正確性輸入正確性相符嗎?軟件生存期各個(gè)階段之間需要保持的正確性§11.2軟件測(cè)試基礎(chǔ)4.軟件測(cè)試信息流測(cè)試過程需要三類輸入:軟件配置:包括軟件需求規(guī)格說(shuō)明、軟件設(shè)計(jì)規(guī)格說(shuō)明、源代碼等。測(cè)試配置:包括測(cè)試計(jì)劃、測(cè)試用例、測(cè)試驅(qū)動(dòng)程序等。測(cè)試工具:測(cè)試工具為測(cè)試的實(shí)施提供某種服務(wù)。例如,測(cè)試數(shù)據(jù)自動(dòng)生成程序、靜態(tài)分析程序、動(dòng)態(tài)分析程序、測(cè)試結(jié)果分析程序、以及驅(qū)動(dòng)測(cè)試的工作臺(tái)等。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.2軟件測(cè)試基礎(chǔ)

?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心測(cè)試信息流§11.2軟件測(cè)試基礎(chǔ)5.軟件測(cè)試步驟單元測(cè)試集中對(duì)用源代碼實(shí)現(xiàn)的每一個(gè)程序單元進(jìn)行測(cè)試。集成測(cè)試根據(jù)設(shè)計(jì)規(guī)定的軟件體系結(jié)構(gòu),把已測(cè)試過的模塊組裝起來(lái),在組裝過程中,檢查程序結(jié)構(gòu)組裝的正確性。確認(rèn)測(cè)試檢查已實(shí)現(xiàn)的軟件是否滿足了需求規(guī)格說(shuō)明中確定了的各種需求,以及軟件配置是否完全、正確。系統(tǒng)測(cè)試把已經(jīng)經(jīng)過確認(rèn)的軟件納入實(shí)際運(yùn)行環(huán)境中,與其它系統(tǒng)成份組合在一起進(jìn)行測(cè)試。驗(yàn)收測(cè)試系統(tǒng)測(cè)試后可以正式投入試運(yùn)行,一段時(shí)間后系統(tǒng)各方面均已滿足需求,這時(shí)需對(duì)系統(tǒng)進(jìn)行驗(yàn)收測(cè)試。驗(yàn)收測(cè)試是一個(gè)形式意義上的工作,選擇用戶最為關(guān)心的核心功能確認(rèn)即可。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.2軟件測(cè)試基礎(chǔ)

?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心軟件測(cè)試的步驟驗(yàn)收測(cè)試驗(yàn)收標(biāo)準(zhǔn)已驗(yàn)收的軟件§11.2軟件測(cè)試基礎(chǔ)6.軟件測(cè)試流程組建測(cè)試團(tuán)隊(duì)制定測(cè)試計(jì)劃設(shè)計(jì)測(cè)試用例搭建測(cè)試環(huán)境執(zhí)行測(cè)試及結(jié)果記錄錯(cuò)誤修改回歸測(cè)試測(cè)試總結(jié)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.2軟件測(cè)試基礎(chǔ)7.軟件測(cè)試與軟件開發(fā)各階段的關(guān)系

軟件開發(fā)過程是一個(gè)自頂向下,逐步細(xì)化的過程,而測(cè)試過程則是依相反的順序安排的自底向上,逐步集成的過程。低一級(jí)測(cè)試為上一級(jí)測(cè)試準(zhǔn)備條件。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心軟件實(shí)現(xiàn)軟件測(cè)試基礎(chǔ)軟件測(cè)試方法與技術(shù)軟件測(cè)試過程面向?qū)ο蟮臏y(cè)試方法軟件維護(hù)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)1.測(cè)試技術(shù)分類按照開發(fā)階段:?jiǎn)卧獪y(cè)試、集成測(cè)試、確認(rèn)測(cè)試、系統(tǒng)測(cè)試、驗(yàn)收測(cè)試按照測(cè)試對(duì)象:需求測(cè)試、設(shè)計(jì)測(cè)試、代碼測(cè)試、文檔測(cè)試按照測(cè)試實(shí)施組織方式:開發(fā)方測(cè)試、用戶測(cè)試、第三方測(cè)試按照測(cè)試用例設(shè)計(jì)技術(shù):白盒測(cè)試、黑盒測(cè)試按照測(cè)試是否須運(yùn)行系統(tǒng):靜態(tài)測(cè)試、動(dòng)態(tài)測(cè)試按照測(cè)試執(zhí)行的方式:手工測(cè)試、自動(dòng)化測(cè)試、半自動(dòng)化測(cè)試按照測(cè)試內(nèi)容的不同:功能測(cè)試、性能測(cè)試、安全性測(cè)試、易用性測(cè)試、兼容性測(cè)試?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)常用的測(cè)試分類和測(cè)試用例設(shè)計(jì)方法靜態(tài)測(cè)試:基本特征是對(duì)軟件進(jìn)行分析、檢查和審閱,不實(shí)際運(yùn)行被測(cè)試的軟件,通??烧页?0~70%的邏輯設(shè)計(jì)錯(cuò)誤。動(dòng)態(tài)測(cè)試:指通過運(yùn)行軟件來(lái)檢驗(yàn)軟件的動(dòng)態(tài)行為和運(yùn)行結(jié)果的正確性。分為兩種方法:已知產(chǎn)品的功能需求規(guī)格說(shuō)明,可以進(jìn)行測(cè)試證明每個(gè)實(shí)現(xiàn)了的功能是否符合要求。(黑盒測(cè)試)已知產(chǎn)品的內(nèi)部工作過程,可以通過測(cè)試證明每種內(nèi)部操作是否符合設(shè)計(jì)規(guī)格的要求,所有內(nèi)部成分是否已經(jīng)過檢查。(白盒測(cè)試)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)(1)黑盒測(cè)試

黑盒測(cè)試又叫做功能測(cè)試、數(shù)據(jù)驅(qū)動(dòng)測(cè)試或基于規(guī)格說(shuō)明的測(cè)試,指在不考慮程序內(nèi)部結(jié)構(gòu)和內(nèi)部特征的情況下,根據(jù)軟件產(chǎn)品的功能設(shè)計(jì)規(guī)格說(shuō)明,在計(jì)算機(jī)上進(jìn)行測(cè)試,以證實(shí)每個(gè)實(shí)現(xiàn)了的功能是否符合要求。黑盒測(cè)試主要是為了發(fā)現(xiàn)以下幾類錯(cuò)誤:功能錯(cuò)誤或遺漏。輸入和輸出接口的正確性。數(shù)據(jù)結(jié)構(gòu)或外部信息訪問錯(cuò)誤。性能要求滿足情況。初始化或終止性錯(cuò)誤。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)(2)白盒測(cè)試白盒測(cè)試又稱為結(jié)構(gòu)測(cè)試、邏輯驅(qū)動(dòng)測(cè)試或基于程序的測(cè)試,指根據(jù)軟件產(chǎn)品的內(nèi)部工作過程,在計(jì)算機(jī)上進(jìn)行測(cè)試,以證實(shí)每種內(nèi)部操作是否符合設(shè)計(jì)規(guī)格要求,所有內(nèi)部成分是否已經(jīng)過檢查。白盒測(cè)試方法主要對(duì)程序模塊進(jìn)行如下檢查:程序模塊所有獨(dú)立執(zhí)行路徑至少測(cè)試一次。所有邏輯判定分支至少測(cè)試一次。循環(huán)邊界和運(yùn)行界限內(nèi)執(zhí)行情況。程序內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)無(wú)論黑盒測(cè)試還是白盒測(cè)試,如果實(shí)行窮舉測(cè)試,由于工作量過大,實(shí)施起來(lái)是不現(xiàn)實(shí)的,需要精心地挑選少量的測(cè)試數(shù)據(jù),使得采用這些測(cè)試數(shù)據(jù)能夠達(dá)到最佳的測(cè)試效果。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心黑盒測(cè)試白盒測(cè)試§11.3軟件測(cè)試方法與技術(shù)2.白盒測(cè)試技術(shù)(1)邏輯覆蓋

邏輯覆蓋是以程序內(nèi)部的邏輯結(jié)構(gòu)為基礎(chǔ)的設(shè)計(jì)測(cè)試用例的一種白盒測(cè)試技術(shù)。

邏輯覆蓋可分為:語(yǔ)句覆蓋、判定覆蓋、條件覆蓋、判定-條件覆蓋、條件組合覆蓋及路徑覆蓋。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)

?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心邏輯覆蓋參考例子§11.3軟件測(cè)試方法與技術(shù)語(yǔ)句覆蓋(點(diǎn)覆蓋):設(shè)計(jì)若干個(gè)測(cè)試用例,運(yùn)行被測(cè)程序,使得每一可執(zhí)行語(yǔ)句至少執(zhí)行一次。A=2,B=0,X=4,即達(dá)到了語(yǔ)句覆蓋判定覆蓋(分支覆蓋):設(shè)計(jì)若干個(gè)測(cè)試用例,運(yùn)行被測(cè)程序,使得程序中每個(gè)判斷的取真分支和取假分支至少經(jīng)歷一次。A=3,B=0,X=3可覆蓋a、c、d分支A=2,B=1,X=1可覆蓋a、b、e分支條件覆蓋:設(shè)計(jì)若干個(gè)測(cè)試用例,運(yùn)行被測(cè)程序,使得程序中每個(gè)判斷的每個(gè)條件的可能取值至少執(zhí)行一次。A=1,B=0,X=3,滿足條件T1(假),T2

(真),T3

(假),T4(真),可覆蓋a、b、e分支A=2,B=1,X=1,滿足條件T1(真),T2

(假),T3

(真),T4(假),還是覆蓋a、b、e分支?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)判定-條件覆蓋:設(shè)計(jì)足夠的測(cè)試用例,使得判斷中每個(gè)條件的所有可能取值至少執(zhí)行一次,同時(shí)每個(gè)判斷本身的所有可能判斷結(jié)果至少執(zhí)行一次。A=2,B=0,X=4,滿足條件

T1(真),T2

(真),T3

(真),T4(真),可覆蓋a、c、e分支A=1,B=1,X=1,滿足條件

T1(假),T2

(假),T3

(假),T4(假),覆蓋a、b、d分支多重條件覆蓋:設(shè)計(jì)足夠的測(cè)試用例,運(yùn)行被測(cè)程序,使得每個(gè)判斷的所有可能的條件取值組合至少執(zhí)行一次。A=2,B=0,X=4,滿足條件

T1(真),T2

(真),T3

(真),

T4(真),覆蓋a、c、e分支A=2,B=1,X=1,滿足條件

T1(真),T2

(假),T3

(真),

T4(假),覆蓋a、b、e分支A=1,B=0,X=2,滿足條件

T1(假),T2

(真),T3

(假),

T4(真),覆蓋a、b、d分支A=1,B=1,X=1,滿足條件

T1(假),T2

(假),T3

(假),

T4(假),覆蓋a、b、d分支?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)路徑測(cè)試:設(shè)計(jì)足夠的測(cè)試用例,覆蓋程序中所有可能的路徑,這是最強(qiáng)的覆蓋準(zhǔn)則。A=2,B=0,X=4,滿足條件

T1(真),T2

(真),T3

(真),T4(真),覆蓋a、c、e分支A=3,B=0,X=1,滿足條件

T1(真),T2

(真),T3

(假),T4(假),覆蓋a、c、d分支A=1,B=1,X=2,滿足條件

T1(假),T2

(假),T3

(假),T4(真),覆蓋a、b、e分支A=1,B=1,X=1,滿足條件

T1(假),T2

(假),T3

(假),T4(假),覆蓋a、b、d分支?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)(2)基本路徑測(cè)試真正做到完全路徑覆蓋是很困難的,必須把覆蓋路徑數(shù)目壓縮到一定限度。如果把覆蓋的路徑數(shù)壓縮到一定限度內(nèi),例如,程序中的循環(huán)體只執(zhí)行零次和一次,就稱為基本路徑測(cè)試。設(shè)計(jì)出的測(cè)試用例要保證在測(cè)試中,程序的每一個(gè)可執(zhí)行語(yǔ)句至少要執(zhí)行一次?;韭窂綔y(cè)試步驟:導(dǎo)出程序流程圖的拓?fù)浣Y(jié)構(gòu)-流圖

(程序圖)計(jì)算流圖G的環(huán)路復(fù)雜度V(G)確定只包含獨(dú)立路徑的基本路徑集設(shè)計(jì)測(cè)試用例?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)程序的控制流圖

控制流圖是描述程序控制流的一種圖示方法?;究刂茦?gòu)造的圖形符號(hào)如下所示:

邊和結(jié)點(diǎn)圈定的區(qū)域叫做區(qū)域,當(dāng)對(duì)區(qū)域計(jì)數(shù)時(shí),圖形外的區(qū)域也應(yīng)記為一個(gè)區(qū)域。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)如果判定中的條件表達(dá)式是復(fù)合條件時(shí),即條件表達(dá)式是由一個(gè)或多個(gè)邏輯運(yùn)算符(OR,AND,NAND,NOR)連接的邏輯表達(dá)式,則需要改復(fù)合條件的判定為一系列只有單個(gè)條件的嵌套的判定。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心(a)程序流程圖(b)控制流圖§11.3軟件測(cè)試方法與技術(shù)計(jì)算程序環(huán)路復(fù)雜性程序的環(huán)路復(fù)雜性給出了程序基本路徑集合中的獨(dú)立路徑條數(shù),這是確保程序中每個(gè)可執(zhí)行語(yǔ)句至少執(zhí)行一次所必需的測(cè)試用例數(shù)目的上界。所謂獨(dú)立路徑,是指包括一組以前沒有處理的語(yǔ)句或條件的一條路徑。只要設(shè)計(jì)出的測(cè)試用例能夠確保這些基本路徑的執(zhí)行,就可以使得程序中的每個(gè)可執(zhí)行語(yǔ)句至少執(zhí)行一次,每個(gè)條件的取真和取假分支也能得到測(cè)試?;韭窂郊皇俏ㄒ坏?,對(duì)于給定的控制流圖,可以得到不同的基本路徑集。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)一組獨(dú)立的路徑是:

path1:1-11path2:1-2-3-4-5-10-1-11path3:1-2-3-6-8-9-10-1-11path4:1-2-3-6-7-9-10-1-11?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心(a)程序流程圖(b)控制流圖§11.3軟件測(cè)試方法與技術(shù)通常環(huán)路復(fù)雜性可用以下三種方法求得。將環(huán)路復(fù)雜性定義為控制流圖中的區(qū)域數(shù)。設(shè)E為控制流圖的邊數(shù),N為圖的結(jié)點(diǎn)數(shù),則定義環(huán)路復(fù)雜性為

V(G)=E-N+2。若設(shè)P為控制流圖中的判定結(jié)點(diǎn)數(shù),則有

V(G)=P+1。前面所示控制流圖有4個(gè)區(qū)域。其環(huán)路復(fù)雜性為4。它是構(gòu)成基本路徑集的獨(dú)立路徑數(shù)的上界??梢該?jù)此得到應(yīng)該設(shè)計(jì)的測(cè)試用例的數(shù)目。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)(3)控制結(jié)構(gòu)測(cè)試基本路徑測(cè)試技術(shù)是控制結(jié)構(gòu)測(cè)試技術(shù)之一。盡管基本路徑測(cè)試簡(jiǎn)單高效,但是其并不充分??刂平Y(jié)構(gòu)測(cè)試中的其它測(cè)試技術(shù):關(guān)于分支結(jié)構(gòu)路徑數(shù)的討論條件測(cè)試的策略循環(huán)測(cè)試?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)3.黑盒測(cè)試技術(shù)(1)等價(jià)類劃分

這一方法完全不考慮程序的內(nèi)部結(jié)構(gòu),只依據(jù)程序的規(guī)格說(shuō)明來(lái)設(shè)計(jì)測(cè)試用例。

黑盒測(cè)試中,用所有可以輸入的數(shù)據(jù)來(lái)測(cè)試程序是不可能的,只可能從全部可供輸入的數(shù)據(jù)中選擇一個(gè)子集進(jìn)行測(cè)試。

因此,該方法是把所有可能的輸入數(shù)據(jù)劃分為若干部分,從每一部分中選取少數(shù)有代表性的數(shù)據(jù)作為測(cè)試用例。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)劃分等價(jià)類所謂等價(jià)類是指某個(gè)輸入域的子集合,在該子集合中,各個(gè)輸入數(shù)據(jù)對(duì)于揭露程序中的錯(cuò)誤都是等效的。等價(jià)類的劃分有兩種不同的情況:有效等價(jià)類:是指對(duì)于程序規(guī)格說(shuō)明來(lái)說(shuō),是合理的,有意義的輸入數(shù)據(jù)構(gòu)成的集合。利用它,可以檢驗(yàn)程序是否實(shí)現(xiàn)了規(guī)格說(shuō)明預(yù)先規(guī)定的功能和性能。無(wú)效等價(jià)類:是指對(duì)于程序規(guī)格說(shuō)明來(lái)說(shuō),是不合理的,無(wú)意義的輸入數(shù)據(jù)構(gòu)成的集合。利用它,可以檢查程序中功能和性能的實(shí)現(xiàn)是否有不符合規(guī)格說(shuō)明要求的地方。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)劃分等價(jià)類的原則:按區(qū)間劃分按數(shù)值集合劃分輸入條件是一個(gè)布爾量的劃分按數(shù)值劃分按限制條件或規(guī)則劃分如果已劃分的等價(jià)類中各元素在程序中的處理方式不同,則應(yīng)將此等價(jià)類進(jìn)一步劃分成更小的等價(jià)類?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)采用等價(jià)類劃分方法設(shè)計(jì)測(cè)試用例的步驟劃分等價(jià)類,包括有效等價(jià)類與無(wú)效等價(jià)類對(duì)所有有效等價(jià)類和無(wú)效等價(jià)類進(jìn)行順序編號(hào)設(shè)計(jì)測(cè)試用例,盡可能多地覆蓋尚未被覆蓋的有效等價(jià)類,重復(fù)這一步驟,直到全部有效等價(jià)類均被覆蓋到為止設(shè)計(jì)測(cè)試用例,每次只覆蓋一個(gè)無(wú)效等價(jià)類,重復(fù)這一步驟,直到全部無(wú)效等價(jià)類均被覆蓋到為止?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)確立測(cè)試用例在確立了等價(jià)類之后,建立等價(jià)類表,列出所有劃分出的等價(jià)類再?gòu)膭澐殖龅牡葍r(jià)類中按以下原則選擇測(cè)試用例形成等價(jià)類表,每一等價(jià)類規(guī)定一個(gè)唯一的編號(hào)設(shè)計(jì)一個(gè)測(cè)試用例,使其盡可能多地覆蓋尚未覆蓋的有效等價(jià)類,重復(fù)這一步驟,直到所有有效等價(jià)類均被測(cè)試用例所覆蓋設(shè)計(jì)一新測(cè)試用例,使其只覆蓋一個(gè)無(wú)效等價(jià)類,重復(fù)這一步驟直到所有無(wú)效等價(jià)類均被覆蓋?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)(2)邊界值分析人們從長(zhǎng)期的測(cè)試工作經(jīng)驗(yàn)得知,大量的錯(cuò)誤是發(fā)生在輸入或輸出范圍的邊界上,而不是在輸入范圍的內(nèi)部。因此針對(duì)各種邊界情況設(shè)計(jì)測(cè)試用例,可以查出更多的錯(cuò)誤。這里所說(shuō)的邊界是指,相當(dāng)于輸入等價(jià)類和輸出等價(jià)類而言,稍高于其邊界值及稍低于其邊界值的一些特定情況。邊界值分析方法是最有效的黑盒測(cè)試方法,但當(dāng)邊界情況很復(fù)雜的時(shí)候,要找出適當(dāng)?shù)臏y(cè)試用例還需針對(duì)問題的輸入域、輸出域邊界,耐心細(xì)致地逐個(gè)考慮。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)邊界值分析法選取測(cè)試用例的原則如果輸入條件規(guī)定了值的范圍,則應(yīng)選取剛達(dá)到這個(gè)范圍的邊界值,以及剛剛超過這個(gè)范圍的邊界值作為測(cè)試輸入數(shù)據(jù)如果輸入條件規(guī)定了值的個(gè)數(shù),則用最大個(gè)數(shù)、最小個(gè)數(shù)、比最大個(gè)數(shù)多1、比最小個(gè)數(shù)少1的數(shù)作為測(cè)試用例。如果輸出結(jié)果限定在某個(gè)范圍內(nèi),則應(yīng)選取測(cè)試用例,使輸出結(jié)果剛剛達(dá)到這個(gè)范圍的邊界值,或剛剛超過這個(gè)邊界值如果輸出結(jié)果規(guī)定了個(gè)數(shù),則選用使輸出結(jié)果為最大個(gè)數(shù)、最小個(gè)數(shù)、比最大個(gè)數(shù)多1、比最小個(gè)數(shù)少1的數(shù)作為測(cè)試用例如果輸入與輸出是有序集合,則應(yīng)選取集合的第一個(gè)元素和最后一個(gè)元素作為測(cè)試用例如果程序中使用了一個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu),則應(yīng)當(dāng)選擇這個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu)的邊界的值作為測(cè)試用例分析規(guī)格說(shuō)明書,找到其他可能的邊界條件進(jìn)行測(cè)試?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)(3)錯(cuò)誤推測(cè)法錯(cuò)誤推測(cè)法指的是人們依靠經(jīng)驗(yàn)和直覺推測(cè)程序中可能存在的各種錯(cuò)誤,從而有針對(duì)性地編寫檢查這些錯(cuò)誤的例子的測(cè)試方法。錯(cuò)誤推測(cè)法的基本想法是:列舉出程序中所有可能有的錯(cuò)誤和容易發(fā)生錯(cuò)誤的特殊情況,根據(jù)它們選擇測(cè)試用例。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)(4)因果圖如果在測(cè)試時(shí)必須考慮輸入條件的各種組合,可能的組合數(shù)將是天文數(shù)字。因此必須考慮使用一種適合于描述對(duì)于多種條件的組合,相應(yīng)產(chǎn)生多個(gè)動(dòng)作的形式來(lái)考慮設(shè)計(jì)測(cè)試用例,這就需要利用因果圖。因果圖方法最終生成的就是判定表。它適合于檢查程序輸入條件的各種組合情況。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)利用因果圖生成測(cè)試用例的基本步驟分析軟件規(guī)格說(shuō)明描述中,哪些是原因(即輸入條件或輸入條件的等價(jià)類),哪些是結(jié)果(即輸出條件),并給每個(gè)原因和結(jié)果賦予一個(gè)標(biāo)識(shí)符分析軟件規(guī)格說(shuō)明描述中的語(yǔ)義,找出原因與結(jié)果之間,原因與原因之間對(duì)應(yīng)的關(guān)系,根據(jù)這些關(guān)系,畫出因果圖由于語(yǔ)法或環(huán)境限制,有些原因與原因之間,原因與結(jié)果之間的組合情況不可能出現(xiàn)。為表明這些特殊情況,在因果圖上用一些記號(hào)標(biāo)明約束或限制條件把因果圖轉(zhuǎn)換成判定表把判定表的每一列拿出來(lái)作為依據(jù),設(shè)計(jì)測(cè)試用例?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.3軟件測(cè)試方法與技術(shù)

?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心因果圖由因果圖得到的判定表由因果圖得到的判定表§11.3軟件測(cè)試方法與技術(shù)4.測(cè)試方法選擇的綜合策略在任何情況下都必須使用邊界值分析方法。經(jīng)驗(yàn)表明用這種方法設(shè)計(jì)出測(cè)試用例發(fā)現(xiàn)程序錯(cuò)誤的能力最強(qiáng)必要時(shí)用等價(jià)類劃分方法補(bǔ)充一些測(cè)試用例用錯(cuò)誤推測(cè)法再追加一些測(cè)試用例對(duì)照程序邏輯,檢查已設(shè)計(jì)出的測(cè)試用例的邏輯覆蓋程度。如果沒有達(dá)到要求的覆蓋標(biāo)準(zhǔn),應(yīng)當(dāng)再補(bǔ)充足夠的測(cè)試用例如果程序的功能說(shuō)明中含有輸入條件的組合情況,則一開始就可選用因果圖法?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心軟件實(shí)現(xiàn)軟件測(cè)試基礎(chǔ)軟件測(cè)試方法與技術(shù)軟件測(cè)試過程面向?qū)ο蟮臏y(cè)試方法軟件維護(hù)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.4軟件測(cè)試過程

軟件測(cè)試過程包括單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試、系統(tǒng)測(cè)試和驗(yàn)收測(cè)試

1.單元測(cè)試

單元測(cè)試又稱為模塊測(cè)試,是針對(duì)程序模塊進(jìn)行正確性檢驗(yàn)的測(cè)試。主要采用白盒測(cè)試為主、黑盒測(cè)試為輔的測(cè)試方法單元測(cè)試的內(nèi)容模塊接口測(cè)試局部數(shù)據(jù)結(jié)構(gòu)測(cè)試路徑測(cè)試錯(cuò)誤處理測(cè)試邊界測(cè)試?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心模塊錯(cuò)誤處理模塊接口局部數(shù)據(jù)結(jié)構(gòu)

重要的執(zhí)行路徑邊界條件§11.4軟件測(cè)試過程單元測(cè)試的步驟單元測(cè)試在編碼階段進(jìn)行,是編碼步驟的附屬部分。源程序代碼編制完成,經(jīng)過評(píng)審和驗(yàn)證,確認(rèn)沒有語(yǔ)法錯(cuò)誤之后,就開始進(jìn)行單元測(cè)試的測(cè)試用例設(shè)計(jì)模塊并不是一個(gè)獨(dú)立的程序,在考慮測(cè)試模塊時(shí),同時(shí)要考慮它和外界的聯(lián)系,用一些輔助模塊去模擬與被測(cè)模塊相聯(lián)系的其它模塊。這些輔助模塊分為兩種:驅(qū)動(dòng)模塊(driver):相當(dāng)于被測(cè)模塊的主程序。它接收測(cè)試數(shù)據(jù),把這些數(shù)據(jù)傳送給被測(cè)模塊,最后輸出實(shí)測(cè)結(jié)果。樁模塊(stub):也叫做存根模塊,用以代替被測(cè)模塊調(diào)用的子模塊。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.4軟件測(cè)試過程2.集成測(cè)試在單元測(cè)試的基礎(chǔ)上,需要將所有模塊按照設(shè)計(jì)要求組裝成為系統(tǒng)。把模塊組裝成為系統(tǒng)的方式有兩種方式:一次性集成方式:首先對(duì)每個(gè)模塊分別進(jìn)行模塊測(cè)試,然后再把所有模塊組裝在一起進(jìn)行測(cè)試,最終得到要求的軟件系統(tǒng)。增殖式集成方式:首先對(duì)一個(gè)個(gè)模塊進(jìn)行模塊測(cè)試,然后將這些模塊逐步組裝成較大的系統(tǒng),在組裝的過程中,邊連接邊測(cè)試,以發(fā)現(xiàn)連接過程中產(chǎn)生的問題。最后通過增殖逐步組裝成為要求的軟件系統(tǒng)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.4軟件測(cè)試過程增值式集成方式的幾種類型:自頂向下的增殖方式自底向上的增殖方式混合增殖式測(cè)試衍變的自頂向下的增殖測(cè)試自底向上-自頂向下的增殖測(cè)試回歸測(cè)試?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.4軟件測(cè)試過程3.確認(rèn)測(cè)試確認(rèn)測(cè)試又稱有效性測(cè)試,它的任務(wù)是驗(yàn)證軟件的有效性,即驗(yàn)證軟件的功能和性能及其它特性是否與用戶的要求一致。確認(rèn)測(cè)試步驟:首先要進(jìn)行有效性測(cè)試以及軟件配置復(fù)審,然后進(jìn)行驗(yàn)收測(cè)試和安裝測(cè)試,在通過了專家鑒定之后,才能成為可交付的軟件。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.4軟件測(cè)試過程有效性測(cè)試(功能測(cè)試)有效性測(cè)試是在模擬的環(huán)境(可能就是開發(fā)的環(huán)境)下,運(yùn)用黑盒測(cè)試的方法,驗(yàn)證被測(cè)軟件是否滿足需求規(guī)格說(shuō)明書列出的需求軟件配置復(fù)查:軟件配置復(fù)查的目的是保證軟件配置的所有成分都齊全,各方面的質(zhì)量都符合要求,具有維護(hù)階段所必需的細(xì)節(jié),而且已經(jīng)編排好分類的目錄?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.4軟件測(cè)試過程4.系統(tǒng)測(cè)試所謂系統(tǒng)測(cè)試,是將通過確認(rèn)測(cè)試的軟件,作為整個(gè)基于計(jì)算機(jī)系統(tǒng)的一個(gè)元素,與計(jì)算機(jī)硬件、外設(shè)、某些支持軟件、數(shù)據(jù)和人員等其它系統(tǒng)元素結(jié)合在一起,在實(shí)際運(yùn)行(使用)環(huán)境下,對(duì)計(jì)算機(jī)系統(tǒng)進(jìn)行一系列的組裝測(cè)試和確認(rèn)測(cè)試。系統(tǒng)測(cè)試包括:恢復(fù)測(cè)試壓力測(cè)試性能測(cè)試安全測(cè)試?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.4軟件測(cè)試過程4.驗(yàn)收測(cè)試系統(tǒng)試運(yùn)行一段時(shí)間后,各方面均已滿足需求,可以進(jìn)行驗(yàn)收,驗(yàn)收前展開的最后測(cè)試叫做驗(yàn)收測(cè)試驗(yàn)收測(cè)試不再對(duì)系統(tǒng)的功能進(jìn)行全面測(cè)試,選擇用戶最為關(guān)注的核心功能進(jìn)行確認(rèn)即可。驗(yàn)收測(cè)試是以“用戶為主”的測(cè)試。軟件開發(fā)人員和QA(質(zhì)量保證)人員也應(yīng)參加。由用戶參加設(shè)計(jì)測(cè)試用例,使用用戶界面輸入測(cè)試數(shù)據(jù),并分析測(cè)試的輸出結(jié)果。驗(yàn)收測(cè)試以后,系統(tǒng)可以面向全體用戶推廣?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.4軟件測(cè)試過程α測(cè)試和β測(cè)試如果軟件是為多個(gè)用戶開發(fā)的產(chǎn)品,讓每個(gè)用戶逐個(gè)執(zhí)行正式的驗(yàn)收測(cè)試是不切實(shí)際的α測(cè)試是由少量用戶在“受控制”的開發(fā)環(huán)境下進(jìn)行的測(cè)試,也可以是公司內(nèi)部的用戶在模擬實(shí)際操作環(huán)境下進(jìn)行的測(cè)試。測(cè)試時(shí)開發(fā)者可坐在用戶旁邊β測(cè)試是由軟件的多個(gè)用戶在實(shí)際使用環(huán)境下進(jìn)行的測(cè)試。β測(cè)試是在開發(fā)者“無(wú)法控制”的環(huán)境下進(jìn)行的軟件現(xiàn)場(chǎng)應(yīng)用。測(cè)試時(shí)開發(fā)者通常不在測(cè)試現(xiàn)場(chǎng)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心軟件實(shí)現(xiàn)軟件測(cè)試基礎(chǔ)軟件測(cè)試方法與技術(shù)軟件測(cè)試過程面向?qū)ο蟮臏y(cè)試方法軟件維護(hù)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.5面向?qū)ο蟮臏y(cè)試方法1.面向?qū)ο鬁y(cè)試與傳統(tǒng)測(cè)試的區(qū)別傳統(tǒng)的測(cè)試計(jì)算機(jī)軟件的策略是從“小型測(cè)試”開始,逐步走向“大型測(cè)試”。即首先從單元測(cè)試開始,然后逐步進(jìn)入集成測(cè)試,最后是確認(rèn)和系統(tǒng)測(cè)試。面向?qū)ο蟪绦虻慕Y(jié)構(gòu)不再是傳統(tǒng)的功能模塊結(jié)構(gòu),作為一個(gè)整體,原有集成測(cè)試所要求的逐步將開發(fā)的模塊搭建在一起進(jìn)行測(cè)試的方法已經(jīng)不可能。傳統(tǒng)的測(cè)試模型對(duì)面向?qū)ο筌浖呀?jīng)不再適用。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.5面向?qū)ο蟮臏y(cè)試方法2.面向?qū)ο蟮臏y(cè)試模型針對(duì)面向?qū)ο蟮拈_發(fā)模型,結(jié)合傳統(tǒng)的測(cè)試步驟的劃分,將面向?qū)ο蟮能浖y(cè)試分為:面向?qū)ο蠓治龅臏y(cè)試(OOATest),面向?qū)ο笤O(shè)計(jì)的測(cè)試(OODTest),面向?qū)ο缶幊痰臏y(cè)試(OOPTest),面向?qū)ο髥卧獪y(cè)試(OOUnitTest),面向?qū)ο蠹蓽y(cè)試(OOIntegrateTest),面向?qū)ο笙到y(tǒng)測(cè)試(OOSystemTest)。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.5面向?qū)ο蟮臏y(cè)試方法3.面向?qū)ο蠓治龅臏y(cè)試對(duì)OOA的測(cè)試,應(yīng)從以下方面考慮對(duì)認(rèn)定的對(duì)象的測(cè)試對(duì)認(rèn)定的結(jié)構(gòu)的測(cè)試對(duì)認(rèn)定的主題的測(cè)試對(duì)定義的屬性和實(shí)例關(guān)聯(lián)的測(cè)試對(duì)定義的服務(wù)和消息關(guān)聯(lián)的測(cè)試?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.5面向?qū)ο蟮臏y(cè)試方法4.面向?qū)ο笤O(shè)計(jì)的測(cè)試對(duì)OOD的測(cè)試,應(yīng)從如下三方面考慮:對(duì)認(rèn)定的類的測(cè)試對(duì)構(gòu)造的類層次結(jié)構(gòu)的測(cè)試對(duì)類庫(kù)支持的測(cè)試?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.5面向?qū)ο蟮臏y(cè)試方法5.面向?qū)ο缶幊痰臏y(cè)試

在面向?qū)ο缶幊蹋∣OP)階段,忽略類功能實(shí)現(xiàn)的細(xì)則,將測(cè)試的目光集中在類功能的實(shí)現(xiàn)和相應(yīng)的面向?qū)ο蟪绦蝻L(fēng)格,主要體現(xiàn)為以下兩個(gè)方面數(shù)據(jù)成員是否滿足數(shù)據(jù)封裝的要求類是否實(shí)現(xiàn)了要求的功能其主要的測(cè)試內(nèi)容在面向?qū)ο髥卧獪y(cè)試和面向?qū)ο蠹蓽y(cè)試中體現(xiàn)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.5面向?qū)ο蟮臏y(cè)試方法6.面向?qū)ο蟮膯卧獪y(cè)試單元測(cè)試的對(duì)象是類的成員函數(shù)。一些傳統(tǒng)的測(cè)試方法在面向?qū)ο蟮膯卧獪y(cè)試中都可以使用面向?qū)ο缶幊痰奶匦允沟脤?duì)成員函數(shù)的測(cè)試,又不完全等同于傳統(tǒng)的函數(shù)或過程測(cè)試。尤其是繼承特性和多態(tài)特性,使子類繼承或過載的父類成員函數(shù)出現(xiàn)了傳統(tǒng)測(cè)試中未遇見的問題。繼承的成員函數(shù)是否都不需要測(cè)試對(duì)父類的測(cè)試是否能照搬到子類對(duì)不同多態(tài)形式的考慮?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.5面向?qū)ο蟮臏y(cè)試方法7.面向?qū)ο蟮募蓽y(cè)試面向?qū)ο蟮募蓽y(cè)試通常需要在整個(gè)程序編譯完成后進(jìn)行,只關(guān)注于系統(tǒng)的結(jié)構(gòu)和內(nèi)部的相互作用。可以分成兩步進(jìn)行靜態(tài)測(cè)試:主要針對(duì)程序的結(jié)構(gòu)進(jìn)行,檢測(cè)程序結(jié)構(gòu)是否符合設(shè)計(jì)要求動(dòng)態(tài)測(cè)試:檢驗(yàn)類所有的服務(wù),類的所有狀態(tài),類間所有傳遞的消息等的正確性?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.5面向?qū)ο蟮臏y(cè)試方法8.面向?qū)ο蟮南到y(tǒng)測(cè)試系統(tǒng)測(cè)試需要測(cè)試軟件與系統(tǒng)其他部分配套運(yùn)行的表現(xiàn),以保證在系統(tǒng)各部分協(xié)調(diào)工作的環(huán)境下也能正常工作。它體現(xiàn)的具體測(cè)試內(nèi)容包括功能測(cè)試強(qiáng)度測(cè)試性能測(cè)試安全測(cè)試恢復(fù)測(cè)試可用性測(cè)試安裝/卸載測(cè)試?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心軟件實(shí)現(xiàn)軟件測(cè)試基礎(chǔ)軟件測(cè)試方法與技術(shù)軟件測(cè)試過程面向?qū)ο蟮臏y(cè)試方法軟件維護(hù)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.6軟件維護(hù)1.軟件維護(hù)的定義所謂軟件維護(hù)就是在軟件已經(jīng)交付使用之后,為了改正錯(cuò)誤或滿足新的需要而修改軟件的過程,即在軟件運(yùn)行∕維護(hù)階段對(duì)軟件產(chǎn)品所進(jìn)行的一切改動(dòng)。進(jìn)行軟件維護(hù)的原因:修改在特定的使用條件下暴露出來(lái)的一些潛在程序錯(cuò)誤或設(shè)計(jì)缺陷在軟件使用過程中數(shù)據(jù)環(huán)境發(fā)生變化或處理環(huán)境發(fā)生變化,需要修改軟件以適應(yīng)這種變化系統(tǒng)用戶在使用時(shí)常提出改進(jìn)現(xiàn)有功能、增加新的功能、以及改善總體性能的要求,為滿足這些要求,就需要修改軟件把這些要求納入到軟件之中?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.6軟件維護(hù)2.軟件維護(hù)的分類改正性維護(hù)為了識(shí)別和糾正軟件錯(cuò)誤、改正軟件性能上的缺陷、排除實(shí)施中的誤使用而進(jìn)行的診斷和改正錯(cuò)誤的過程適應(yīng)性維護(hù)為了使軟件適應(yīng)外部環(huán)境或數(shù)據(jù)環(huán)境的變化,而去修改軟件的過程完善性維護(hù)為了滿足用戶對(duì)軟件提出新的功能與性能要求而去修改和再開發(fā)軟件的過程預(yù)防性維護(hù)采用先進(jìn)的軟件工程方法對(duì)需要維護(hù)的軟件或軟件中的某一部分(重新)進(jìn)行設(shè)計(jì)、編制和測(cè)試?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.6軟件維護(hù)3.軟件維護(hù)活動(dòng)首先需要建立維護(hù)的機(jī)構(gòu)明確維護(hù)申請(qǐng)報(bào)告的過程及評(píng)價(jià)的過程為每一個(gè)維護(hù)申請(qǐng)規(guī)定標(biāo)準(zhǔn)的處理步驟建立維護(hù)活動(dòng)的等級(jí)制度以及規(guī)定評(píng)價(jià)和評(píng)審的標(biāo)準(zhǔn)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.6軟件維護(hù)(1)維護(hù)機(jī)構(gòu)

維護(hù)申請(qǐng)?zhí)峤唤o一個(gè)維護(hù)管理員,他把申請(qǐng)交給某個(gè)系統(tǒng)監(jiān)督員去評(píng)價(jià)。一旦做出評(píng)價(jià),由修改負(fù)責(zé)人確定如何進(jìn)行修改。在維護(hù)人員對(duì)程序進(jìn)行修改的過程中,由配置管理員嚴(yán)格把關(guān),控制修改的范圍,對(duì)軟件配置進(jìn)行審計(jì)。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心§11.6軟件維護(hù)(2)軟件維護(hù)申請(qǐng)報(bào)告所有的軟件維護(hù)申請(qǐng)應(yīng)按規(guī)定的方式給出。軟件維護(hù)組織通常提供維護(hù)申請(qǐng)報(bào)告(MRP:MaintenanceRequestForm),由申請(qǐng)維護(hù)的用戶填寫。維護(hù)申

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論