軟件系統(tǒng)常規(guī)測試過程概述_第1頁
軟件系統(tǒng)常規(guī)測試過程概述_第2頁
軟件系統(tǒng)常規(guī)測試過程概述_第3頁
軟件系統(tǒng)常規(guī)測試過程概述_第4頁
軟件系統(tǒng)常規(guī)測試過程概述_第5頁
已閱讀5頁,還剩109頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、技術(shù)創(chuàng)新,變革未來軟件系統(tǒng)常規(guī)測試過程概述2軟件系統(tǒng)測試執(zhí)行階段軟件系統(tǒng)測試用例執(zhí)行軟件系統(tǒng)測試軟件缺陷記錄、跟蹤軟件系統(tǒng)測試日報寫作軟件系統(tǒng)測試報告寫作軟件系統(tǒng)測試缺陷的回歸測試ST3單元測試和系統(tǒng)測試的區(qū)別單元測試早期測試;白盒測試;單元的具體實現(xiàn)、內(nèi)部邏輯結(jié)構(gòu)、數(shù)據(jù)流向;允許多個單元的測試同時開展。系統(tǒng)測試后期測試,錯誤定位困難;黑盒測試;基于需求規(guī)格說明書;站在用戶角度。4系統(tǒng)測試,是將已經(jīng)集成好的軟件系統(tǒng),作為整個基于計算機系統(tǒng)的一個元素,與計算機硬件、外設(shè)、某些支持軟件、數(shù)據(jù)和人員等其它系統(tǒng)元素結(jié)合在一起,在實際運行環(huán)境下,對計算機系統(tǒng)進行一系列的測試活動。系統(tǒng)測試(System

2、Testing)5系統(tǒng)測試的目的通過與系統(tǒng)的需求定義做比較,發(fā)現(xiàn)軟件與系統(tǒng)定義不符合或與之矛盾的地方驗證系統(tǒng)功能是否符合需求規(guī)格定義驗證系統(tǒng)的可靠性、可維護性、可用性、穩(wěn)定性、容錯性等其他屬性系統(tǒng)測試的測試用例應(yīng)根據(jù)需求分析說明書來設(shè)計,并在實際使用環(huán)境下運行。6系統(tǒng)測試的對象系統(tǒng)測試的對象是軟硬件集合在一起的系統(tǒng),不應(yīng)是獨立的軟件與硬件環(huán)境。驗證時應(yīng)盡可能模擬實際的運行環(huán)境與條件。7單元、集成、系統(tǒng)測試比較考察范圍不同單元測試主要測試單元內(nèi)部的數(shù)據(jù)結(jié)構(gòu)、邏輯控制、異常處理等集成測試主要測試模塊之間的接口和接口數(shù)據(jù)傳遞關(guān)系,以及模塊組合后的整體功能系統(tǒng)測試主要測試整個系統(tǒng)相對于需求的符合度評估

3、基準不同系統(tǒng)測試的評估基準是測試用例對需求規(guī)格的覆蓋率單元測試評估的主要是邏輯覆蓋率集成測試評估的主要是接口覆蓋率8配置主測試環(huán)境遵循的原則主測試環(huán)境是測試軟件功能、安全可靠性、性能、易用性等大多數(shù)指標的主要環(huán)境。符合軟件運行的最低要求。測試環(huán)境首先要保證能支撐軟件正常運行。選用比較普及的OS和軟件平臺例如:一個軟件若聲稱支持“Windows9X/ME/NT/2000 professional”和“MS Office97/2000/XP”,一般我們會采用如“Windows2000 professionalMS Office2000”的流行環(huán)境營造相對簡單、獨立的測試環(huán)境。除了OS,測試機上只安

4、裝軟件運行和測試必需的軟件,以免不相關(guān)的軟件影響測試實施。無毒的環(huán)境利用有效的正版殺毒軟件檢測軟件環(huán)境,保證測試環(huán)境中沒有病毒。9配置輔測試環(huán)境遵循的原則兼容性測試在滿足軟件運行要求的范圍內(nèi),可選擇一些典型的OS和常用應(yīng)用軟件對其安裝卸載和主要功能進行驗證。模擬真實環(huán)境測試有些軟件,特別是面向大眾的商品化軟件,在測試時常常需要考察在真實環(huán)境中的表現(xiàn)。橫向?qū)Ρ葴y試利用輔測試環(huán)境“克隆”出完全一致的測試環(huán)境,從而保證各個被測軟件平等對比。10軟件特性和常用系統(tǒng)測試類型的對應(yīng)關(guān)系:功能性:功能測試、安全性測試、互連測試可靠性:可靠性測試、啟動/停止測試、恢復(fù)測試、健壯性測試、備份測試易用性:可用性測

5、試、文檔測試、安裝測試效率:強度測試、性能測試、指標測試、內(nèi)存泄漏測試、容量測試、壓力測試維護性:可維護性測試可移植性:配置測試、兼容測試、安裝測試11系統(tǒng)測試用例編寫原則系統(tǒng)測試用例的設(shè)計根據(jù)是系統(tǒng)的需求規(guī)格說明書、各種規(guī)范系統(tǒng)測試用例的依據(jù)不是軟件本身系統(tǒng)測試用例不僅僅包括功能測試用例,同時還應(yīng)該包含屬性測試用例12系統(tǒng)測試用例編寫思路(1)為系統(tǒng)功能性設(shè)計用例為系統(tǒng)可靠性設(shè)計用例為系統(tǒng)易用性設(shè)計用例為系統(tǒng)可移植性設(shè)計用例為系統(tǒng)可維護性設(shè)計用例為系統(tǒng)效率設(shè)計用例為系統(tǒng)異常設(shè)計用例13系統(tǒng)測試用例編寫思路(2)一、根據(jù)ISO9126質(zhì)量模型分析需求規(guī)格說明書,將需測試的需求項歸納到各特性、子

6、特性下質(zhì)量特性質(zhì)量子特性測試項功能性適合性準確性互操作性安全性功能依從性效率時間特性資源利用性14系統(tǒng)測試用例編寫思路(3)二、對分析出來的測試需求項進行歸納、總結(jié),確定需要進行何種類型的測試,并把各測試項歸類到各測試類型下:功能測試性能測試壓力測試容量測試安全性測試GUI測試可用性測試安裝測試配置測試異常測試(恢復(fù)性測試)備份測試健壯性測試文檔測試在線幫助測試網(wǎng)絡(luò)測試系統(tǒng)測試用例編寫思路(4)三、對各測試類型下的測試項細分,形成為測試子項:需求標識需求描述系統(tǒng)測試項標識系統(tǒng)測試項描述系統(tǒng)測試子項標識系統(tǒng)測試子項描述Router_V100_SRS_001路由管理Router_V100_ST_A

7、ddRoute路由增加Router_V100_ST_AddRoute_HostRoute_增加主機路由Router_V100_ST_AddRoute_NetRoute_增加網(wǎng)絡(luò)路由Router_V100_ST_AddRoute_SpecRoute_增加特殊路由Router_V100_ST_DelRoute路由刪除Router_V100_ST_InqRoute路由查詢Router_V100_SRS_002路由協(xié)議Router_V100_ST_OSPFOSPF協(xié)議測試Router_V100_ST_RIPRIP協(xié)議測試16系統(tǒng)測試用例編寫思路(5)四、對各測試子項對應(yīng)的具體需求規(guī)格進行分析,利用各種

8、系統(tǒng)測試用例設(shè)計方法,從各角度設(shè)計用例去對需求規(guī)格進行覆蓋,從而達到對需求的充分覆蓋:等價類劃分法邊值分析法狀態(tài)遷移圖法決策表正交試驗法錯誤猜測法17系統(tǒng)測試過程測試過程計劃設(shè)計實現(xiàn)執(zhí)行;測試過程體現(xiàn)了測試設(shè)計和實現(xiàn)的分離測試實現(xiàn)測試執(zhí)行系統(tǒng)測試計劃階段:完成系統(tǒng)測試計劃系統(tǒng)測試設(shè)計階段:完成系統(tǒng)測試方案系統(tǒng)測試實現(xiàn)階段:完成系統(tǒng)測試用例和腳本、系統(tǒng)測試規(guī)程、系統(tǒng)測試預(yù)測試項系統(tǒng)測試執(zhí)行階段:執(zhí)行系統(tǒng)測試預(yù)測試項、提交系統(tǒng)預(yù)測試報告;執(zhí)行系統(tǒng)測試用例,提交測試日報,發(fā)現(xiàn)問題并提交缺陷報告、系統(tǒng)測試報告;進行回歸測試18系統(tǒng)測試執(zhí)行的概念按一定的系統(tǒng)測試計劃,依據(jù)系統(tǒng)測試用例,完成測試的各項操作

9、任務(wù);系統(tǒng)測試執(zhí)行階段應(yīng)完成:環(huán)境準備、測試操作、測試記錄、測試報告19系統(tǒng)測試預(yù)測試目的:驗證軟件系統(tǒng)基本功能或預(yù)測主要的系統(tǒng)功能,以確保其后的系統(tǒng)測試執(zhí)行能順利進行20系統(tǒng)測試日報的寫作目的測試人員總結(jié)每天的測試工作,便于了解自己的測試進度和測試情況,用以調(diào)整下一天的工作計劃測試人員對被測對象每天給出評估結(jié)果,用以調(diào)整后續(xù)工作中的測試策略測試人員向測試經(jīng)理反映測試中的困難,保證測試的順利進行測試經(jīng)理通過測試日報,了解每個測試人員的工作進度,把握測試的整體進度,發(fā)現(xiàn)進度上的風險及時調(diào)整計劃21測試經(jīng)理通過測試日報,了解各模塊缺陷發(fā)展趨勢,判斷測試是否可以退出開發(fā)經(jīng)理可以通過軟件測試日報了解當

10、前被測試軟件的質(zhì)量情況,并可以調(diào)整缺陷修改的人力資源如果產(chǎn)品有多個測試組并行測試,測試日報可以提供彼此測試交流的手段項目ID標題版本執(zhí)行者測試階段日期概述執(zhí)行用例數(shù)總用例數(shù)計劃執(zhí)行用例數(shù)累計已執(zhí)行用例數(shù)本日發(fā)現(xiàn)問題數(shù)累計發(fā)現(xiàn)問題數(shù)致命問題數(shù)問題單號嚴重問題數(shù)問題單號一般問題數(shù)問題單號困難系統(tǒng)測試日報的格式23測試報告的寫作目的軟件測試人員完成對上一個測試階段的總結(jié),完成對被測試對象的評估,并對下一階段的測試工作給出建議測試經(jīng)理通過測試報告了解被測試產(chǎn)品的質(zhì)量情況、測試過程的質(zhì)量軟件開發(fā)項目經(jīng)理通過軟件測試報告了解開發(fā)產(chǎn)品的質(zhì)量情況,并在下階段的開發(fā)工作中采取應(yīng)對措施在軟件測試報告中,軟件測試人

11、員做出的軟件產(chǎn)品質(zhì)量評估,可以作為產(chǎn)品是否商用發(fā)布的重要參考依據(jù)。24系統(tǒng)測試報告寫作要點概述測試時間、地點、人員環(huán)境描述總結(jié)和評價測試結(jié)果統(tǒng)計測試評估測試總結(jié)和改進建議遺留問題報告附件25系統(tǒng)測試結(jié)果統(tǒng)計工作量數(shù)據(jù)統(tǒng)計(規(guī)模:KLOC、測試執(zhí)行:人時、工作量投入比例:人時/KLOC)缺陷統(tǒng)計(致命、嚴重、一般、提示)版本缺陷統(tǒng)計(V1、V2、V3、V4)累計遺留問題統(tǒng)計(V1、V2、V3、V4)26系統(tǒng)測試評估(1)靜態(tài)分析:效率分析測試活動持續(xù)時間:X人時執(zhí)行用例數(shù):Y個發(fā)現(xiàn)缺陷總數(shù):Z個平均每小時用例數(shù)執(zhí)行用例數(shù)/測試活動持續(xù)時間Y/X平均每小時發(fā)現(xiàn)缺陷數(shù)發(fā)現(xiàn)缺陷總數(shù)/測試活動持續(xù)時間Z

12、/X影響測試效率的原因分析:對影響測試的各種因素進行分析,如:測試環(huán)境,物料,突發(fā)任務(wù)等。27系統(tǒng)測試評估(2)靜態(tài)分析:充分性分析千行代碼用例數(shù):根據(jù)用例統(tǒng)計對測試充分性進行點評分析執(zhí)行結(jié)果統(tǒng)計根據(jù)結(jié)果統(tǒng)計對系統(tǒng)質(zhì)量和測試過程進行點評28系統(tǒng)測試評估(3)測試對象的整體質(zhì)量:質(zhì)量穩(wěn)定,適合大規(guī)模應(yīng)用;存在少數(shù)嚴重問題,但有規(guī)避措施,可以使用;基本功能可用,但問題較多;基本功能不可用。也可采用打分方式。29系統(tǒng)測試總結(jié)和改進建議總結(jié)本次測試活動的經(jīng)驗教訓,總結(jié)主要的測試活動和事件總結(jié)資源消耗數(shù)據(jù),如總?cè)藛T、總機時,每個主要測試活動花費的時間提供對本次測試過程活動的測試設(shè)計和操作的改進建議在測試

13、過程中形成的對測試方案、測試用例的修改和補充的具體改進內(nèi)容可列在本測試報告文檔的附錄中30系統(tǒng)測試遺留問題報告遺留問題是指測試過程中發(fā)生的并且在測試報告時仍沒有得到解決的測試問題。測試報告時已經(jīng)得到解決,并已經(jīng)過回歸驗證的測試問題不記入其中可對遺留問題數(shù)和級別進行統(tǒng)計要列出每個遺留問題的詳細情況,包括問題單號、問題級別、詳細描述、問題分析與對策等317.1 線索(Thread)的概念一、線索的看法和層次線索的看法:使用場景;系統(tǒng)級測試用例;激勵/響應(yīng)對;系統(tǒng)級輸入序列產(chǎn)生的行為;端口輸入/輸出事件交替序列(系統(tǒng)級);機器指令序列 ;MM-路徑序列(集成級);源指令序列(單元級);原子系統(tǒng)功能序

14、列(系統(tǒng)級);32線索的層次:單元級:DD-路徑集成級:MM-路徑/模塊執(zhí)行和消息交替序列系統(tǒng)級:ASF序列(端口輸入/輸出事件的交替序列)線索提供三層測試的統(tǒng)一視圖:單元測試:單個函數(shù)測試;集成測試:單元之間的交互;系統(tǒng)測試:檢查原子系統(tǒng)功能之間的交互。33四個侯選線索數(shù)字輸入(激勵/響應(yīng)對,最小原子系統(tǒng)功能,集成測試)PIN輸入(激勵/響應(yīng)對,原子系統(tǒng)功能,系統(tǒng)測試起點)簡單事務(wù)處理(多個原子系統(tǒng)功能交互,系統(tǒng)級線索)ATM卡輸入、PIN輸入、選擇事務(wù)處理類型、提供帳戶細節(jié)、引導操作、報告結(jié)果ATM會話(一系列線索之間的交互)二、系統(tǒng)級線索的例子-SATM系統(tǒng)注意:不應(yīng)該集成大于原子系統(tǒng)功

15、能的單元,也不對小于原子系統(tǒng)功能的單元進行系統(tǒng)測試。34ASF由事件靜止點區(qū)分開,自然端點事件靜止的Petri網(wǎng)解釋:死鎖和激活 三、系統(tǒng)線索ASF:在系統(tǒng)層可以觀察得到的端口輸入輸出事件的行動。 ASF由端口輸入事件開始,端口輸出事件結(jié)束;例:SATM的數(shù)字輸入,ATM卡輸入,現(xiàn)金支付,會話關(guān)閉 ASF是集成測試的最大測試項和系統(tǒng)測試的最小測試項(可在兩個級別上測試ASF);例:SATM的數(shù)字輸入35定義ASF圖:有向圖,節(jié)點表示ASF,邊表示串行流;源/匯ASF:例, SATM的ATM卡輸入和會話結(jié)束系統(tǒng)線索: ASF圖從源ASF到匯ASF的路徑線索圖:有向圖,節(jié)點表示系統(tǒng)線索,邊表示單個

16、線索順序執(zhí)行36 7.2 需求規(guī)格說明所有需求規(guī)格說明由五個基本概念表示:一、數(shù)據(jù):經(jīng)過初始化、存儲、更新、銷毀的信息二、行動:轉(zhuǎn)換、處理、活動三、設(shè)備:端口、傳送器、現(xiàn)金給付器、收據(jù)打印機四、事件:發(fā)生在端口設(shè)備上的系統(tǒng)級輸入/輸出。 注意:與語境有關(guān)的端口事件五、線索37六、采用五個基本概念建立需求模型結(jié)構(gòu)模型(表示功能、數(shù)據(jù)的分解和組件接口,用于開發(fā));語境模型(強調(diào)行動)行為/控制模型(需求的基礎(chǔ))常用模型描述手段:決策表(轉(zhuǎn)換式)計算系統(tǒng);有限狀態(tài)機(交互式)菜單驅(qū)動系統(tǒng);Petri網(wǎng)并發(fā)系統(tǒng);38基本結(jié)構(gòu)之間建模關(guān)系結(jié)構(gòu)模型語境模型數(shù)據(jù)事件行為線索設(shè)備行為模型39例:函數(shù)F在E1,

17、E2都發(fā)生了才發(fā)生的模型外部實體1事件存儲1外部實體2事件存儲2F函數(shù)F的事件劃分視圖E1E2缺點:不能通過模型區(qū)分到底是哪個事件先發(fā)生,只知道兩個事件一定發(fā)生。40空閑E1已發(fā)生準備執(zhí)行FE1E2E2已發(fā)生E2E1函數(shù)F的有限狀態(tài)機顯式地顯示事件的兩種順序,兩種模型都描述了F的相同前提,但狀態(tài)機對測試人員來說更有用。41 7.3 SATM的系統(tǒng)線索首先討論狀態(tài)機的層次結(jié)構(gòu)頂層狀態(tài)機(通過線索進行狀態(tài)切換)過程的階段劃分狀態(tài)轉(zhuǎn)移由邏輯事件引起421、卡輸入2、PIN輸入3、等待事務(wù)選擇有效卡/顯示屏幕2顯示屏幕1卡錯/顯示屏幕S1,退回卡成功PIN/顯示屏幕5PIN失敗/顯示屏幕4圖14-5

18、頂層SATM狀態(tài)機43“PIN輸入”狀態(tài)機輸入事件是邏輯事件、輸出事件是真正的端口事件狀態(tài)分解(圖14-6)端口事件(表14-1)端口輸入事件端口輸出事件有效卡顯示屏幕1錯卡顯示屏幕2正確的PIN顯示屏幕3錯誤的PIN顯示屏幕4取消顯示屏幕5442.1第一次PIN輸入嘗試2.2第二次PIN輸入嘗試2.3第三次PIN輸入嘗試3、等待交易選擇1、卡輸入屏幕1卡正常,屏幕S2正確PIN/屏幕S5卡錯/屏幕S1退卡PIN錯/屏幕S4PIN錯/屏幕S3PIN錯/屏幕S3正確PIN/屏幕S5正確PIN/屏幕S5圖14-6 PIN輸入有限狀態(tài)機ab1234545“PIN輸入嘗試”有限狀態(tài)機狀態(tài)分解(圖14-

19、7)端口事件(表14-2)端口輸入事件端口輸出事件數(shù)字回顯“X”取消回顯“XX”回顯“XXX-”回顯“XXXX”462.x.1收到0數(shù)字2.x.2收到1數(shù)字2.x.3收到2數(shù)字2.x.4收到3數(shù)字2.x.5收到4數(shù)字2.x.6按下“取消”正確PIN x5不正確PIN x6數(shù)字/回顯“X”x1數(shù)字/回顯“XX-”x2數(shù)字/回顯“XXX-”x3數(shù)字/回顯“XXXX”x4x7取消x8取消x9取消x10取消x11已取消圖14-7 PIN輸入嘗試有限狀態(tài)機 GetPIN47有限狀態(tài)機的層次結(jié)構(gòu),使線索的數(shù)量成倍增長。例:狀態(tài)2.1到3或1的線索(路徑)數(shù)量錯誤的數(shù)字或按下cancel(5X5X5)最終正

20、確的PIN輸入(1+5+25)共156條不同的路徑(圖14-6與圖14-7的結(jié)合)48例:走通層次狀態(tài)機的兩條路徑端口輸入事件端口輸出事件屏幕2顯示“”按下1屏幕2顯示“X”按下2屏幕2顯示“XX-”按下3屏幕2顯示“XXX-”按下4屏幕2顯示“XXXX”(正確的PIN)顯示屏幕51.第一次PIN輸入正確的端口事件序列(設(shè)PIN是1234)492.第三次PIN輸入正確的端口事件序列(設(shè)PIN是1234)端口輸入事件端口輸出事件屏幕2顯示“”按下1屏幕2顯示“X”按下2屏幕2顯示“XX-”按下3屏幕2顯示“XXX-”按下5屏幕2顯示“XXXX”(錯誤的PIN)顯示屏幕350端口輸入事件端口輸出事

21、件(第二次嘗試)屏幕2顯示“”按下1屏幕2顯示“X”按下2屏幕2顯示“XX-”按下3屏幕2顯示“XXX-”按下cancel(第二次嘗試結(jié)束)顯示屏幕351端口輸入事件端口輸出事件(第三次嘗試)屏幕2顯示“”按下1屏幕2顯示“X”按下2屏幕2顯示“XX-”按下3屏幕2顯示“XXX-”按下4屏幕2顯示“XXXX”(正確的PIN)顯示屏幕552 7.4 線索測試的結(jié)構(gòu)測試策略根據(jù)線索生成測試用例,用有向圖選擇線索。(按照狀態(tài)機層次)自底向上組織線索例:SATM系統(tǒng)“PIN輸入嘗試”有限狀態(tài)機線索路徑(表14-5)“PIN輸入”狀態(tài)機線索路徑(表14-6)測試問題:分層機制使單獨測試不可行。53輸入事

22、件序列轉(zhuǎn)移的路徑1234x1 x2 x3 x4 x51235x1 x2 x3 x4 x6Cx7 x111Cx1 x8 x1112Cx1 x2 x9 x11123Cx1 x2 x3 x10 x11 “PIN輸入嘗試”有限狀態(tài)機中,共有6條路徑。經(jīng)過路徑的線索以輸入鍵描述。表14-5 “PIN輸入嘗試”有限狀態(tài)機線索路徑54 上升到“PIN輸入”有限狀態(tài)機中,共有4條路徑。輸入事件序列轉(zhuǎn)移的路徑12341123512342 31235C12342 4 5CCC2 4 6表14-6 “PIN輸入”有限狀態(tài)機線索路徑55節(jié)點(狀態(tài))與邊(轉(zhuǎn)換)的覆蓋指標上層狀態(tài)機以下層狀態(tài)機作為輸入和返回。SATM系

23、統(tǒng)一個線索的節(jié)點和邊的遍歷(表14-7)線索/狀態(tài)的關(guān)聯(lián)(表14-8)線索/轉(zhuǎn)換的關(guān)聯(lián)(表14-9)輸入事件2.12.x.12.x.22.x.32.x.42.x.52.x.62.22.3311234xxxxxxx12351234xxxxxxxxC1234xxxxxxxxx1C12C1234xxxxxxxxxx123C1C1Cxxxxxxxxx表14-8 線索/狀態(tài)的關(guān)聯(lián)輸入事件x1x2x3x4x5x6x7x8x9x10 x111234561234xxxxxx12351234xxxxxxxxC1234xxxxxxxxx1C12C1234xxxxxxxxxxx123C1C1Cxxxxxxxxx表1

24、4-9 線索/轉(zhuǎn)換的關(guān)聯(lián)58 7.5 線索測試的功能測試策略基于事件的線索測試適合:以事件驅(qū)動的系統(tǒng)(“反應(yīng)式”系統(tǒng))端口輸入事件的五個覆蓋指標:每個端口輸入事件發(fā)生;端口輸入事件的常見序列發(fā)生;每個端口輸入事件在所有“相關(guān)”數(shù)據(jù)語境中發(fā)生;按下B1在5種單獨的語境種發(fā)生,3種不同含義對于給定語境,所有不合適的輸入事件發(fā)生;對于給定語境,所有可能的輸入事件發(fā)生。59端口輸出事件的兩個覆蓋指標:每個端口輸出事件發(fā)生;每個端口輸出事件在每種原因下發(fā)生。難以定量描述,給定輸出事件只有少量原因,沒有被懷疑到的原因引起的輸出最難發(fā)現(xiàn)。出現(xiàn)屏幕10的原因:終端儲備現(xiàn)金可能用完、可能要連接到中央銀行獲得帳戶

25、余額、取款通道可能阻塞。60開發(fā)模型全狀態(tài)狀態(tài)關(guān)鍵原子系統(tǒng)功能ATM卡輸入、PIN輸入、事務(wù)處理、會話管理前提數(shù)據(jù)帶有PAN、PIN和帳戶余額的實際帳戶,ATM初始顯示S1,現(xiàn)金給付器總現(xiàn)金$500 7.6 SATM測試線索61SATM測試數(shù)據(jù)PAN預(yù)期PIN支票余額(美元)儲蓄余額(美元)10012341000.00800.002004567100.0090.00300678925.0020.0062 線索描述形式表格線索一余額查詢線索二支票帳戶存款線索三儲蓄帳戶取款線索1 ATM卡輸入 PIN輸入 事務(wù)處理請求 會話管理(余額) (PAN) 端口輸入 100 1234 B1,B1 B2 端

26、口輸出 S2 S5 S6,S14,$1000.00 S15,退卡,S1線索2 ATM卡輸入 PIN輸入 事務(wù)處理請求 會話管理(存款) (PAN) 端口輸入 100 1234 B2,B1,25.00 B2 端口輸出 S2 S5 S6,S7,S13,存款通道開 S15,退卡, S14,$1025.00 S1線索3 ATM卡輸入 PIN輸入 事務(wù)處理請求 會話管理(取款) (PAN) 端口輸入 100 1234 B3,B2,30.00 B2 端口輸出 S2 S5 S6,S7,S11,取款 S15,退卡,S1 通道開,3張10,S14,$770.00線索4 ATM卡輸入(PAN) PIN輸入 事務(wù)處

27、理請求 會話管理 端口輸入 400端口輸出 退出ATM卡,S1線索5 ATM卡輸入 PIN輸入 事務(wù)處理請求 會話管理(余額) (PAN) 端口輸入 100 12351234 與線索1相同端口輸出 S2 S3,S2,S5 線索6 ATM卡輸入 PIN輸入 事務(wù)處理請求 會話管理(余額) (PAN) 端口輸入 100 C1234 與線索1相同端口輸出 S2 S3,S2,S5線索7 ATM卡輸入 PIN輸入 事務(wù)處理請求 會話管理(余額) (PAN) 端口輸入 100 1C12C1234 與線索1相同端口輸出 S2 S3,S2,S3,S2,S5線索8 ATM卡輸入 PIN輸入 事務(wù)處理請求 會話管

28、理(余額) (PAN) 端口輸入 100 123C1C1C 與線索1相同端口輸出 S2 S3,S2,S3,S2,S4,S1線索9 ATM卡輸入 PIN輸入 事務(wù)處理請求 會話管理(提取) (PAN) 端口輸入 100 1234 B3,B2,15.00,取消 B2 端口輸出 S2 S5 S6,S7,S9,S7 S15,退卡,S1線索10 ATM卡輸入 PIN輸入 事務(wù)處理請求 會話管理(提取) (PAN) 端口輸入 300 6789 B3,B2,50.00,取消 B2 端口輸出 S2 S5 S6,S7,S8 S15,退卡,S1非10元整數(shù)倍多于余額線索11 ATM卡輸入 PIN輸入 事務(wù)處理請求

29、 會話管理(提取) (PAN) 端口輸入 100 1234 B3,B2,510.00,取消 B2 端口輸出 S2 S5 S6,S7,S10 S15,退卡,S1多于機器總額線索12 ATM卡輸入 PIN輸入 事務(wù)處理請求 會話管理(余額) (PAN) 端口輸入 100 1234 B1,B1 B1,取消 端口輸出 S2 S5 S6,S14,$1000.00 S5,S15,退卡,S1硬件失效線索13:覆蓋輸出屏幕12(存款不能被處理)語境有關(guān)輸入事件線索1422(表14-11)各輸出屏幕上的Cancel鍵,B1、B2功能鍵測試線索 按下的鍵 屏幕 邏輯含義6 取消 2 PIN輸入錯誤14 取消 5

30、事務(wù)處理選擇錯誤15 取消 6 帳戶選擇錯誤16 取消 7 金額輸入錯誤17 取消 8 金額輸入錯誤18 取消 13 取款信封未就緒1 B1 5 余額1 B1 6 支票19 B1 10 是(暫時無法取款)20 B1 12 是(暫時無法存款)12 B1 14 是(另一個事務(wù)處理)2 B2 5 存款3 B2 6 儲蓄21 B2 10 否(沒有其他事務(wù)處理)22 B2 12 否(沒有其他事務(wù)處理)1 B2 14 否(沒有其他事務(wù)處理)70偽結(jié)構(gòu)系統(tǒng)測試將基于圖的指標用作功能線索的一種交叉檢查?;谙到y(tǒng)控制模型導出功能線索邊和節(jié)點的覆蓋指標決策表設(shè)計每個規(guī)則的測試用例(轉(zhuǎn)換式)有限狀態(tài)機設(shè)計覆蓋每個狀

31、態(tài)、轉(zhuǎn)換、路徑的測試用例(交互式)Petri網(wǎng)設(shè)計覆蓋每個地點、轉(zhuǎn)移、轉(zhuǎn)移序列的測試用例(并發(fā)系統(tǒng))7.7 系統(tǒng)測試原則解決線索爆炸問題71運行剖面Zipfs law(80%的活動發(fā)生在20%的空間中)以系統(tǒng)線索出現(xiàn)的頻率選擇測試用例;以決策樹確定系統(tǒng)運行剖面(圖14-10)給定轉(zhuǎn)移概率,線索的總概率就是各轉(zhuǎn)移概率的乘積。有效卡:0.95 卡錯:0.05PIN正確:0.90 PIN不正確:0.10B1:0.05 B2:0.10 B3:0.85現(xiàn)金不足:0.10 正常:0.85 余額不足:0.0572常見線索 概率有效ATM卡 0.95PIN第一次嘗試正確 0.90取款 0.85正常 0.85

32、0.617737573罕見線索 概率有效ATM卡 0.95PIN第一次嘗試錯誤 0.10PIN第二次嘗試錯誤 0.10PIN第三次嘗試正確 0.90取款 0.85現(xiàn)金不足 0.10 0.0007267574功能測試性能測試穩(wěn)定性測試負載測試壓力測試安全性測試恢復(fù)性測試備份測試GUI測試健壯性測試兼容性測試可用性測試可安裝性測試文檔測試在線幫助測試數(shù)據(jù)轉(zhuǎn)換測試可靠性測試Web網(wǎng)站測試7.8 系統(tǒng)測試方法751.功能測試功能測試是系統(tǒng)測試中最基本的測試,主要根據(jù)產(chǎn)品的需求規(guī)格說明書和測試需求列表,驗證產(chǎn)品的功能實現(xiàn)是否符合產(chǎn)品的需求規(guī)格。為了發(fā)現(xiàn)以下幾類錯誤:是否有不正確或遺漏了的功能?功能實現(xiàn)是

33、否滿足用戶需求和系統(tǒng)設(shè)計的隱藏需求?能否正確地接受輸入?能否正確地輸出結(jié)果?要求測試設(shè)計者對產(chǎn)品的規(guī)格說明、需求文檔、產(chǎn)品業(yè)務(wù)功能都非常熟悉,測試用例設(shè)計方法也要掌握。762.性能測試性能測試用來檢查系統(tǒng)是否滿足在需求說明書中規(guī)定的性能。特別是針對嵌入式實時系統(tǒng)。性能測試可以在測試過程的任意階段進行,但只有當整個系統(tǒng)的所有成分都集成到一起后,才能檢查一個系統(tǒng)的真正性能。性能測試必須要有工具支持,用于GUI或Web的性能測試工具在市面上能見到。773.穩(wěn)定性測試是指連續(xù)運行被測系統(tǒng),檢查系統(tǒng)運行時的穩(wěn)定程度。通常用mtbf(mean time between failure)來衡量系統(tǒng)的穩(wěn)定性,

34、mtbf越大,系統(tǒng)的穩(wěn)定性越強采用24*7(24小時*7天)的方式讓系統(tǒng)不間斷運行,至于具體運行多少天,是一周還是一個月,視項目的實際情況而定。78負載測試是指讓被測系統(tǒng)在其能忍受的壓力的極限范圍之內(nèi)連續(xù)運行,來測試系統(tǒng)的穩(wěn)定性。負載測試需要給被測系統(tǒng)施加其剛好能承受的壓力 。負載測試為測試系統(tǒng)在臨界狀態(tài)下運行是否穩(wěn)定提供了一種辦法。 795.壓力測試壓力測試:是指持續(xù)不斷的給被測系統(tǒng)增加壓力,直到將被測系統(tǒng)壓垮為止,用來測試系統(tǒng)所能承受的最大壓力。比如不斷增加并發(fā)的登錄用戶數(shù),20,30,50,當增加到70個用戶并發(fā)登錄時,系統(tǒng)崩潰了,就可以知道163郵箱所能承載的最大登錄并發(fā)數(shù)為70個左右

35、。 806.安全性測試安全性測試是要檢驗在系統(tǒng)中已經(jīng)存在的系統(tǒng)安全性、保密性措施是否發(fā)揮作用,有無漏洞。主要是測試系統(tǒng)在沒有授權(quán)的內(nèi)部或者外部用戶對系統(tǒng)進行攻擊或者惡意破壞時軟件如何進行處理,是否仍能保證數(shù)據(jù)的安全。測試人員可以學習一些黑客技術(shù),來對系統(tǒng)進行攻擊。81 破壞系統(tǒng)的保護機構(gòu)以進入系統(tǒng)的主要方法:正面攻擊或從側(cè)面、背面攻擊系統(tǒng)中易受損壞的那些部分;以系統(tǒng)輸入為突破口,利用輸入的容錯性進行正面攻擊;申請和占用過多的資源壓垮系統(tǒng),以破壞安全措施,從而進入系統(tǒng);故意使系統(tǒng)出錯,利用系統(tǒng)恢復(fù)的過程,竊取用戶口令及其它有用的信息;通過瀏覽殘留在計算機各種資源中的垃圾(無用信息),以獲取如口令

36、,安全碼,譯碼關(guān)鍵字等信息;瀏覽全局數(shù)據(jù),期望從中找到進入系統(tǒng)的關(guān)鍵字;瀏覽那些邏輯上不存在,但物理上還存在的各種記錄和資料等。827.恢復(fù)性測試恢復(fù)測試的目標是驗證系統(tǒng)從軟件或者硬件失敗中恢復(fù)的能力;恢復(fù)測試是要證實在克服硬件故障(包括掉電、硬件或網(wǎng)絡(luò)出錯等)后,系統(tǒng)能否正常地繼續(xù)進行工作,并不對系統(tǒng)造成任何損害。可采用各種人工干預(yù)的手段,模擬硬件故障,故意造成軟件出錯。掉電測試:測試軟件系統(tǒng)在發(fā)生電源中斷時能否保護當時的狀態(tài)且不毀壞數(shù)據(jù),然后在電源恢復(fù)時從保留的斷點處重新進行操作。838. 備份測試備份測試是恢復(fù)性測試的一個補充,并且應(yīng)當是恢復(fù)性測試的一個部分。備份測試的目的是驗證系統(tǒng)在軟

37、件或者硬件失敗的事件中備份它數(shù)據(jù)的能力。849.GUI測試為了讓軟件能夠更好地服務(wù)于用戶,進行GUI測試變得非常重要了。GUI測試包括:界面實現(xiàn)與界面設(shè)計的吻合情況;確認界面處理的正確性。GUI系統(tǒng)分為:界面層、界面與功能的接口層、功能層。界面的美學具有很大的主觀性,如何才能代表大部分客戶的意見是界面測試的一個難點。8510. 健壯性測試也叫容錯性測試(Fault ToleranceTesting),主要用于測試系統(tǒng)在出現(xiàn)故障時,是否能夠自動恢復(fù)或者忽略故障繼續(xù)運行。必須小心地設(shè)計實現(xiàn)系統(tǒng),尤其是在系統(tǒng)的異常處理方面。一個健壯的系統(tǒng)是設(shè)計出來的而不是測試出來的。8611.兼容性測試檢查軟件之間

38、是否正確地交互和共享信息兼容性包括向前兼容或向后兼容不同版本間的兼容標準和規(guī)范 MS Windows認證徽標,為了得到這個徽標,軟件必須通過獨立測試實驗室的兼容性測試,確保在Windows OS 上能平穩(wěn)可靠的運行。數(shù)據(jù)共享兼容如:Windows環(huán)境下,對某個程序進行兼容性測試就要確認其數(shù)據(jù)能夠利用剪切板與其他程序進行相互復(fù)制8712.可用性測試可用性測試是為了檢測用戶在理解和使用系統(tǒng)方面到底有多好,包括:系統(tǒng)功能、系統(tǒng)發(fā)布、幫助文本和過程,以保證用戶能夠舒適地和系統(tǒng)交互??墒褂眯詼y試主要從使用的合理性和方便性等角度對軟件系統(tǒng)進行檢查,發(fā)現(xiàn)人為因素或使用上的問題。88一些應(yīng)當關(guān)注的可用性問題包

39、括:過分復(fù)雜的功能或者指令;困難的安裝過程;錯誤信息過于簡單,如:“系統(tǒng)錯誤”非標準的GUI接口;用戶被迫去記住太多的信息;難以登錄;幫助文本上下文不敏感或者不夠詳細;默認不夠清晰;接口太簡單或者太復(fù)雜8913.可安裝性測試一個軟件的安裝程序應(yīng)當平滑地集成用戶的新軟件到已有的系統(tǒng)中去,對話窗口提供簡單、容易理解的安裝選項和支持信息,完成安裝過程??砂惭b性測試的目的是驗證成功安裝系統(tǒng)的能力,不是找軟件錯誤,而是找安裝錯誤。清晰并且簡單的安裝過程是系統(tǒng)文檔中最重要的部分。901 文檔測試這種測試是驗證用戶文檔是正確的并且保證操作手冊的過程能夠正確工作。用戶文檔中所使用的例子必須在測試中一一試過,確

40、保敘述正確無誤。有助于發(fā)現(xiàn)系統(tǒng)中的不足/使系統(tǒng)更可用;可減少客戶支持成本。9115. 在線幫助測試一個糟糕的在線幫助會大大打擊用戶對系統(tǒng)的信心。一個好的系統(tǒng),必須要有完備的幫助體系,包括用戶操作手冊,實時在線幫助等。在線幫助測試用于驗證系統(tǒng)的實時在線幫助的可用性和正確性。9216. 數(shù)據(jù)轉(zhuǎn)換測試實際應(yīng)用環(huán)境中,經(jīng)常遇到環(huán)境需要升級的問題,新系統(tǒng)使用老數(shù)據(jù)是否會出現(xiàn)問題?據(jù)轉(zhuǎn)換測試的目標在于驗證已存在數(shù)據(jù)的轉(zhuǎn)換并載入一個新的數(shù)據(jù)庫是否是有效的。9317.可靠性測試軟件可靠性:在規(guī)定環(huán)境,規(guī)定時間內(nèi),一個系統(tǒng)或其功能無故障運行的可能性。如果系統(tǒng)需求說明書中有對可靠性的要求,則需進行可靠性測試。軟件

41、可靠性指標: 平均失效間隔時間 MTBF (Mean Time Between Failures) 是否超過規(guī)定時限? 因故障而停機的時間 MTTR (Mean Time To Repairs) 在一年中應(yīng)不超過多少時間。9418.Web網(wǎng)站測試功能測試鏈接測試表單測試Cookies測試設(shè)計語言測試數(shù)據(jù)庫測試性能測試連接速度測試容量測試壓力測試可用性測試導航測試 圖形測試 內(nèi)容測試 整體界面測試客戶端兼容性測試平臺測試 瀏覽器測試安全性測試95Web網(wǎng)站測試 - 功能測試(1)1.鏈接測試目的 測試所有鏈接是否按指示的那樣確實鏈接到了該鏈接的頁面;測試所鏈接的頁面是否存在;保證Web應(yīng)用系統(tǒng)上

42、沒有孤立的頁面,所謂孤立頁面是指沒有鏈接指向該頁面,只有知道正確的URL地址才能訪問。 鏈接測試可以自動進行,現(xiàn)在已經(jīng)有許多工具可以采用。鏈接測試必須在集成測試階段完成,也就是說,在整個Web應(yīng)用系統(tǒng)的所有頁面開發(fā)完成之后進行鏈接測試。 96Web網(wǎng)站測試 - 功能測試(2)2.表單測試 當用戶給Web應(yīng)用系統(tǒng)管理員提交信息時,就需要使用表單操作,例如用戶注冊、登陸、信息提交等。在這種情況下,我們必須測試提交操作的完整性,以校驗提交給服務(wù)器的信息的正確性。例如:用戶填寫的出生日期與職業(yè)是否恰當,填寫的所屬省份與所在城市是否匹配等。如果使用了默認值,還要檢驗?zāi)J值的正確性。如果表單只能接受指定的

43、某些值,則也要進行測試。例如:只能接受某些字符,測試時可以跳過這些字符,看系統(tǒng)是否會報錯。97Web網(wǎng)站測試 - 功能測試(3)3.Cookies測試 Cookies通常用來存儲用戶信息和用戶在某應(yīng)用系統(tǒng)的操作,當一個用戶使用Cookies訪問了某一個應(yīng)用系統(tǒng)時,Web服務(wù)器將發(fā)送關(guān)于用戶的信息,把該信息以Cookies的形式存儲在客戶端計算機上,這可用來創(chuàng)建動態(tài)和自定義頁面或者存儲登陸等信息。 如果Web應(yīng)用系統(tǒng)使用了Cookies,就必須檢查Cookies是否能正常工作。測試的內(nèi)容可包括Cookies是否起作用,是否按預(yù)定的時間進行保存,刷新對Cookies有什么影響等。 98Web網(wǎng)站測

44、試 - 功能測試(4)設(shè)計語言測試Web設(shè)計語言版本的差異可以引起客戶端或服務(wù)器端嚴重的問題,例如使用哪種版本的HTML等。當在分布式環(huán)境中開發(fā)時,開發(fā)人員都不在一起,這個問題就顯得尤為重要。99Web網(wǎng)站測試 - 功能測試(5)5.數(shù)據(jù)庫測試在Web應(yīng)用技術(shù)中,數(shù)據(jù)庫起著重要的作用,數(shù)據(jù)庫為Web應(yīng)用系統(tǒng)的管理、運行、查詢和實現(xiàn)用戶對數(shù)據(jù)存儲的請求等提供空間。在使用了數(shù)據(jù)庫的Web應(yīng)用系統(tǒng)中,一般情況下,可能發(fā)生兩種錯誤,分別是數(shù)據(jù)一致性錯誤和輸出錯誤。100Web網(wǎng)站測試 - 性能測試(1)1.連接速度測試用戶連接到Web應(yīng)用系統(tǒng)的速度根據(jù)上網(wǎng)方式的變化而變化,他們或許是電話撥號,或是寬帶

45、上網(wǎng);當下載一個程序時,用戶可以等較長的時間,但如果僅僅訪問一個頁面就不會這樣;有些頁面有超時的限制,如果響應(yīng)速度太慢,用戶可能還沒來得及瀏覽內(nèi)容,就需要重新登陸了。而且,連接速度太慢,還可能引起數(shù)據(jù)丟失,使用戶得不到真實的頁面。 101Web網(wǎng)站測試 - 性能測試(2)2.容量測試容量測試是為了測量Web系統(tǒng)在某一負載級別上的性能,以保證Web系統(tǒng)在需求范圍內(nèi)能正常工作。負載級別可以是某個時刻同時訪問Web系統(tǒng)的用戶數(shù)量,也可以是在線數(shù)據(jù)處理的數(shù)量。例如:Web應(yīng)用系統(tǒng)能允許多少個用戶同時在線?如果超過了這個數(shù)量,會出現(xiàn)什么現(xiàn)象?Web應(yīng)用系統(tǒng)能否處理大量用戶對同一個頁面的請求? 102We

46、b網(wǎng)站測試 - 性能測試(3)3.壓力測試壓力測試應(yīng)該安排在Web系統(tǒng)發(fā)布以后,在實際的網(wǎng)絡(luò)環(huán)境中進行測試。Intranet的用戶數(shù)目總是有限的,只有放在Internet上,接受負載測試,其結(jié)果才是正確可信的。 壓力測試是測試系統(tǒng)的限制和故障恢復(fù)能力,也就是測試Web應(yīng)用系統(tǒng)會不會崩潰,在什么情況下會崩潰。壓力測試的區(qū)域包括表單、登陸和其他信息傳輸頁面等。103Web網(wǎng)站測試 - 可用性測試(1)1.導航測試 考慮下列問題:導航是否直觀?Web系統(tǒng)的主要部分是否可通過主頁存?。縒eb系統(tǒng)是否需要站點地圖、搜索引擎或其他的導航幫助? Web應(yīng)用系統(tǒng)的用戶趨向于目的驅(qū)動,很少有用戶愿意花時間去熟悉

47、Web應(yīng)用系統(tǒng)的結(jié)構(gòu),因此,Web應(yīng)用系統(tǒng)導航幫助要盡可能地準確。 導航的另一個重要方面是Web應(yīng)用系統(tǒng)的頁面結(jié)構(gòu)、導航、菜單、連接的風格是否一致。確保用戶憑直覺就知道Web應(yīng)用系統(tǒng)里面是否還有內(nèi)容,內(nèi)容在什么地方。 Web應(yīng)用系統(tǒng)的層次一旦決定,就要著手測試用戶導航功能,讓最終用戶參與這種測試,效果將更加明顯。 104Web網(wǎng)站測試-可用性測試(2)2.圖形測試:在Web應(yīng)用系統(tǒng)中,適當?shù)膱D片和動畫可以美化頁面。一個Web應(yīng)用系統(tǒng)的圖形可以包括圖片、動畫、邊框、顏色、字體、背景、按鈕等。要確保圖形有明確的用途,圖片或動畫不要胡亂地堆在一起,以免浪費傳輸時間。Web應(yīng)用系統(tǒng)的圖片尺寸要盡量地小

48、,并且要能清楚地說明某件事情,一般都鏈接到某個具體的頁面。 驗證所有頁面字體的風格是否一致。 背景顏色應(yīng)該與字體顏色和前景顏色相搭配。 圖片的大小和質(zhì)量也是一個很重要的因素,一般采用JPG或GIF壓縮。105Web網(wǎng)站測試-可用性測試(3)3.內(nèi)容測試:內(nèi)容測試用來檢驗Web應(yīng)用系統(tǒng)提供信息的正確性、準確性和相關(guān)性。 信息的正確性是指信息是可靠的還是誤傳的。例如,在商品價格列表中,錯誤的價格可能引起財政問題甚至導致法律糾紛;信息的準確性是指是否有語法或拼寫錯誤。這種測試通常使用一些文字處理軟件來進行,例如使用Microsoft Word的“拼音與語法檢查”功能;信息的相關(guān)性是指是否在當前頁面可以找到與當前瀏覽信息相關(guān)的信息列表或入口,也就是一般W

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論