版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
軟件測試基礎(chǔ)1第1頁,課件共87頁,創(chuàng)作于2023年2月【軟件測試行業(yè)是如何產(chǎn)生的?】
軟件測試崗位的出現(xiàn),“源自信息產(chǎn)業(yè)的發(fā)展以及軟件企業(yè)自身、用戶成熟度的不斷加深?!薄迦A大學(xué)鄭人杰計(jì)算機(jī)使用越來越普及,越來越多的領(lǐng)域使用了計(jì)算機(jī),特別是一些重要領(lǐng)域如國防、銀行、金融、通訊、航天等,對軟件質(zhì)量要求很高。同時(shí)一些重大事故的發(fā)生,也引發(fā)了人們對軟件質(zhì)量的關(guān)注。如2002年歐洲載重10噸的阿麗亞娜5型火箭發(fā)射失敗,最后證實(shí)是軟件質(zhì)量問題;還有國內(nèi)的一些銀行金融系統(tǒng),因軟件質(zhì)量問題不得不暫停營業(yè)。毋庸置疑,在經(jīng)歷了長期的不為人知和可有可無后,軟件測試工程師目前已變的炙手可熱。
2第2頁,課件共87頁,創(chuàng)作于2023年2月【軟件測試行業(yè)的現(xiàn)狀】中國軟件產(chǎn)業(yè)存在著“重開發(fā)、輕測試”的傾向,在造成軟件產(chǎn)品質(zhì)量問題日漸突出的同時(shí),也突顯了中國軟件測試人才的極度匱乏。制約著軟件整體質(zhì)量的提高,同時(shí)也加重了軟件產(chǎn)業(yè)的開發(fā)和服務(wù)成本負(fù)擔(dān)。在中國一百二十多萬軟件從業(yè)人員中,真正能擔(dān)當(dāng)軟件測試職責(zé)的不超過5萬人。在軟件業(yè)發(fā)達(dá)國家,軟件測試人員與開發(fā)人員之比接近1:1,在中國該比例僅為1:8左右,很多企業(yè)沒有專門的測試職位。隨著中國加入WTO后,相信不久的將來,國內(nèi)軟件測試人員與開發(fā)人員的比例將會達(dá)到甚至超出1:1。
3第3頁,課件共87頁,創(chuàng)作于2023年2月為了同國際IT行業(yè)接軌,軟件測試行業(yè)近幾年有了飛速的發(fā)展,以前人們認(rèn)為的“重開發(fā)、輕測試”傾向有了很大的改觀,測試人員的缺口也越來越大,下面這個(gè)圖標(biāo)分析了近四年國內(nèi)軟件測試人才的需求。4第4頁,課件共87頁,創(chuàng)作于2023年2月【軟件測試前景如何?】
隨著中國軟件市場的發(fā)展,越來越多的國外資金投向中國軟件行業(yè)。據(jù)報(bào)道,中國軟件外包市場的潛力和機(jī)會已遠(yuǎn)遠(yuǎn)超過軟件王國印度,不過由于軟件人才的嚴(yán)重不足致使我國軟件發(fā)展遭遇“瓶頸”。國家為了大力培養(yǎng)軟件人才,不斷采取積極有效的措施。軟件測試就業(yè)市場行情也十分樂觀,最近,在北京的一次IT人才招聘會上,有20多家軟件企業(yè)亮出底薪8000元招軟件測試工程師的誘人廣告。5第5頁,課件共87頁,創(chuàng)作于2023年2月【軟件測試是青春飯嗎?】
軟件測試工作是對質(zhì)量的把關(guān),其中包含技術(shù)及管理等方面的工作,工作相對穩(wěn)定,對年齡沒有限制。而且隨著項(xiàng)目經(jīng)驗(yàn)的不斷增長和對行業(yè)背景的深入了解,會越老越吃香。軟件測試員的一生如同一名醫(yī)生的一生,隨著職業(yè)閱歷和臨床經(jīng)驗(yàn)的豐富累積,到一定的年齡他們通過“望聞問切”就能知道毛病出在什么地方。因此,有人說軟件測試員和醫(yī)生是最不需要用“青春”來保證和延續(xù)自己職業(yè)壽命的職業(yè)。由于軟件測試人才更強(qiáng)調(diào)經(jīng)驗(yàn)積累,在幾年的測試經(jīng)驗(yàn)背景下,可以逐步轉(zhuǎn)向管理或者資深測試工程師,擔(dān)當(dāng)測試經(jīng)理或者QA部門主管,所以職業(yè)壽命更長;
另一方面,由于國內(nèi)軟件測試工程師人才奇缺,并且一般只有大中型企業(yè)才會單獨(dú)設(shè)立軟件測試部門,所以很有保障,待遇普遍較高。
6第6頁,課件共87頁,創(chuàng)作于2023年2月軟件測試工程師的進(jìn)階之路初級測試工程師 測試工程師/程序分析員
高級測試工程師/程序分析員 測試組負(fù)責(zé)人 測試/編程負(fù)責(zé)人
測試/質(zhì)量保證/開發(fā)(項(xiàng)目)經(jīng)理
計(jì)劃經(jīng)理軟件測試人員的三大發(fā)展方向一是走軟件測試的技術(shù)路線,成長為高級軟件測試工程師。二是向管理方向發(fā)展,從測試工程師到組長,再到測試經(jīng)理,以至更高的職位。三是可以換職業(yè),做項(xiàng)目管理或做開發(fā)人員。具有1~2年經(jīng)驗(yàn)的測試工程師或程序員。編寫自動(dòng)測試腳本程序并擔(dān)任測試編程初期領(lǐng)導(dǎo)工作。拓展編程語言、操作系統(tǒng)、網(wǎng)絡(luò)與數(shù)據(jù)庫技能。剛?cè)腴T擁有計(jì)算機(jī)科學(xué)學(xué)位的個(gè)人或具有一些手工測試經(jīng)驗(yàn)的個(gè)人。開發(fā)測試腳本并開始熟悉測試生存周期和測試技術(shù)。具有3~4年經(jīng)驗(yàn)的測試工程師或程序員。幫助開發(fā)或維護(hù)測試或編程標(biāo)準(zhǔn)與過程,負(fù)責(zé)同級的評審,并為其他初級的測試工程師或程序員充當(dāng)顧問。具有4~6年經(jīng)驗(yàn)的測試工程師或程序員。負(fù)責(zé)管理1至3名測試工程師或程序員。擔(dān)負(fù)一些進(jìn)度安排和工作規(guī)模/成本估算職責(zé)。具有6~10年經(jīng)驗(yàn)的測試工程師或程序員。負(fù)責(zé)管理8至10名技術(shù)人員。負(fù)責(zé)進(jìn)度安排、工作規(guī)模/成本估算、按進(jìn)度表和預(yù)算目標(biāo)交付產(chǎn)品。具有10多年的工作經(jīng)驗(yàn)。管理8名或更多的人員參加的1個(gè)或多個(gè)項(xiàng)目。負(fù)責(zé)這一領(lǐng)域(測試/質(zhì)量保證/開發(fā))內(nèi)的整個(gè)開發(fā)生存周期業(yè)務(wù)。具有15年以上開發(fā)與支持(測試/質(zhì)量保證)活動(dòng)方面的經(jīng)驗(yàn)。管理從事若干項(xiàng)目的人員以及整個(gè)開發(fā)生存周期。負(fù)責(zé)把握項(xiàng)目方向與盈虧責(zé)任。7第7頁,課件共87頁,創(chuàng)作于2023年2月第一章軟件測試基礎(chǔ)知識1.1關(guān)于軟件測試課程1.2軟件開發(fā)過程1.3軟件質(zhì)量保證1.4理解軟件測試1.5軟件測試的分類1.6軟件測試工作流程1.7軟件測試的職業(yè)要求8第8頁,課件共87頁,創(chuàng)作于2023年2月編程大師說:“任何一個(gè)程序,無論它多么小,總存在著錯(cuò)誤?!背鯇W(xué)者不相信大師的話,他問:“如果一個(gè)程序小得只執(zhí)行一個(gè)簡單的功能,那會怎樣?”“這樣的一個(gè)程序沒有意義,”大師說,“但如果這樣的程序存在的話,操作系統(tǒng)沒有意義最后將失效,產(chǎn)生一個(gè)錯(cuò)誤?!钡鯇W(xué)者不滿足,他問:“如果操作系統(tǒng)不失效,那么會怎樣?”“沒有不失效的操作系統(tǒng),”大師說,“但如果這樣的操作系統(tǒng)存在的話,硬件最后將失效,產(chǎn)生一個(gè)錯(cuò)誤?!背鯇W(xué)者仍不滿足,再問:“如果硬件不失效,那么會怎樣?”大師長嘆一聲道:“沒有不失效的硬件。但如果這樣的硬件存在的話,用戶就會想讓那個(gè)程序做一件不同的事,這件事也是一個(gè)錯(cuò)誤?!睕]有錯(cuò)誤的程序世間難求9第9頁,課件共87頁,創(chuàng)作于2023年2月1.1關(guān)于軟件測試課程有關(guān)測試的思考題:軟件測試是一門非常重要的學(xué)科,主要研究內(nèi)容是什么?軟件測試需要什么樣的專業(yè)基礎(chǔ)?軟件質(zhì)量到底是什么?測試的目標(biāo)是什么?開發(fā)一個(gè)測試系統(tǒng)之前你是否明白:測試什么?怎么測試?測試效果如何?10第10頁,課件共87頁,創(chuàng)作于2023年2月1.2軟件開發(fā)過程軟件開發(fā)過程幾個(gè)主要階段:定義:明確軟件開發(fā)的目標(biāo)、軟件的需求計(jì)劃:制訂軟件開發(fā)所涉及的各種計(jì)劃實(shí)現(xiàn):進(jìn)行設(shè)計(jì)、編碼、文檔編寫工作穩(wěn)定化:以測試和缺陷修復(fù)工作為主部署:安裝、提交開發(fā)完成的軟件11第11頁,課件共87頁,創(chuàng)作于2023年2月軟件生命周期模型軟件生存周期定義、計(jì)劃、實(shí)現(xiàn)、穩(wěn)定化、部署、運(yùn)行與維護(hù)軟件生存期模型
瀑布模型原型模型增量模型螺旋模型12第12頁,課件共87頁,創(chuàng)作于2023年2月瀑布模型整個(gè)開發(fā)包括六個(gè)階段:計(jì)劃、需求分析、設(shè)計(jì)、編碼、測試、運(yùn)行維護(hù)。六個(gè)階段自上而下、相互銜接,以固定的次序來進(jìn)行。特點(diǎn)階段的順序性和依賴性推遲實(shí)現(xiàn)的觀點(diǎn)質(zhì)量保證存在問題不適合需求模糊的系統(tǒng)13第13頁,課件共87頁,創(chuàng)作于2023年2月原型模型先建立一個(gè)能反映用戶需求的原型系統(tǒng),使得用戶和開發(fā)者可以對目標(biāo)系統(tǒng)的概貌進(jìn)行評價(jià)和判斷,然后對原型進(jìn)行反復(fù)的擴(kuò)充、改進(jìn)和求精,最終建立符合用戶需求的目標(biāo)系統(tǒng)。
特點(diǎn)
快速開發(fā)工具循環(huán)低成本種類
漸進(jìn)型拋棄型14第14頁,課件共87頁,創(chuàng)作于2023年2月增量模型增量模型中,在每個(gè)階段都生成軟件的一個(gè)可發(fā)布版本。這些階段是交錯(cuò)進(jìn)行的。在增量模型中,軟件版本是逐步完善的。在原型中,每個(gè)階段是發(fā)布一個(gè)原型,而在增量模型中,是完成一個(gè)正式的版本。分析設(shè)計(jì)編碼分析設(shè)計(jì)編碼測試測試
進(jìn)度
15第15頁,課件共87頁,創(chuàng)作于2023年2月螺旋模型螺旋模型將瀑布模型和快速原型模型結(jié)合起來,并且加入了兩種模型均忽略的風(fēng)險(xiǎn)分析。螺旋模型的每一周期都包括制定計(jì)劃、風(fēng)險(xiǎn)分析、實(shí)施工程和評審四個(gè)階段。16第16頁,課件共87頁,創(chuàng)作于2023年2月1.3軟件質(zhì)量保證不貪污的官就是好官嗎?“運(yùn)行正確”的程序就是高質(zhì)量的程序嗎?也許運(yùn)行速度很低并且浪費(fèi)內(nèi)存;也許代碼寫得一塌糊涂,后續(xù)很難維護(hù)和更新。軟件質(zhì)量是軟件的生命,它直接影響軟件的使用與維護(hù)。
17第17頁,課件共87頁,創(chuàng)作于2023年2月通常軟件質(zhì)量由以下幾方面進(jìn)行評價(jià)。
①軟件需求是衡量軟件質(zhì)量的基礎(chǔ),不符合需求的軟件就不具備質(zhì)量。設(shè)計(jì)的軟件應(yīng)在功能、性能等方面都符合要求,并能可靠地運(yùn)行。----能用②軟件結(jié)構(gòu)良好,易讀、易于理解,并易于修改、維護(hù)。-----好修③軟件系統(tǒng)具有友好的用戶界面,便于用戶使用。----好用④軟件生存周期中各階段文檔齊全、規(guī)范,便于配置、管理。----好看18第18頁,課件共87頁,創(chuàng)作于2023年2月一、軟件質(zhì)量定義軟件質(zhì)量優(yōu)秀,是因?yàn)椋簼M足用戶的需求合理進(jìn)度、成本、功能關(guān)系具備擴(kuò)展性和靈活性,能夠適應(yīng)一定程度的需求變化能夠有效的處理例外的情況保持成本和性能的平衡一個(gè)系統(tǒng)、組件或過程符合指定要求的程度一個(gè)系統(tǒng)、組件或過程滿足客戶或用戶期望的程度19第19頁,課件共87頁,創(chuàng)作于2023年2月二、軟件錯(cuò)誤定義1、什么是軟件錯(cuò)誤(bug)?當(dāng)程序沒有實(shí)現(xiàn)其最終用戶合理預(yù)期的功能要求時(shí),就表現(xiàn)為軟件錯(cuò)誤2、錯(cuò)誤的幾種情況:未將規(guī)格說明正確實(shí)現(xiàn)。--錯(cuò)誤百出規(guī)定的或預(yù)期的需求未體現(xiàn)在產(chǎn)品中(可能未將規(guī)格說明全面實(shí)現(xiàn),也可能在開發(fā)過程中追加了需求。)--缺斤短兩規(guī)格說明并未規(guī)定的需求被納入產(chǎn)品,得到實(shí)現(xiàn)。--畫蛇添足20第20頁,課件共87頁,創(chuàng)作于2023年2月3、錯(cuò)誤一定是由編碼引起的嗎?需求分析軟件設(shè)計(jì)以上兩個(gè)階段中的錯(cuò)誤,都有可能是軟件錯(cuò)誤的根源21第21頁,課件共87頁,創(chuàng)作于2023年2月三、軟件質(zhì)量保證定義1、什么是軟件質(zhì)量保證(SQA)為了確保軟件開發(fā)過程和結(jié)果符合預(yù)期的要求,而建立的一系列規(guī)程,以及依照規(guī)程和計(jì)劃采取的一系列活動(dòng)及其結(jié)果評價(jià)。22第22頁,課件共87頁,創(chuàng)作于2023年2月2、建立全程SQA的觀點(diǎn)。
為了在軟件開發(fā)過程中保證軟件的質(zhì)量,軟件的質(zhì)量保證活動(dòng)應(yīng)貫穿整個(gè)軟件生存周期的每一個(gè)階段。軟件質(zhì)量保證的工作從項(xiàng)目一開始就應(yīng)介入。3、SQA的手段
軟件的質(zhì)量保證的措施主要有檢查、評審和測試。23第23頁,課件共87頁,創(chuàng)作于2023年2月4、SQA軟件質(zhì)量保證的具體內(nèi)容技術(shù)方法的應(yīng)用正式技術(shù)評審的實(shí)施軟件測試標(biāo)準(zhǔn)的執(zhí)行修改的控制度量記錄和記錄保存軟件質(zhì)量保證不等于軟件測試;軟件的質(zhì)量也不能完全依賴軟件測試;24第24頁,課件共87頁,創(chuàng)作于2023年2月1.3測試一個(gè)小軟件
某軟件系統(tǒng)的登錄界面用戶需求----用戶名和密碼放在名為list.txt的文件中;輸入正確的用戶名和密碼,進(jìn)入系統(tǒng);不支持空的用戶名和密碼;如何測試?有何思路?25第25頁,課件共87頁,創(chuàng)作于2023年2月1.4理解軟件測試排除軟件錯(cuò)誤的重要手段軟件測試測試在軟件開發(fā)中占有重要地位測試成本占有開發(fā)成本的近一半26第26頁,課件共87頁,創(chuàng)作于2023年2月軟件開發(fā)成本分布軟件類型開發(fā)成本按階段分布%需求與設(shè)計(jì)實(shí)現(xiàn)測試控制軟件462034航空航天軟件342046操作系統(tǒng)331750科技計(jì)算軟件442630商業(yè)應(yīng)用軟件44282827第27頁,課件共87頁,創(chuàng)作于2023年2月1、軟件錯(cuò)誤的來源軟件開發(fā)中,在需求、設(shè)計(jì)、編碼階段都有可能發(fā)生錯(cuò)誤。2、什么是軟件測試?軟件測試就是為了發(fā)現(xiàn)程序中的錯(cuò)誤而分析或執(zhí)行程序的過程。軟件測試是軟件質(zhì)量保證的重要手段。1.4.1基本概念28第28頁,課件共87頁,創(chuàng)作于2023年2月3、軟件測試的手段軟件測試有兩個(gè)基本的手段:分析:不實(shí)際運(yùn)行軟件,包括走查、代碼審查、代碼評價(jià)、桌面檢查;---靜態(tài)測試運(yùn)行:在目標(biāo)環(huán)境中實(shí)際運(yùn)行軟件,---動(dòng)態(tài)測試29第29頁,課件共87頁,創(chuàng)作于2023年2月4、軟件測試的功能軟件測試有兩個(gè)基本的功能:驗(yàn)證(Verification)---保證軟件正確的實(shí)現(xiàn)了特定功能;如:2+3?=5確認(rèn)(Validation)---保證最終產(chǎn)品滿足系統(tǒng)需求;如:MIS系統(tǒng)是否能滿足圖書館管理的需求?30第30頁,課件共87頁,創(chuàng)作于2023年2月5、軟件測試的時(shí)機(jī)是否等軟件編碼之后,才進(jìn)行軟件測試?測試和改正活動(dòng)應(yīng)在軟件生存周期任何階段進(jìn)行;錯(cuò)誤被發(fā)現(xiàn)的越早,修改成本越??;31第31頁,課件共87頁,創(chuàng)作于2023年2月6、軟件測試人員需要具備哪些知識?軟件測試技術(shù)被測應(yīng)用程序及其相關(guān)領(lǐng)域;32第32頁,課件共87頁,創(chuàng)作于2023年2月測試的目的:測試是程序執(zhí)行的過程,目的在于發(fā)現(xiàn)錯(cuò)誤(缺陷)好的測試用例能有效地發(fā)現(xiàn)別的測試用例未發(fā)現(xiàn)的錯(cuò)誤(缺陷)成功的測試是發(fā)現(xiàn)了未曾發(fā)現(xiàn)的錯(cuò)誤(缺陷)33第33頁,課件共87頁,創(chuàng)作于2023年2月測試的對象測試數(shù)據(jù)程序P比較結(jié)果數(shù)據(jù)預(yù)期數(shù)據(jù)相符不符追查缺陷程序測試:發(fā)現(xiàn)程序中的錯(cuò)誤(缺陷)34第34頁,課件共87頁,創(chuàng)作于2023年2月軟件測試原則:測試能提高軟件的質(zhì)量,但是提高質(zhì)量不能依賴測試測試只能證明錯(cuò)誤存在,不能證明錯(cuò)誤不存在測試的主要困難是不知道如何進(jìn)行有效地測試,也不知道什么時(shí)候可以放心地結(jié)束測試每個(gè)程序員都應(yīng)當(dāng)測試自己的程序(份內(nèi)之事),但是不能作為該程序已經(jīng)通過測試的依據(jù)(所以項(xiàng)目需要獨(dú)立測試人員)80-20原則:80%的錯(cuò)誤聚集在20%的模塊中,經(jīng)常出錯(cuò)的模塊改錯(cuò)后還會經(jīng)常出錯(cuò)測試應(yīng)當(dāng)循序漸進(jìn),不要企圖一次性干完,注意“欲速則不達(dá)”35第35頁,課件共87頁,創(chuàng)作于2023年2月測試越細(xì)越好嗎?
不足測試過度測試測試的程度t未發(fā)現(xiàn)的缺陷數(shù)測試成本最佳測試點(diǎn)測試成本曲線36第36頁,課件共87頁,創(chuàng)作于2023年2月這個(gè)流程圖,其中包括了一個(gè)執(zhí)行達(dá)20次的循環(huán)。那么它所包含的不同執(zhí)行路徑數(shù)高達(dá)520條,若要對它進(jìn)行窮舉測試,覆蓋所有的路徑。假使測試程序?qū)γ恳粭l路徑進(jìn)行測試需要1毫秒,同樣假定一天工作24小時(shí),一年工作365天,那么要想把如圖所示的小程序的所有路徑測試完,則需要3024年。無論是黑盒測試還是白盒測試,進(jìn)行窮舉測試都是不可能的。為什么不可能做窮舉測試37第37頁,課件共87頁,創(chuàng)作于2023年2月為什么不可能做窮舉測試程序PXYZ若X、Y為所有可能的整數(shù),在字長32位機(jī)上測試
X1、Y1
Z1 . . . Xn、Yn
Znn=232232=2641.84101938第38頁,課件共87頁,創(chuàng)作于2023年2月1.4.2測試用例1、什么是測試用例?測試用例是由前提條件和操作步驟、預(yù)期結(jié)果、實(shí)際結(jié)果構(gòu)成。測試用例(testcase),就是測試人員執(zhí)行的動(dòng)作。39第39頁,課件共87頁,創(chuàng)作于2023年2月案例:電話銀行40第40頁,課件共87頁,創(chuàng)作于2023年2月3、通過運(yùn)行軟件進(jìn)行測試時(shí),要做什么?構(gòu)造測試用例執(zhí)行測試用例,檢查結(jié)果是否與期望的輸出一致4、在編寫測試用例時(shí),依據(jù)是什么?需要以軟件需求為依據(jù)。2、測試用例的三要素前提條件和操作步驟、預(yù)期結(jié)果、實(shí)際結(jié)果41第41頁,課件共87頁,創(chuàng)作于2023年2月1.4.3軟件錯(cuò)誤產(chǎn)生原因:開發(fā)人員不太了解需求軟件系統(tǒng)越來越復(fù)雜,開發(fā)人員不太可能精通所有的技術(shù)技術(shù)文檔普遍比較糟糕,文檔本身就有錯(cuò)誤軟件需求、設(shè)計(jì)報(bào)告、程序經(jīng)常發(fā)生變更,每次變更都可能產(chǎn)生新的錯(cuò)誤任何人在編程時(shí)都可能犯錯(cuò)誤,導(dǎo)致程序中有錯(cuò)誤人們常處于進(jìn)度的壓力之下,急忙之下容易產(chǎn)生錯(cuò)誤人們過于自信,不真實(shí)的“沒問題”將產(chǎn)生真正的問題42第42頁,課件共87頁,創(chuàng)作于2023年2月1.5軟件測試的分類對于軟件測試,可以從不同的角度加以分類:基于是否關(guān)注軟件結(jié)構(gòu)與算法黑盒測試白盒測試基于是否執(zhí)行被測試軟件靜態(tài)測試動(dòng)態(tài)測試基于測試的不同階段單元測試集成測試系統(tǒng)測試驗(yàn)收測試43第43頁,課件共87頁,創(chuàng)作于2023年2月軟件測試的內(nèi)容(一)回歸測試功能測試負(fù)載測試:最大負(fù)載壓力測試性能測試易用性測試安裝與反安裝測試44第44頁,課件共87頁,創(chuàng)作于2023年2月軟件測試的內(nèi)容(二)恢復(fù)測試:從故障中恢復(fù)安全性測試兼容性測試內(nèi)存泄漏測試比較測試Alpha測試Beta測試45第45頁,課件共87頁,創(chuàng)作于2023年2月1.5.1黑盒測試和白盒測試黑盒測試白盒測試兩種測試方法從不同的角度出發(fā),反映了軟件的不同側(cè)面,也適用于不同的開發(fā)環(huán)境46第46頁,課件共87頁,創(chuàng)作于2023年2月輸入輸出黑盒測試又稱功能測試、數(shù)據(jù)驅(qū)動(dòng)測試或基于規(guī)格說明的測試,也可被成為用戶測試,主要應(yīng)用于快速應(yīng)用開發(fā)(RAD)環(huán)境該方法把被測試對象看成一個(gè)黑盒子,測試人員完全不考慮程序的內(nèi)部結(jié)構(gòu)和處理過程,只在軟件的界面上進(jìn)行測試。
47第47頁,課件共87頁,創(chuàng)作于2023年2月白盒測試又稱結(jié)構(gòu)測試、邏輯驅(qū)動(dòng)測試或基于程序本身的測試,也可成為程序員測試,主要應(yīng)用于結(jié)構(gòu)化開發(fā)環(huán)境應(yīng)用程序---根據(jù)被測程序的內(nèi)部邏輯結(jié)構(gòu)來設(shè)計(jì)測試用例。---透明的盒子里包含著程序?qū)崿F(xiàn)的細(xì)節(jié),軟件測試人員就會選擇特定的測試用例來驗(yàn)證程序是否有錯(cuò)。48第48頁,課件共87頁,創(chuàng)作于2023年2月舉例:開始(A>1)AND(B=0)(A=2)OR(X>1)返回X=X/AX=X+1FFTTabdce49第49頁,課件共87頁,創(chuàng)作于2023年2月黑盒測試與白盒測試比較
黑盒測試是從用戶觀點(diǎn),按規(guī)格說明書要求的輸入數(shù)據(jù)與輸出數(shù)據(jù)的對應(yīng)關(guān)系設(shè)計(jì)測試用例,是根據(jù)程序外部特征進(jìn)行測試。
白盒測試是根據(jù)程序內(nèi)部邏輯結(jié)構(gòu)進(jìn)行測試。50第50頁,課件共87頁,創(chuàng)作于2023年2月黑盒測試與白盒測試優(yōu)缺點(diǎn)比較黑盒測試
白盒測試
優(yōu)點(diǎn)缺點(diǎn)性質(zhì)①適用于各階段測試②從產(chǎn)品功能角度測試③容易入手生成測試數(shù)據(jù)①可構(gòu)成測試數(shù)據(jù)使特定程序部分得到測試②有一定的充分性度量手段③可或較多工具支持①某些代碼得不到測試②如果規(guī)格說明有誤,則無法發(fā)現(xiàn)③不易進(jìn)行充分性測試①不易生成測試數(shù)據(jù)(通常)②無法對未實(shí)現(xiàn)規(guī)格說明的部分進(jìn)行測試③工作量大,通常只用于單元測試,有應(yīng)用局限是一種確認(rèn)技術(shù),回答“我們在構(gòu)造一個(gè)正確的系統(tǒng)嗎?”是一種驗(yàn)證技術(shù),回答“我們在正確地構(gòu)造一個(gè)系統(tǒng)嗎?”51第51頁,課件共87頁,創(chuàng)作于2023年2月1.5.2靜態(tài)測試和動(dòng)態(tài)測試靜態(tài)測試不執(zhí)行被測試的軟件。類似于汽車檢查。52第52頁,課件共87頁,創(chuàng)作于2023年2月動(dòng)態(tài)測試是在測試過程中執(zhí)行被測試軟件,類似于試車。53第53頁,課件共87頁,創(chuàng)作于2023年2月1.5.3測試不同階段按測試階段分類,測試可分4個(gè)主要階段:單元測試、集成測試、系統(tǒng)測試和驗(yàn)收測試。這是一種從小到大、循序漸進(jìn)的測試過程。54第54頁,課件共87頁,創(chuàng)作于2023年2月單元測試是對程序員編寫完成的一個(gè)個(gè)程序單元進(jìn)行測試。是對軟件設(shè)計(jì)的最小單元——模塊進(jìn)行正確性檢驗(yàn)的測試工作,主要測試模塊在語法、格式和邏輯上的錯(cuò)誤。1、單元測試55第55頁,課件共87頁,創(chuàng)作于2023年2月單元測試單元測試單元測試單元測試單元測試單元通常不是可運(yùn)行的程序。單元測試必須編寫額外的可運(yùn)行的測試驅(qū)動(dòng)程序。
56第56頁,課件共87頁,創(chuàng)作于2023年2月為了模擬某個(gè)模塊與其他模塊之間的聯(lián)系,在進(jìn)行單元測試時(shí),需設(shè)置若干輔助測試模塊。輔助模塊有兩種,一種是驅(qū)動(dòng)模塊(Driver),用以模擬被測試模塊的上級模塊。另一種是被調(diào)用模擬子模塊(Sub),用以模擬被測模塊工作過程中所調(diào)用的模塊。圖顯示了一般的單元測試環(huán)境。57第57頁,課件共87頁,創(chuàng)作于2023年2月一般單元測試環(huán)境58第58頁,課件共87頁,創(chuàng)作于2023年2月驅(qū)動(dòng)模塊(Driver),在單元測試中接受測試數(shù)據(jù),把相關(guān)的數(shù)據(jù)傳送給被測模塊,啟動(dòng)被測模塊,并打印輸出相應(yīng)的結(jié)果;被調(diào)用模擬子模塊(Sub),是由被測模塊調(diào)用,只進(jìn)行很少的數(shù)據(jù)處理,例如打印入口和返回,以便檢驗(yàn)被測模塊與其下級模塊的接口;59第59頁,課件共87頁,創(chuàng)作于2023年2月2、集成測試(1)什么是集成將經(jīng)過單元測試的模塊按設(shè)計(jì)要求連接起來,組成所規(guī)定的軟件系統(tǒng)的過程稱為“集成”。(2)什么是集成測試?按設(shè)計(jì)要求把通過單元測試的各個(gè)模塊組裝在一起之后,進(jìn)行集成測試的主要任務(wù)是要求軟件系統(tǒng)符合實(shí)際軟件結(jié)構(gòu),發(fā)現(xiàn)與接口有關(guān)的各種錯(cuò)誤。60第60頁,課件共87頁,創(chuàng)作于2023年2月(3)為什么要進(jìn)行集成測試?模塊集成后所帶來的問題:數(shù)據(jù)經(jīng)過接口可能會丟失;一個(gè)模塊對另一個(gè)模塊可能造成不應(yīng)有的影響;單個(gè)模塊可以接受的誤差,組裝后經(jīng)過不斷的積累,則達(dá)到一個(gè)不可接受的程度。全局?jǐn)?shù)據(jù)結(jié)構(gòu)發(fā)生錯(cuò)誤;61第61頁,課件共87頁,創(chuàng)作于2023年2月單元測試單元測試單元測試單元測試單元測試集成測試62第62頁,課件共87頁,創(chuàng)作于2023年2月集成測試包括兩種不同方法:非增量式集成增量式集成63第63頁,課件共87頁,創(chuàng)作于2023年2月非增量式測試方法
非增量式測試方法是采用一步到位的方法來進(jìn)行測試,即對所有模塊進(jìn)行個(gè)別的單元測試后,按程序結(jié)構(gòu)圖將各模塊連接起來,把連接后的程序當(dāng)做一個(gè)整體進(jìn)行測試。64第64頁,課件共87頁,創(chuàng)作于2023年2月增量式測試漸增式的集成中可以采用兩種:“自頂向下”和“自底向上”。自頂向下,即模塊集成的順序是首先集成主控模塊(主程序),然后按照軟件控制層次結(jié)構(gòu)向下進(jìn)行集成。自底向上增量式測試是從最底層的模塊開始,按結(jié)構(gòu)圖自下而上逐步進(jìn)行集成和測試65第65頁,課件共87頁,創(chuàng)作于2023年2月圖4-5自頂向下增量式測試(廣度優(yōu)先策略)66第66頁,課件共87頁,創(chuàng)作于2023年2月圖4-6自底向上增量式測試67第67頁,課件共87頁,創(chuàng)作于2023年2月3、系統(tǒng)測試(1)什么是系統(tǒng)測試?集成測試通過以后,軟件已經(jīng)組裝成一個(gè)完整的軟件包,這時(shí)就要進(jìn)行系統(tǒng)測試。集成測試的目的是檢查系統(tǒng)是否符合軟件需求。68第68頁,課件共87頁,創(chuàng)作于2023年2月(3)系統(tǒng)測試有哪些內(nèi)容?功能測試健壯性測試性能測試用戶界面測試。。。。69第69頁,課件共87頁,創(chuàng)作于2023年2月案例:手機(jī)操作系統(tǒng)的系統(tǒng)測試——一、多任務(wù)測試多任務(wù)指在非idle狀態(tài)下,測試機(jī)器處于工作狀態(tài)時(shí),有新的事件發(fā)生,如手機(jī)進(jìn)行通話時(shí)有短信進(jìn)入,手機(jī)編輯短信時(shí)有電話呼入,這種情況就是多任務(wù),相應(yīng)的測試就是多任務(wù)測試。下面是一個(gè)多任務(wù)測試的測試用例:例1.短信查看+來電應(yīng)答步驟期望的結(jié)果1.進(jìn)入手機(jī)短信查看狀態(tài)查看短信;1.手機(jī)在查看短信過程中 能夠正常響應(yīng)來電2.在短信查看過程中有電話進(jìn)入;2.按下應(yīng)答鍵后手機(jī)能夠 正常通話3.按下手機(jī)應(yīng)答鍵接聽來電; 3.按下掛機(jī)鍵手機(jī)能夠正 常結(jié)束通話4.按下掛機(jī)鍵結(jié)束通話70第70頁,課件共87頁,創(chuàng)作于2023年2月臨界測試指在事件、任務(wù)剛剛發(fā)生、結(jié)束以及存儲系統(tǒng)處于臨界等邊界狀態(tài)下所進(jìn)行的測試。例2.測試短信接收滿手機(jī)短信收件箱的容量為100條;手機(jī)SIM卡收件箱已滿,短信存儲位置設(shè)置為手機(jī).步驟期望的結(jié)果1.接收100條短信至手機(jī)收件箱;1.手機(jī)能夠正常接收100條 短信;2.接收第101條短信至收件箱.2.無法接收第101條短信.71第71頁,課件共87頁,創(chuàng)作于2023年2月系統(tǒng)測試72第72頁,課件共87頁,創(chuàng)作于2023年2月系統(tǒng)測試采用黑盒測試方式為了保證測試的客觀性,一般由機(jī)構(gòu)的獨(dú)立測試小組來執(zhí)行系統(tǒng)測試。73第73頁,課件共87頁,創(chuàng)作于2023年2月4、驗(yàn)收測試驗(yàn)收測試是由用戶完成的測試驗(yàn)收測試的內(nèi)容與系統(tǒng)測試的內(nèi)容類似驗(yàn)收測試可以分成Alpha測試和Beta測試。74第74頁,課件共87頁,創(chuàng)作于2023年2月系統(tǒng)維護(hù)二次開發(fā)項(xiàng)目更新單元測試集成測試系統(tǒng)測試驗(yàn)收測試回歸測試75第75頁,課件共87頁,創(chuàng)作于2023年2月1.5.4測試各種分類間關(guān)系76第76頁,課件共87頁,創(chuàng)作于2023年2月1.6軟件測試工作流程測試工作的主要步驟測試計(jì)劃:測試人員對需求進(jìn)行分析,最終定義一
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024個(gè)人珠寶買賣合同范本
- 2024年度版權(quán)質(zhì)押合同:含版權(quán)內(nèi)容、質(zhì)押價(jià)值、質(zhì)權(quán)實(shí)現(xiàn)
- 旅游推廣合作合同實(shí)例
- 攝影棚居間服務(wù)合同樣本
- 房屋銷售合同模板手冊
- 樂團(tuán)合作合同范本大全
- 電子郵件服務(wù)租用協(xié)議
- 2024家教公司與兼職教師合作合同范本
- 企業(yè)房屋租賃合同范本
- 2024保密合同樣書范文
- 期末測試卷(試題)-2024-2025學(xué)年人教PEP版(2024)英語三年級上冊
- 2024至2030年中國手機(jī)配件產(chǎn)業(yè)需求預(yù)測及發(fā)展趨勢前瞻報(bào)告
- 2024年小學(xué)閩教版全冊英語詞匯表
- 課題開題匯報(bào)(省級課題)
- 清真食品安全管理制度
- 學(xué)校心理健康教育合作協(xié)議書
- 2024江蘇省沿海開發(fā)集團(tuán)限公司招聘23人(高頻重點(diǎn)提升專題訓(xùn)練)共500題附帶答案詳解
- 2024年初級社會體育指導(dǎo)員(游泳)技能鑒定考試題庫(含答案)
- 湖北省危險(xiǎn)廢物監(jiān)管物聯(lián)網(wǎng)系統(tǒng)管理計(jì)劃填報(bào)說明
- Unit6ADayintheLife教學(xué)設(shè)計(jì)2024-2025學(xué)年人教版(2024)英語七年級上冊
- 2024年個(gè)人勞務(wù)承包合同書
評論
0/150
提交評論