軟件測試 2 軟件測試基本概念_第1頁
軟件測試 2 軟件測試基本概念_第2頁
軟件測試 2 軟件測試基本概念_第3頁
軟件測試 2 軟件測試基本概念_第4頁
軟件測試 2 軟件測試基本概念_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

軟件測試方法和技術(shù)

第2版

第2章軟件測試的基本概念第1章回顧什么是軟件測試軟件測試的正反兩面性驗證軟件發(fā)現(xiàn)缺陷V&V軟件測試和開發(fā)的關(guān)系TDD第2章軟件測試的基本概念2.1軟件缺陷2.2驗證和確認(rèn)2.3軟件測試的分類2.4測試階段2.5軟件測試的工作范疇缺陷是質(zhì)量的對立面要了解什么是缺陷(defect),就必須清楚“質(zhì)量(Quality)”概念,因為缺陷是相對質(zhì)量而存在的,違背了質(zhì)量、違背了客戶的意愿,不能滿足客戶的要求,就會引起缺陷或產(chǎn)生缺陷軟件行業(yè)的發(fā)展為軟件測試帶來新的挑戰(zhàn)軟件結(jié)構(gòu)越來越復(fù)雜團(tuán)隊規(guī)模越來越大開發(fā)成本與風(fēng)險越來越高用戶對應(yīng)用程序的質(zhì)量要求越來越嚴(yán)格影響軟件質(zhì)量的4個方面62.1軟件缺陷2.1.1軟件質(zhì)量的內(nèi)涵2.1.2軟件缺陷的定義2.1.3軟件缺陷的產(chǎn)生2.1.4軟件缺陷的構(gòu)成2.1.5修復(fù)軟件缺陷的代價軟件質(zhì)量

的內(nèi)涵IEEE:

質(zhì)量是系統(tǒng)、部件或過程滿足明確需求客戶或用戶需要或期望的程度不同軟件質(zhì)量:軟件產(chǎn)品具有滿足規(guī)定的或隱含要求能力要求有關(guān)的特征與特征總和(ISO8492)軟件質(zhì)量:軟件產(chǎn)品滿足 使用要求的程度

高質(zhì)量軟件標(biāo)準(zhǔn)體系產(chǎn)品質(zhì)量是人們實踐產(chǎn)物的屬性和行為,是可以認(rèn)識,可以科學(xué)地描述的。并且可以通過一些方法和人類活動,來改進(jìn)質(zhì)量.質(zhì)量模型:McCall模型,Boehm模型,ISO9126模型過程質(zhì)量:

軟件能力成熟度模型

CMM(CapabilityMaturityModel).

國際標(biāo)準(zhǔn)過程模型

ISO9000

軟件過程改進(jìn)和能力決斷

SPICE(SoftwareProcessImprovementandCapabilitydEtermination)

在商業(yè)過程中有關(guān)的質(zhì)量內(nèi)容:

培訓(xùn)、成品制作、宣傳、發(fā)布日起、客戶、風(fēng)險、成本、業(yè)務(wù)等

產(chǎn)品質(zhì)量的標(biāo)準(zhǔn)-功能性

Functionality-可用性

Usability(簡單安裝;輕松使用;友好界面)-可靠性

Reliability(用戶使用的根本)-性能

Performance-容量

Capacity-可測量性

Scalability-可維護(hù)性

Servicemanageability-兼容性

Compatibility-可擴(kuò)展性

Extensibility軟件質(zhì)量特征

(ISO9126)

功能:與一組功能及其指定性質(zhì)有關(guān)的一組屬性,這里的功能是滿足明確或隱含的需求的那些功能。

可靠:在規(guī)定的一段時間和條件下,與軟件維持其性能水平的能力有關(guān)的一組屬性。

易用:由一組規(guī)定或潛在的用戶為使用軟件所需作的努力和所作的評價有關(guān)的一組屬性。

效率:與在規(guī)定條件下軟件的性能水平與所使用資源量之間關(guān)系有關(guān)的一組屬性。

可維護(hù):與進(jìn)行指定的修改所需的努力有關(guān)的一組屬性。

可移植:與軟件從一個環(huán)境轉(zhuǎn)移到另一個環(huán)境的能力有關(guān)的一組屬性。南生橘北生枳

其中每一個質(zhì)量特征都分別與若干子特征相對應(yīng)。ISO9126軟件質(zhì)量三層模型Boehm(1978)軟件質(zhì)量模型互用性正確性可靠性效率完整性可用性可維護(hù)性可測試性靈活性可移植性重復(fù)性闡述性數(shù)據(jù)公開性連貫性容錯性執(zhí)行效率/儲存效率存取控制/存取檢查可訓(xùn)練溝通良好簡單性易操作的工具自我操作性擴(kuò)展性一般性模塊性軟件系統(tǒng)獨(dú)立性機(jī)器獨(dú)立性通訊公開性正確性可操作性產(chǎn)品操作產(chǎn)品修改產(chǎn)品維護(hù)企業(yè)自定義質(zhì)量模型1-FURPS惠普公司側(cè)重于FURPS標(biāo)準(zhǔn),即:F=functionality功能性。特征、能力、可比性與安全性。U=usabitity可用性。人的因素、產(chǎn)品的一致性與文件。R=reliability可靠性。失效頻次與嚴(yán)重性,產(chǎn)品的可預(yù)測性與精確性。P=performance性能。產(chǎn)品的速度與效率、資源消耗性能。S=supportability支持性。產(chǎn)品的可維護(hù)性與可服務(wù)性及其安裝能力。14企業(yè)自定義質(zhì)量模型2-CUPRIMDSOIBM公司利用CUPRIMDSO的層次來監(jiān)控對軟件產(chǎn)品的滿意度,即功能性(Capability)、使用性(Usability)、性能(Performance)、可靠性(Reliability)、可安裝性(Installability)、可維護(hù)性(Maintainability)、文檔/信息(Documentation/information)、服務(wù)(Service)以及綜合滿意程度(OverallSatisfaction)。15什么是Bug?2.1.2軟件缺陷的定義Anyproblem/disfigurement/limitationinproductdesign&development

Featureorfunctioncan’tworkUnreasonabledesignPartlyrealizationinfunctionDataerrorRunerrorLimitationinfeaturesDifferencebetweenactualresultsandexpectedresultsUnfriendlyUI,LowperformanceOthers任何程序、系統(tǒng)中的問題,和產(chǎn)品設(shè)計書的不一致性,不能滿足用戶的需求

缺點(diǎn)(defect)偏差(variance)謬誤(fault)失敗(failure)問題(problem)矛盾(inconsistency)錯誤(error)毛?。╥ncident)異常(anomy)缺陷–Defect,Bug軟件缺陷IEEE(1983)729軟件缺陷一個標(biāo)準(zhǔn)的定義:從產(chǎn)品內(nèi)部看,軟件缺陷是軟件產(chǎn)品開發(fā)或維護(hù)過程中所存在的錯誤、毛病等各種問題;從外部看,軟件缺陷是系統(tǒng)所需要實現(xiàn)的某種功能的失效或違背。

軟件缺陷的主要類型/現(xiàn)象:功能、特性沒有實現(xiàn)或部分實現(xiàn)設(shè)計不合理,存在缺陷實際結(jié)果和預(yù)期結(jié)果不一致運(yùn)行出錯,包括運(yùn)行中斷、系統(tǒng)崩潰、界面混亂數(shù)據(jù)結(jié)果不正確、精度不夠用戶不能接受的其他問題,如存取時間過長、界面不美觀軟件缺陷的產(chǎn)生

技術(shù)問題算法錯誤,語法錯誤,計算和精度問題,接口參數(shù)傳遞不匹配團(tuán)隊工作誤解、溝通不充分軟件本身文檔錯誤、用戶使用場合(userscenario),時間上不協(xié)調(diào)、或不一致性所帶來的問題系統(tǒng)的自我恢復(fù)或數(shù)據(jù)的異地備份、災(zāi)難性恢復(fù)等問題軟件缺陷構(gòu)成

20設(shè)計25%規(guī)格說明書54%其他6%代碼15%軟件缺陷產(chǎn)生的原因分布其他10%軟件產(chǎn)品說明書(需求)56%編寫代碼7%設(shè)計27%軟件缺陷在不同階段的分布在真正的程序測試之前,通過審查、評審會可以發(fā)現(xiàn)更多的缺陷。規(guī)格說明書的缺陷會在需求分析審查、設(shè)計、編碼、測試等過程中會逐步發(fā)現(xiàn),而不能在需求分析一個階段發(fā)現(xiàn)。修復(fù)軟件缺陷的代價軟件在從需求、設(shè)計、編碼、測試一直到交付用戶公開使用后的過程中,都有可能產(chǎn)生和發(fā)現(xiàn)缺陷。隨著整個開發(fā)過程的時間推移,更正缺陷或修復(fù)問題的費(fèi)用呈幾何級數(shù)增長。

22軟件缺陷在不同階段發(fā)現(xiàn)時修復(fù)的費(fèi)用示意圖020406080100編制說明書設(shè)計階段編寫代碼測試發(fā)布2.2驗證和確認(rèn)2.2.1驗證和確認(rèn)2.2.2評審2.2.3質(zhì)量保證和測試的關(guān)系驗證和確認(rèn)(V&V)

Verification:Arewebuildingtheproductright?是否正確地構(gòu)造了軟件?即是否正確地做事,驗證開發(fā)過程是否遵守已定義好的內(nèi)容。驗證產(chǎn)品滿足規(guī)格設(shè)計說明書的一致性Validation:Arewebuildingtherightproduct?

是否構(gòu)造了正是用戶所需要的軟件?即是否正在做正確的事。驗證產(chǎn)品所實現(xiàn)的功能是否滿足用戶的需求評審?fù)ㄟ^軟件評審,可以更早地發(fā)現(xiàn)需求工程、軟件設(shè)計等各個方面的問題,大大減少大量的后期返工,將質(zhì)量成本從昂貴的后期返工轉(zhuǎn)化為前期的缺陷發(fā)現(xiàn)。評審是對軟件元素或者項目狀態(tài)的一種評估手段,以確定其是否與計劃的結(jié)果保持一致,并使其得到改進(jìn)。檢驗工作產(chǎn)品是否正確地滿足了以往工作產(chǎn)品中建立的規(guī)范。評審分類管理評審技術(shù)評審文檔評審流程評審什么是SQA?軟件質(zhì)量保證是通過對軟件產(chǎn)品和活動有計劃的進(jìn)行評審和審計來驗證軟件是否合乎標(biāo)準(zhǔn)的系統(tǒng)工程活動.

確保SQA活動要自始至有計劃的進(jìn)行審查軟件產(chǎn)品和活動是否遵守適用的標(biāo)準(zhǔn)、規(guī)程和要求并得到客觀驗證。SQA的活動和結(jié)果要保證全員參與,溝通順暢。逐級解決不符合問題SQA活動技術(shù)方法的應(yīng)用正式技術(shù)評審的實施軟件測試標(biāo)準(zhǔn)的執(zhí)行修改的控制度量質(zhì)量記錄和記錄保存SQA與軟件測試有什么關(guān)系和區(qū)別?

SQA與軟件測試的關(guān)系SQA

是管理工作、審查對象是流程、強(qiáng)調(diào)以預(yù)防為主測試是技術(shù)工作、測試對象是產(chǎn)品、主要是以事后檢查SQA指導(dǎo)測試、監(jiān)控測試測試為SQA提供依據(jù)2.3軟件測試的分類方法目標(biāo)/特性單元測試系統(tǒng)測試驗收測試性能測試強(qiáng)壯性測試功能測試白盒測試黑盒測試測試階段或?qū)哟芜m用性測試可靠性測試集成測試安全性測試不同的分類按測試的對象或范圍分類,如單元測試、文檔測試、系統(tǒng)測試等)按測試目的分類,如功能測試、回歸測試、性能測試、可靠性測試、安全性測試和兼容性測試等根據(jù)測試過程中被測軟件是否被執(zhí)行,分為靜態(tài)測試和動態(tài)測試根據(jù)是否針對系統(tǒng)的內(nèi)部結(jié)構(gòu)和具體實現(xiàn)算法來完成測試,可分為白盒測試和黑盒測試2.4軟件測試的各個階段開發(fā)生命周期...維護(hù)需求定義應(yīng)用定義應(yīng)用開發(fā)修訂建立建立測試生命周期...執(zhí)行.執(zhí)行執(zhí)行.測試計劃缺陷跟蹤測試開發(fā)測試設(shè)計評估軟件測試階段階段輸入輸出需求分析需求定義,市場分析文檔,相關(guān)技術(shù)文檔市場需求分析會議記要,功能設(shè)計,技術(shù)設(shè)計設(shè)計審查市場需求文檔,技術(shù)設(shè)計文檔

測試計劃,測試用例功能驗證代碼完成文件包,功能詳細(xì)設(shè)計說明書最終技術(shù)文檔完整測試用例,完備的測試計劃,缺陷報告,功能驗證測試報告系統(tǒng)測試代碼修改后的文件包完整測試用例,完備的測試計劃

缺陷報告缺陷狀態(tài)報告項目階段報告確認(rèn)測試代碼凍結(jié)文件包確認(rèn)測試用例缺陷狀態(tài)報告缺陷報告審查版本審查版本發(fā)布代碼發(fā)布文件包測試計劃檢查清單當(dāng)前版本已知問題的清單版本發(fā)布報告測試階段(SDLC)需求和設(shè)計審查測試人員參與產(chǎn)品需求分析和系統(tǒng)設(shè)計,認(rèn)真閱讀有關(guān)文檔,真正理解客戶的需求和技術(shù)上的設(shè)計,檢查需求說明書對產(chǎn)品描述的準(zhǔn)確性、一致性等,檢查系統(tǒng)設(shè)計的合理性和可測試性等單元測試單元測試的對象是程序系統(tǒng)中的最小單元---模塊或組件上,在編碼階段進(jìn)行,針對每個模塊進(jìn)行測試,主要通過白盒測試方法,從程序的內(nèi)部結(jié)構(gòu)出發(fā)設(shè)計測試用例,檢查程序模塊或組件的已實現(xiàn)的功能與定義的功能是否一致、以及編碼中是否存在錯誤。多個模塊可以平行地、對立地測試,通常要編寫驅(qū)動模塊和樁模塊單元測試一般由編程人員和測試人員共同完成,而以開發(fā)人員為主單元測試包括代碼評審,代碼評審可以發(fā)現(xiàn)程序50%~70%代碼的缺陷。集成測試集成測試,也稱組裝測試、聯(lián)合測試、子系統(tǒng)測試,在單元測試的基礎(chǔ)上,將模塊按照設(shè)計要求組裝起來同時進(jìn)行測試,主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的模塊之間問題兩種集成方式:一次性集成方式和增殖式集成方式。功能測試功能測試一般須在完成集成測試后進(jìn)行,而且是針對應(yīng)用系統(tǒng)進(jìn)行測試。功能測試是基于產(chǎn)品功能說明書,是在已知產(chǎn)品所應(yīng)具有的功能,從用戶角度來進(jìn)行功能驗證,以確認(rèn)每個功能是否都能正常使用系統(tǒng)測試系統(tǒng)測試是將軟件放在整個計算機(jī)環(huán)境下,包括軟硬件平臺、某些支持軟件、數(shù)據(jù)和人員等,在實際運(yùn)行環(huán)境下進(jìn)行一系列的測試,包括恢復(fù)測試、安全測試、強(qiáng)度測試和性能測試等驗收測

溫馨提示

  • 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

提交評論