




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、1 Pactera. Confidential. All Rights Reserved.軟件測試基礎(chǔ)知識軟件測試基礎(chǔ)知識2013年5月2 Pactera. Confidential. All Rights Reserved.軟件的相關(guān)知識軟件測試的重要性軟件測試的分類和階段軟件測試的基本方法測試面臨的挑戰(zhàn)測試工程師自身素質(zhì)培養(yǎng)3 Pactera. Confidential. All Rights Reserved.n能夠完成預(yù)定功能和性能的、可執(zhí)行的指令(計算機程序)n使得程序能夠適當(dāng)?shù)夭僮餍畔⒌臄?shù)據(jù)結(jié)構(gòu)n描述程序的操作和使用的文檔軟件軟件 = 程序程序 + 數(shù)據(jù)數(shù)據(jù) (庫)(庫) + 文檔
2、文檔 4 Pactera. Confidential. All Rights Reserved.n 客戶需求n 市場需求文檔n 軟件需求規(guī)格說明書n 技術(shù)設(shè)計文檔n 測試文檔n 在線幫助n 發(fā)布注釋n 軟件包n 幫助文件n 示例n 產(chǎn)品支持文檔n 錯誤信息n 安裝手冊n 用戶手冊n 產(chǎn)品標(biāo)簽n 產(chǎn)品廣告或宣傳材料n 5 Pactera. Confidential. All Rights Reserved.軟件在開發(fā)、生產(chǎn)、維護和使用等方面與計算機硬件相比存在明顯的差異。深入理解軟件的定義需要了解軟件的特點:n軟件的生產(chǎn)與硬件不同,它沒有明顯的制作過程。一旦研制開發(fā)成功,可以大量拷貝同一內(nèi)容的副
3、本。n軟件在運行、使用期間不存在磨損、老化問題。n軟件的開發(fā)、運行對計算機系統(tǒng)具有依賴性,受計算機系統(tǒng)的限制,這導(dǎo)致了軟件移植的問題。 n軟件復(fù)雜性高,成本昂貴。n軟件開發(fā)涉及諸多社會因素。6 Pactera. Confidential. All Rights Reserved.n 傳統(tǒng)的開發(fā)流程 傳統(tǒng)的軟件開發(fā)流程是一個文檔驅(qū)動的流程,它將整個軟件開發(fā)過程劃分為順序相接的幾個階段,每個階段都必需完成全部規(guī)定的任務(wù)(文檔)后才能夠進入下一個階段。如必須完成全部的系統(tǒng)需求規(guī)格說明書之后才能夠進入概要設(shè)計階段,編碼必需在系統(tǒng)設(shè)計完成之后才能夠進行。這就意味著只有當(dāng)所有的系統(tǒng)模塊全部開發(fā)完成之后,我
4、們才進行系統(tǒng)集成,對于一個由上百個模塊組的復(fù)雜系統(tǒng)來說,這是一個非常艱巨而漫長的工作。7 Pactera. Confidential. All Rights Reserved.n 傳統(tǒng)開發(fā)流程的問題: 隨著我們所開發(fā)的軟件項目越來越復(fù)雜,傳統(tǒng)的瀑布型開發(fā)流程不斷地暴露出以下問題:1、需求或設(shè)計中的錯誤往往只有到了項目后期才能夠被發(fā)現(xiàn),例如:系統(tǒng)交付客戶之后才發(fā)現(xiàn)原先對于需求的理解是錯誤的,系統(tǒng)設(shè)計中的問題要到測試階段才能被發(fā)現(xiàn)。 2、對于項目風(fēng)險的控制能力較弱,項目風(fēng)險在項目開發(fā)較晚的時候才能夠真正降低,往往是經(jīng)過系統(tǒng)測試之后,才能確定該設(shè)計是否能夠真正滿足系統(tǒng)需求。 3、軟件項目常常延期完成
5、或開發(fā)費用超出預(yù)算,項目開發(fā)進度往往會被意外發(fā)生的問題所打亂,需要進行返工或其他一些額外的開發(fā)周期,造成項目延期或費用超支。 4、項目管理人員專注于使用文檔的完成程度和審核來估計項目的進展情況,所以項目經(jīng)理對于項目狀態(tài)的估計往往是不準(zhǔn)確的,當(dāng)他回答系統(tǒng)已完成了80%的開發(fā)任務(wù)時,剩下20%的開發(fā)任務(wù)實際上消耗的是整個項目80%的開發(fā)資源。8 Pactera. Confidential. All Rights Reserved. 軟件開發(fā)模型軟件開發(fā)模型(Software Development Model):是指軟件開發(fā)全部過程、活動和任務(wù)的結(jié)構(gòu)框架。 軟件生存周期:軟件生存周期:一個軟件產(chǎn)品
6、或軟件系統(tǒng)也要經(jīng)歷孕育、誕生、成長、成熟、衰亡等階段,一般稱為軟件生存周期(軟件生命周期)。 9 Pactera. Confidential. All Rights Reserved.為了解決“軟件危機”,人們提出了軟件工程的概念,經(jīng)過軟件工程的實踐,人們總結(jié)出了一系列的軟件開發(fā)模型:n 瀑布模型n V模型n 原型模型n 增量模型n 螺旋模型n 迭代模型n RUP(Rational Unified Process)模型n 10 Pactera. Confidential. All Rights Reserved.用戶需求需求分析概要設(shè)計詳細設(shè)計編碼與調(diào)試單元測試集成測試系統(tǒng)測試用戶驗收測試詳細
7、設(shè)計手冊詳細設(shè)計手冊概要設(shè)計手冊概要設(shè)計手冊需求規(guī)格說明書需求規(guī)格說明書11 Pactera. Confidential. All Rights Reserved.n 優(yōu)點 V模型強調(diào)軟件開發(fā)的協(xié)作和速度,將軟件實現(xiàn)和驗證有機地結(jié)合起來,在保證較高的軟件質(zhì)量的情況下縮短開發(fā)周期,又稱測試模型。n 不足 僅僅把測試過程作為在需求分析、系統(tǒng)設(shè)計及編碼之后的一個階段 忽視了測試對需求分析,系統(tǒng)設(shè)計的驗證12 Pactera. Confidential. All Rights Reserved.分析分析設(shè)計設(shè)計編碼編碼測試測試交付交付分析分析設(shè)計設(shè)計編碼編碼測試測試交付交付分析分析設(shè)計設(shè)計編碼編碼測試
8、測試交付交付增量1增量2增量N13 Pactera. Confidential. All Rights Reserved.n 優(yōu)點: 采用增量模型的優(yōu)點是人員分配靈活,剛開始不用投入大量人力資源。如果核心產(chǎn)品很受歡迎,則可增加人力實現(xiàn)下一個增量。 引進了增量包的概念,無須等到所有需求都出來,只要某個需求的增量包出來即可進行開發(fā)。 強調(diào)每一個增量均發(fā)布一個可操作產(chǎn)品。n 不足: 由于各個構(gòu)建是逐漸并入已有的軟件體系結(jié)構(gòu),所以加入構(gòu)件必須不破壞已購建好的系統(tǒng)部分,這需要軟件具備開放式的體系結(jié)構(gòu)。 在開發(fā)過程中,需求的變化時不可避免的。增量模型的靈活性可以使其使用這種變化的能力大大優(yōu)于瀑布型,但也很
9、容易退化為邊做邊改模型,從而使軟件過程控制失去整體性。14 Pactera. Confidential. All Rights Reserved.軟件的相關(guān)知識軟件測試的重要性軟件測試的分類和階段軟件測試的基本方法測試面臨的挑戰(zhàn)測試工程師自身素質(zhì)培養(yǎng)15 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.n在上個世紀(jì)70年代,程序員為了節(jié)約非常寶貴的內(nèi)存資源和硬盤空間,在存儲日期時,只保留年份的后兩位,如“1980”被存為“80”。當(dāng)2000年到來的時候,問題就會出現(xiàn),比
10、如銀行存款程序在計算利息時,應(yīng)該用現(xiàn)在的日期“2000年1月1日”減去當(dāng)時存款的日期,比如“1989年1月1日” ,結(jié)果應(yīng)該是21年,如果利息是3%,銀行要付給顧客每100元,大約86元利息。如果程序沒有糾正年份只存儲兩位的問題,其存款年數(shù)就變?yōu)?89年,變成顧客反要付銀行1288元的巨額利息n就是為了這樣一個簡單的設(shè)計缺陷,全世界付出幾十億美元16 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.n 沒有足夠測試n 缺乏測試平臺n 不正確的測試環(huán)境n 缺少集成測試n
11、缺少性能測試n 缺少強度測試n 缺少可靠性測試n 17 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved. 平均而言,如果在需求階段修正一個缺陷的代價是1,那么,在設(shè)計階段就是它的36倍,在編程階段是它的10倍,在內(nèi)部測試階段是它的2040倍,在外部測試階段是它的3070倍,產(chǎn)品發(fā)布后,這個數(shù)字就是401000倍。 Boehm,Software Engineering Economics18 Pactera. Confidential. All Rights Reserv
12、ed.修正缺陷的代價修正缺陷的代價需求設(shè)計編程系統(tǒng)測試驗收測試發(fā)布修正缺陷的代價缺陷修復(fù)成本19 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.n軟件測試:軟件測試是為了發(fā)現(xiàn)程序中的錯誤而執(zhí)行程序的過程,具體地說,軟件測試是根據(jù)軟件開發(fā)階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu),精心設(shè)計出一批測試用例,并利用測試用例來運行程序,以發(fā)現(xiàn)程序錯誤的過過程。20 Pactera. Confidential. All Rights Reserved. Pactera. Confident
13、ial. All Rights Reserved.n軟件測試的意義在于發(fā)現(xiàn)軟件錯誤; 有效定義和實現(xiàn)軟件成分由低層到高層的組裝過程; 驗證軟件是否滿足任務(wù)書和系統(tǒng)定義文檔所規(guī)定的技術(shù)要求; 為軟件質(zhì)量模型的建立提供依據(jù)。n軟件測試的目的1、是確認(rèn)軟件的質(zhì)量。一方面是確認(rèn)軟件做了你所期望的事情,另一方面是確認(rèn)軟件以正確的方式來做了這個事件。2、第二是提供信息。如提供給開發(fā)人員或程序經(jīng)理的反饋信息,為風(fēng)險評估所準(zhǔn)備的信息。3、第三軟件測試不僅是在測試軟件產(chǎn)品的本身,而且還包括軟件開發(fā)的過程。保證整個軟件開發(fā)過程是高質(zhì)量的。21 Pactera. Confidential. All Rights R
14、eserved. Pactera. Confidential. All Rights Reserved.n功能性 Functionalityn易用性 Usability (簡單安裝; 輕松使用; 友好界面)n可靠性 Reliability (用戶使用的根本)n性能 Performancen容量 Capacityn可測量性 Scalabilityn可維護性 Service manageabilityn兼容性 Compatibilityn可擴展性 Extensibility22 Pactera. Confidential. All Rights Reserved. Pactera. Confide
15、ntial. All Rights Reserved.n主要分三個階段:以檢測為重:產(chǎn)品制成之后進行檢測,只能判斷產(chǎn)品質(zhì)量,不能提高產(chǎn)品質(zhì)量以過程管理為重:把質(zhì)量的保證工作重點放在過程管理上,對制造過程 中的每一道工序都要進行質(zhì)量控制以新產(chǎn)品開發(fā)為重:在新產(chǎn)品的開發(fā)設(shè)計階段,采取強有力的措施來消滅由于設(shè)計原因而產(chǎn)生的質(zhì)量隱患23 Pactera. Confidential. All Rights Reserved.軟件的相關(guān)知識軟件測試的重要性軟件測試的分類和階段軟件測試的基本方法測試面臨的挑戰(zhàn)測試工程師自身素質(zhì)培養(yǎng)24 Pactera. Confidential. All Rights Re
16、served. Pactera. Confidential. All Rights Reserved.開發(fā)生命周期. 維護 需求定義應(yīng)用定義應(yīng)用開發(fā) 修訂 建立 建立測試生命周期.執(zhí)行.執(zhí)行執(zhí)行.測試計劃缺陷跟蹤測試開發(fā)測試設(shè)計評估25 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.方法目標(biāo)/特性單元測試系統(tǒng)測試驗收測試性能測試強壯性測試功能測試白盒測試黑盒測試測試階段或?qū)哟芜m用性測試可靠性測試集成測試安全性測試26 Pactera. Confidential. Al
17、l Rights Reserved. Pactera. Confidential. All Rights Reserved.階 段輸 入 輸 出 需求分析需求定義, 市場分析文檔, 相關(guān)技術(shù)文檔市場需求分析會議記要 , 功能設(shè)計, 技術(shù)設(shè)計設(shè)計審查 市場需求文檔, 技術(shù)設(shè)計文檔 測試計劃, 測試用例功能驗證 代碼完成文件包,功能詳細設(shè)計說明書最終技術(shù)文檔完整測試用例,完備的測試計劃, 缺陷報告,功能驗證測試報告系統(tǒng)測試代碼修改后的文件包 完整測試用例,完備的測試計劃 缺陷報告缺陷狀態(tài)報告項目階段報告確認(rèn)測試代碼凍結(jié)文件包確認(rèn)測試用例缺陷狀態(tài)報告缺陷報告審查版本審查版本發(fā)布 代碼發(fā)布文件包 測試
18、計劃檢查清單當(dāng)前版本已知問題的清單版本發(fā)布報告27 Pactera. Confidential. All Rights Reserved.軟件的相關(guān)概念軟件測試的重要性軟件測試的分類和階段軟件測試的基本方法測試面臨的挑戰(zhàn)測試工程師自身素質(zhì)培養(yǎng)28 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.n黑盒測試和白盒測試n靜態(tài)測試和動態(tài)測試n自動化測試和手工測試2829 Pactera. Confidential. All Rights Reserved. Pactera.
19、Confidential. All Rights Reserved.29n黑盒測試黑盒測試法把程序看成是一個黑盒子,完全不考慮程序內(nèi)部的結(jié)構(gòu)和處理過程黑盒測試只是檢查程序功能是否按照規(guī)格說明書規(guī)定的可以正常使用黑盒測試又稱功能測試需求需求說明說明產(chǎn)生產(chǎn)生被測程序被測程序測試結(jié)果測試結(jié)果輸出輸出比較比較測試用例測試用例30 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.30n黑盒測試目的是否有不正確或遺漏了的功能在接口上,輸入能否正確地接受?能否輸出正確的結(jié)果?是否有數(shù)
20、據(jù)結(jié)構(gòu)錯誤或外部信息(例如數(shù)據(jù)文件)訪問錯誤?性能上是否能夠滿足要求?是否有初始化或終止性錯誤?3131白盒測試白盒測試的前提是可以把程序看成裝在一個透明的白盒子里,也就是完全了解程序結(jié)構(gòu)的白盒子里,也就是完全了解程序結(jié)構(gòu)和處理過程,這種方法按照程序內(nèi)部邏輯測試程序,檢驗程序中每條通路是否按預(yù)定要求正確工作白盒測試又稱結(jié)構(gòu)測試測 試 用 例被 測 程 序源 程 序分 析覆 蓋 情 況分 析執(zhí) 行 路 徑3232白盒測試目的對程序模塊的所有獨立的執(zhí)行路徑至少測試一次對所有的邏輯判定,取“真”與取“假”的兩種情況都能至少測試一次在循環(huán)的邊界和運行界限內(nèi)執(zhí)行循環(huán)體測試內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性等33 Pa
21、ctera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.功能測試功能測試數(shù)據(jù)驅(qū)動測試數(shù)據(jù)驅(qū)動測試 結(jié)構(gòu)測試結(jié)構(gòu)測試邏輯驅(qū)動測試邏輯驅(qū)動測試 客戶需求事件驅(qū)動輸入輸出34 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.34n靜態(tài)測試p對軟件文檔進行分析、檢查和測試p不實際運行被測試的程序n動態(tài)測試p通過運行軟件來檢驗軟件的動態(tài)行為和運行結(jié)果的正確性p基本要素
22、被測試程序測試用例軟件需求和規(guī)約需求評審設(shè)計評審代碼走查代碼檢查單元測試集成測試系統(tǒng)測試驗收測試35 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.主持人主持人作者記錄員列席人員內(nèi)審員內(nèi)審員技術(shù)專業(yè)人員用戶代表不正式正式互審 走讀 審查會議運行程序運行程序36 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.手工模擬用戶手工模擬用戶操作操作37
23、 Pactera. Confidential. All Rights Reserved.軟件的相關(guān)知識軟件測試的重要性軟件測試的分類和階段軟件測試的基本方法測試面臨的挑戰(zhàn)測試工程師自身素質(zhì)培養(yǎng)38 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.n舉例1:對程序中的每條語句序列至少執(zhí)行一次,包含的不同執(zhí)行路徑數(shù)達5的20次冪,對每一條路徑進行測試需要1毫秒,固定一年工作365*24小時,要把所有路徑都測試過,需要3170年循環(huán)循環(huán)20次次39 Pactera. Conf
24、idential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.n舉例2:計息計算模塊,需要將規(guī)則允許的所有存款金額和存期進行組合輸入n結(jié)論:窮舉輸入測試是無法實現(xiàn)的我們無法測試一個程序的所有輸入可能軟件測試要考慮其經(jīng)濟性即使可以窮舉所有路徑進行測試,程序中仍然可能存在沒有檢查出的缺陷3940 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.n誤區(qū)一:根據(jù)軟件開發(fā)瀑布模型,軟件測試是開發(fā)
25、后期的一個階段n 誤區(qū)二:軟件測試技術(shù)要求不高,至少比編程容易多了n 誤區(qū)三:有時間就多測試一些,來不及就少測試一些 n 誤區(qū)四:軟件測試是測試人員的事,與開發(fā)人員無關(guān) n 誤區(qū)五:如果發(fā)布出去的軟件有質(zhì)量問題,都是軟件測試人員的錯4041 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights Reserved.n所有測試的標(biāo)準(zhǔn)都是建立在用戶需求之上n軟件測試必須基于“質(zhì)量第一”的思想去開展各項工作,當(dāng)時間和質(zhì)量沖突時,時間要服從質(zhì)量。n事先定義好產(chǎn)品的質(zhì)量標(biāo)準(zhǔn),只有有了質(zhì)量標(biāo)準(zhǔn),才能根據(jù)測試的結(jié)果,對產(chǎn)品的質(zhì)量進行分析和評估。n軟件項目一啟動,軟件測試也就是開始,而不是等程序?qū)懲?,才開始進行測試。n窮舉測試是不可能的。甚至一個大小適度的程序,其路徑排列的數(shù)量也非常大,因此,在測試中不可能運行路徑的每一種組合。 42 Pactera. Confidential. All Rights Reserved. Pactera. Confidential. All Rights
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 行政管理核心考點試題及答案
- 高考數(shù)學(xué)考核趨勢題目及答案2023
- 敏捷項目管理2025年考試試題及答案
- 科學(xué)探索活動實施方案計劃
- 課程整合幼兒園班級的有效探索計劃
- 法學(xué)概論復(fù)習(xí)季度計劃與分配試題及答案
- 2025屆吉林省長春市數(shù)學(xué)七下期末檢測模擬試題含解析
- 2025屆湖北省十堰市鄖西縣八年級數(shù)學(xué)第二學(xué)期期末達標(biāo)檢測模擬試題含解析
- 企業(yè)戰(zhàn)略與政策風(fēng)險試題及答案
- 城市交通信號控制策略重點基礎(chǔ)知識點
- 臺達VFDM變頻器說明書
- 社會保險繳費征管與企業(yè)數(shù)字化轉(zhuǎn)型
- 課題申報參考:行業(yè)協(xié)會商會服務(wù)經(jīng)濟高質(zhì)量發(fā)展研究
- 2024年基金從業(yè)資格證考試題庫含答案(奪分金卷)
- 罐車司機安全培訓(xùn)課件
- 基于認(rèn)知模型建構(gòu)與應(yīng)用發(fā)展科學(xué)思維
- 企業(yè)戰(zhàn)略性技術(shù)創(chuàng)新與產(chǎn)業(yè)自主可控水平
- 檢驗科職業(yè)暴露應(yīng)急預(yù)案
- 湖北省武漢市華科附中2025屆高考數(shù)學(xué)四模試卷含解析
- 運輸企業(yè)風(fēng)險隱患排查整治管控措施
- 建筑工程防汛管理制度(3篇)
評論
0/150
提交評論