版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
軟件測試策略第2章軟件測試策略第2頁,共40頁,2024年2月25日,星期天目錄軟件測試的分類1軟件測試的原則2軟件測試關(guān)鍵問題3軟件測試與軟件質(zhì)量4軟件測試的誤區(qū)5第3頁,共40頁,2024年2月25日,星期天軟件測試的分類按照開發(fā)階段劃分單元測試:模塊測試,檢查每個程序單元嫩否正確實現(xiàn)詳細(xì)設(shè)計說明中的模塊功能等。集成測試:組裝測試,將所有的程序模塊進(jìn)行有序、遞增的測試,檢驗程序單元或部件的接口關(guān)系系統(tǒng)測試:檢查完整的程序系統(tǒng)能否和系統(tǒng)(包括硬件、外設(shè)和網(wǎng)絡(luò)、系統(tǒng)軟件、支持平臺等)正確配置、連接,并滿足用戶需求。確認(rèn)測試:證實軟件是否滿足特定于其用途的需求,是否滿足軟件需求說明書的規(guī)定。驗收測試:按照項目任務(wù)或合同,供需雙方簽訂的驗收依據(jù)文檔進(jìn)行的對整個系統(tǒng)的測試與評審,決定是否接受或拒收系統(tǒng)。第4頁,共40頁,2024年2月25日,星期天軟件測試的分類按照測試技術(shù)劃分白盒測試:通過對程序內(nèi)部結(jié)構(gòu)的分析、檢測來尋找問題。檢查是否所有的結(jié)構(gòu)及邏輯都是正確的,檢查軟件內(nèi)部動作是否按照設(shè)計說明的規(guī)定正常進(jìn)行。--結(jié)構(gòu)測試黑盒測試:通過軟件的外部表現(xiàn)來發(fā)現(xiàn)錯誤,是在程序界面處進(jìn)行測試,只是檢查是否按照需求規(guī)格說明書的規(guī)定正常實現(xiàn)?;液袦y試:介于白盒測試與黑盒測試之間的測試,關(guān)注輸出對輸入的正確性;同時,也關(guān)注內(nèi)部表現(xiàn),不像白盒那樣詳細(xì),只是通過一些表征性現(xiàn)象、事件、標(biāo)志來判斷內(nèi)部的運行狀態(tài)。第5頁,共40頁,2024年2月25日,星期天軟件測試的分類按照測試實施組織劃分開發(fā)方測試:開發(fā)方通過檢測和提供客觀證據(jù),證實軟件的實現(xiàn)是否滿足規(guī)定的需求,在開發(fā)環(huán)境下,開發(fā)方對提交的軟件進(jìn)行全面的自我檢查。用戶測試:在用戶的應(yīng)用環(huán)境中,用戶通過運行軟件,檢測軟件實現(xiàn)是否符合自己預(yù)期的要求,這里指用戶的使用性測試。第三方測試:介于軟件開發(fā)方和用戶方之間的測試組織的測試。第6頁,共40頁,2024年2月25日,星期天按程序?qū)ο蠓置嫦驕y試對象粒度的劃分按測試方法分類按運行狀態(tài)分類面向軟件測試實施者的劃分嵌入式軟件測試與非嵌入式軟件測試軟件測試的分類第7頁,共40頁,2024年2月25日,星期天軟件測試的原則1完全測試的不可能性例:測試windows計算機(jī)器原因:輸入量太大輸出結(jié)果太多軟件執(zhí)行路徑太多軟件說明書是主觀的,沒有客觀標(biāo)準(zhǔn)。第8頁,共40頁,2024年2月25日,星期天2軟件測試是有風(fēng)險的活動SoftwareTestingisaRisk-BasedExercise如果不選擇完全測試所有情況,那就是選擇了冒險Nottotesteverypossibletestscenario,Customerwilleventuallyfinditsomeday.如:1024+1024=2048矛盾:Testingvs.ReleasedeadlineStoptestingvs.Costlybug關(guān)鍵測試要點:把數(shù)量巨大的可能測試減少到可以控制的范圍針對風(fēng)險做出明智的選擇,哪些測試重要,哪些不重要第9頁,共40頁,2024年2月25日,星期天軟件缺陷故障數(shù)量測試量測試不足測試費用優(yōu)化測試量測試過量遺漏軟件缺陷數(shù)目測試工作量與軟件缺陷數(shù)量之間的關(guān)系第10頁,共40頁,2024年2月25日,星期天3.測試無法顯示潛伏的軟件缺陷和故障軟件測試員可以報告軟件缺陷存在,卻不能報告軟件缺陷不存在.可以進(jìn)行測試,發(fā)現(xiàn)并報告軟件缺陷,但是任何情況下都不能保證軟件缺陷不存在.Whatcanyoudo?!唯一的方法:繼續(xù)測試,找到更多的缺陷第11頁,共40頁,2024年2月25日,星期天4.充分注意測試中的群集現(xiàn)象缺陷可能成群出現(xiàn)發(fā)現(xiàn)一個,附近就可能有一群缺陷一個接一個可能的原因:A.程序員也有心情不好的時候B.程序員往往犯同樣的錯誤C.有些軟件故障可能是冰山一角第12頁,共40頁,2024年2月25日,星期天5.殺蟲劑現(xiàn)象農(nóng)藥—害蟲軟件測試越多,對測試的免疫力越強(qiáng),尋找更多軟件缺陷就更加困難.克服辦法:在軟件測試中采用單一的方法不能高效和完全的針對所有軟件缺陷,因此軟件測試應(yīng)該盡可能的多采用多種途徑進(jìn)行測試.
第13頁,共40頁,2024年2月25日,星期天6.并非所有的軟件缺陷都要修復(fù)雖然測試員盡了最大的努力,但并非找到的所有軟件缺陷都要修復(fù)。并非意味著軟件測試員沒有達(dá)到目的.解決辦法依賴軟件測試員的素質(zhì)—進(jìn)行良好的判斷,根據(jù)風(fēng)險決定哪些缺陷需要修復(fù),哪些不需要修復(fù)。造成軟件缺陷不能修復(fù)的原因:(1)時間不夠(2)不算真正的軟件缺陷(3)修復(fù)的風(fēng)險太大(4)不值得修復(fù)第14頁,共40頁,2024年2月25日,星期天7.難以描述的軟件缺陷如果軟件中存在缺陷,但沒有人能夠發(fā)現(xiàn),算不算缺陷?軟件缺陷的定義:(1)軟件未達(dá)到產(chǎn)品說明書中已經(jīng)標(biāo)明的功能;(2)軟件出現(xiàn)了產(chǎn)品說明書中指明不會出現(xiàn)的錯誤;(3)軟件未達(dá)到產(chǎn)品說明書中雖未指出但應(yīng)當(dāng)達(dá)到的目標(biāo);(4)軟件功能超出了產(chǎn)品說明書中指明的范圍;(5)軟件測試人員認(rèn)為軟件難以理解、不易使用,或者最終用戶認(rèn)為該軟件使用效果不良。一棵樹在森林中倒下,沒有人看見聽見,它發(fā)出聲音了嗎?第15頁,共40頁,2024年2月25日,星期天8)80-20原則
第一個含義:80%的軟件缺陷常常生存在軟件20%的空間里。如果想使軟件測試有效,就要更加關(guān)注那些經(jīng)常或者可能出現(xiàn)錯誤的程序段,在那里發(fā)現(xiàn)軟件缺陷的可能性會大的多。這一原則對于軟件測試人員提高測試效率及缺陷發(fā)現(xiàn)率有著重大的意義。
第16頁,共40頁,2024年2月25日,星期天8)80-20原則
第二個含義:在系統(tǒng)分析、設(shè)計、實現(xiàn)階段的復(fù)審工作中能夠發(fā)現(xiàn)和避免80%的軟件缺陷,此后的系統(tǒng)測試能夠幫助我們找出剩余缺陷中的80%,最后的5%的軟件缺陷可能只有在系統(tǒng)交付使用后用戶經(jīng)過大范圍、長時間使用后才會曝露出來。因為軟件測試只能夠保證盡可能多地發(fā)現(xiàn)軟件缺陷,卻無法保證能夠發(fā)現(xiàn)所有的軟件缺陷。第17頁,共40頁,2024年2月25日,星期天8.)80-20原則
第三個含義:實踐證明80%的軟件缺陷可以借助人工測試而發(fā)現(xiàn),20%的軟件缺陷可以借助自動化測試能夠得以發(fā)現(xiàn)。由于這二者間具有交叉的部分,因此尚有5%左右的軟件缺陷需要通過其他方式進(jìn)行發(fā)現(xiàn)和修正。第18頁,共40頁,2024年2月25日,星期天9.軟件測試必須有預(yù)期結(jié)果
軟件缺陷是經(jīng)過對比而得出來的。沒有預(yù)期結(jié)果的測試是絕不可以的。我們事先不知道或是無法肯定預(yù)期的結(jié)果,我們必然無法了解測試正確性。第19頁,共40頁,2024年2月25日,星期天10.應(yīng)當(dāng)把“盡早地和不斷地進(jìn)行軟件測試”作為軟件測試者的座右銘(想想蟲卵、小蟲、大蟲)
第20頁,共40頁,2024年2月25日,星期天11.程序員應(yīng)該避免檢查自己的程序。Why?程序員從來不會承認(rèn)自己寫的程序有錯誤程序員的測試思路有明顯的局限性多數(shù)程序員沒有經(jīng)過嚴(yán)格正規(guī)的職業(yè)訓(xùn)練,常忽視測試程序員無良好的BUG跟蹤和回歸測試的習(xí)慣第21頁,共40頁,2024年2月25日,星期天12追溯至用戶需求
13及時更新測試第22頁,共40頁,2024年2月25日,星期天軟件測試關(guān)鍵問題
(1)測試由誰來執(zhí)行?通常軟件產(chǎn)品的開發(fā)設(shè)計包括開發(fā)者和測試者兩種角色。開發(fā)者:通過開發(fā)形成產(chǎn)品,如分析、設(shè)計、編碼調(diào)試或文檔編制等。測試者通過測試來檢測產(chǎn)品中是否存在缺陷,包括根據(jù)特定目的而設(shè)計測試用例、構(gòu)造測試、執(zhí)行測試和評價測試結(jié)果等。通常由開發(fā)者負(fù)責(zé)完成第一階段的代碼單元測試,而系統(tǒng)測試則由獨立的測試人員或?qū)iT的測試機(jī)構(gòu)進(jìn)行。按照測試實施組織劃分,軟件測試可分為開發(fā)方測試、用戶測試(β測試)、第三方測試。第23頁,共40頁,2024年2月25日,星期天軟件測試關(guān)鍵問題開發(fā)方測試通常也叫“驗證測試”或“α測試”。開發(fā)方通過檢測和提供客觀證據(jù),證實軟件的實現(xiàn)是否滿足規(guī)定的需求。驗證測試是在軟件開發(fā)環(huán)境下,由開發(fā)者檢測與證實軟件的實現(xiàn)是否滿足軟件設(shè)計說明或軟件需求說明的要求。主要是指在軟件開發(fā)完成以后,開發(fā)方對要提交的軟件進(jìn)行全面的自我檢查與驗證,可以和軟件的“系統(tǒng)測試”一并進(jìn)行。第24頁,共40頁,2024年2月25日,星期天軟件測試關(guān)鍵問題用戶測試在用戶的應(yīng)用環(huán)境下,用戶通過運行和使用軟件,檢測與核實軟件實現(xiàn)是否符合自己預(yù)期的要求。通常情況用戶測試不是指用戶的“驗收測試”,而是指用戶的使用性測試,由用戶找出軟件的應(yīng)用過程中發(fā)現(xiàn)的軟件缺陷與問題,并對使用質(zhì)量進(jìn)行評價。β測試通常被看成是一種“用戶測試”。β測試主要是把軟件產(chǎn)品有計劃地免費分發(fā)到目標(biāo)市場,讓用戶大量使用,并評價、檢查軟件。通過用戶各種方式的大量使用,來發(fā)現(xiàn)軟件存在的問題與錯誤,把信息反饋給開發(fā)者修改。第25頁,共40頁,2024年2月25日,星期天軟件測試關(guān)鍵問題第三方測試介于軟件開發(fā)和用戶方之間的測試組織的測試。也稱為獨立測試。軟件質(zhì)量工程強(qiáng)調(diào)開展獨立驗證和確認(rèn)(IV&V)活動。由在技術(shù)、管理和財務(wù)上與開發(fā)方和用戶方相對獨立的組織進(jìn)行的軟件測試。一般情況下是在模擬用戶真實應(yīng)用環(huán)境下,進(jìn)行軟件確認(rèn)測試。第26頁,共40頁,2024年2月25日,星期天軟件測試關(guān)鍵問題(2)測試什么?軟件產(chǎn)品的組成:軟件產(chǎn)品到底是什么?并不僅僅是從軟盤或者光盤安裝到計算機(jī)上的程序,還包括許多隱含的內(nèi)容,容易被忽視,但這些也往往是包含軟件缺陷的測試對象,需要軟件測試員銘記在心!第27頁,共40頁,2024年2月25日,星期天軟件測試關(guān)鍵問題軟件測試對象:軟件測試不僅僅是對程序的測試,而是貫穿于軟件定義和開發(fā)的整個過程。因此,軟件開發(fā)過程中產(chǎn)生的需求分析、概要設(shè)計、詳細(xì)設(shè)計以及編碼等各個階段所得到的文檔,包括需求規(guī)格說明、概要設(shè)計說明、詳細(xì)設(shè)計規(guī)格說明以及源程序,都是軟件測試的對象。軟件測試在軟件生命周期,也就是從開發(fā)設(shè)計、運行、直到結(jié)束使用的全過程中,主要橫跨以下兩個測試階段:第28頁,共40頁,2024年2月25日,星期天軟件測試關(guān)鍵問題第一階段:單元測試階段,即在每個模塊編寫出以后所做的必要測試。第二階段:綜合測試階段,即在完成單元測試后進(jìn)行的測試,如集成測試、系統(tǒng)測試、驗收測試等。研究表明,通常表現(xiàn)在程序中的故障,并不一定是由編碼所引起的,可能是需求分析,概要設(shè)計、詳細(xì)設(shè)計等階段的問題所致,要排除故障就必須追溯到前期的工作(這就涉及到下一個問題——什么時候進(jìn)行測試)第29頁,共40頁,2024年2月25日,星期天軟件測試關(guān)鍵問題(3)什么時候進(jìn)行測試。測試可以是一個與開發(fā)并行的過程,也可以是開發(fā)完成某個階段任務(wù)后的的活動,即模塊開發(fā)結(jié)束之后,還可以在各模塊裝配成為一個完整的程序之后再進(jìn)行測試。第30頁,共40頁,2024年2月25日,星期天軟件測試關(guān)鍵問題(4)怎樣進(jìn)行測試。對軟件進(jìn)行測試就是根據(jù)軟件的功能規(guī)范說明和程序?qū)崿F(xiàn),利用各種測試方法,生成有效的測試用例,對軟件進(jìn)行測試。第31頁,共40頁,2024年2月25日,星期天軟件測試關(guān)鍵問題(5)測試停止的標(biāo)準(zhǔn)是什么從現(xiàn)實和經(jīng)濟(jì)的角度來看,對軟件進(jìn)行完全測試是不可能的。那么,什么時候停止測試呢?因為無法判斷當(dāng)前查出的故障是否為最后一個故障,所以決定什么時候停止測試是一件很困難的事。測試完成的傳統(tǒng)標(biāo)準(zhǔn)是分配的測試時間用完了或完成了所有的測試又沒有檢測出故障。但這兩個完成標(biāo)準(zhǔn)都沒有什么實用價值。實用的停止測試標(biāo)準(zhǔn)應(yīng)該基于以下幾個因素:成功地采用了具體的測試用例設(shè)計方法;每一類覆蓋的覆蓋率;第32頁,共40頁,2024年2月25日,星期天軟件測試關(guān)鍵問題故障檢測率(即每一單元測試時間內(nèi)檢測出的故障數(shù))低于指定的限度?;诠收蠙z測數(shù)量的標(biāo)準(zhǔn)必須注明故障的嚴(yán)重性程度。檢測出故障的具體數(shù)量或消耗的具體時間等。常用的停止測試的標(biāo)準(zhǔn)有5類測試超過了預(yù)定的時間,停止測試;執(zhí)行了所有測試用例但沒有發(fā)現(xiàn)故障,停止測試;使用特定的測試用例設(shè)計方法作為判斷測試停止的基礎(chǔ);正面指出測試停止的要求,比如發(fā)現(xiàn)并修改70個軟件故障;根據(jù)單位時間內(nèi)查出故障的數(shù)量決定是否停止測試。第33頁,共40頁,2024年2月25日,星期天軟件測試與軟件質(zhì)量事實上,對于軟件來講,不論采用什么技術(shù)和什么方法,軟件中仍然會有錯。采用新的語言、先進(jìn)的開發(fā)方式、完善的開發(fā)過程,可以減少錯誤的引入,但是不可能完全杜絕軟件中的錯誤,這些引入的錯誤需要通過測試來發(fā)現(xiàn),軟件中的錯誤密度也需要測試來進(jìn)行估計。統(tǒng)計表明,在典型的軟件開發(fā)項目中,軟件測試工作量往往占軟件開發(fā)總工作量的40%以上。而在軟件開發(fā)的總成本中,用在測試上的開銷要占30%到50%。
第34頁,共40頁,2024年2月25日,星期天軟件測試與軟件質(zhì)量軟件質(zhì)量保證(SQA)的職能是向管理層提供正確的可視化的信息,從而促進(jìn)與協(xié)助流程改進(jìn)。SQA還充當(dāng)測試工作的指導(dǎo)者和監(jiān)督者,幫助軟件測試建立質(zhì)量標(biāo)準(zhǔn)、測試過程評審方法和測試流程,同時通過跟蹤、審計和評審,及時發(fā)現(xiàn)軟件測試過程中的問題,從而幫助改進(jìn)測試或整個開發(fā)的流程等,因此有了SQA,測試工作就可以被客觀的檢查與評價,同時也可以協(xié)助測試流程的改進(jìn)。第35頁,共40頁,2024年2月25日,星期天軟件測試與軟件質(zhì)量而測試為SQA提供數(shù)據(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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【名師一號】2022屆高三歷史一輪復(fù)習(xí)調(diào)研試題:第七單元-古代中國經(jīng)濟(jì)的基本結(jié)構(gòu)與特點7-14a
- 新時代農(nóng)業(yè)教育發(fā)展的對策
- 公司各部門名稱文對照
- (完整)新媒體運營工作計劃表
- 郵件包裹運輸法規(guī)更新解讀考核試卷
- 高鐵車組車輛結(jié)構(gòu)優(yōu)化設(shè)計考核試卷
- 香料作物種植風(fēng)險管理與防范考核試卷
- 零售店鋪商圈分析與市場定位考核試卷
- 鐵路橋梁維修與加固技術(shù)考核試卷
- 隧道機(jī)械化快速施工技術(shù)考核試卷
- 火化證明格式
- 機(jī)械原理課程設(shè)計-自動蓋章機(jī)
- e乙二醇精制車間設(shè)備布置圖
- 行政強(qiáng)制法講座-PPT課件
- 2022年新媒體編輯實戰(zhàn)教程測試題及答案(題庫)
- 崗位現(xiàn)場應(yīng)急處置方案卡全套(全套20頁)
- 涼席竹片銑槽機(jī)(課程設(shè)計)
- 高壓線防護(hù)搭設(shè)方案
- 綜合機(jī)械化固體充填采煤技術(shù)要求-編制說明
- 十人聯(lián)名推薦表
- 七、分蛋糕博弈
評論
0/150
提交評論