




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、項目3飛機票訂票系統(tǒng)功能測試項目項目簡介飛機票訂票軟件項目組完成了系統(tǒng)的集成工作,根據(jù)開發(fā)計劃將要將程序交給測試組進行功能測試。測試小組該如何對該軟件進行功能測試呢? 項目目標與要求(1)能制訂飛機票訂票系統(tǒng)功能測試的測試計劃(2)能根系統(tǒng)需求分析報告編制飛機票訂票軟件的功能測試的測試用例(3)能根據(jù)測試用例,熟練地對系統(tǒng)的訂票功能進行手工測試(4)能根據(jù)測試用例,熟練使用qtp工具,完成系統(tǒng)的打開訂票功能的測試(5)能熟練使用excel工具管理測試中發(fā)現(xiàn)的缺陷(bug)(6)能寫功能測試報告項目工作任務(1)閱讀飛機票訂票系統(tǒng)的需求分析報告,完成測試小組內容的內容分工,制訂單元測試計劃(2)
2、根據(jù)飛機票訂票系統(tǒng)的需求分析報告,編寫訂票、查詢、修改、刪除、打印報表功能的測試用例(3)根據(jù)訂票功能的測試用例,用手工的方式進行測試,記錄測試結果(4)根據(jù)查詢功能的測試用例,使用qtp工具,完成測試工作(5)用excel軟件完成測試工作日志,用excel軟件管理測試中發(fā)現(xiàn)的軟件缺陷,并完成功能測試的測試報告功能測試基本過程制訂功能測試計劃閱讀需求分析報告編寫功能測試用例和測試數(shù)據(jù)確定測試策略手工執(zhí)行測試測試報告bug跟蹤表錄制測試腳本設置檢查點執(zhí)行測試腳本搭建測試環(huán)境功能測試總結圖3-1 功能測試基本過程模塊一 制訂功能測試計劃學習目標1、理解訂票系統(tǒng)的需求分析報告2、理解功能測試的一般過
3、程、主要方法和策略工作任務1、閱讀訂票系統(tǒng)的需求分析報告2、選擇功能測試的策略3、編寫訂票系統(tǒng)功能測試的計劃任務1:閱讀訂票系統(tǒng)需求規(guī)格說明書讀一讀:訂票系統(tǒng)需求規(guī)格說明書一、系統(tǒng)登錄功能系統(tǒng)啟動后先顯示登錄窗體,必須通過輸入正確的帳戶和對應的密碼才能進入系統(tǒng),如果不正確則給出相應的提示信息。二、訂票功能1、登錄成功后系統(tǒng)自動進入新增訂票窗體,同時可以通過“新訂票”按鈕,或菜單進入新增訂票窗框體。2、在新增訂票窗體中,依次輸入訂票日期、出發(fā)地、到達地、航班、訂票顧客姓名、訂票張數(shù)、座位類型,系統(tǒng)能夠自動根據(jù)用戶選擇的航班顯示航班號、航空公司、志飛時間到達時間和單價,系統(tǒng)能夠根據(jù)訂票的票數(shù)、類型
4、和單價自動計算出訂單的總計金額。對用戶輸入的訂票日期要進行驗證,對于不滿足條件的給出明確的提示信息。出發(fā)地、到達地、航班系統(tǒng)自動顯示,用戶只要選擇就可以。3、單擊“insert order”按鈕,系統(tǒng)保存相關信息并生成并顯示此訂單的訂單號,并給出保存是否成功的信息。4、當按了“insert order”按鈕后,update order和delete order按鈕可用(沒有保存前這二個按鈕是不可用的),通過這二個按鈕可以對新增加的訂單進行修改或刪除操作,具體操作同修改訂單和刪除訂單功能。三、查詢訂單功能1、登錄成功后在新增訂票窗體,可以通過單擊“打開訂單”按鈕,或者菜單,進入查詢訂單條件對話框
5、。2、在查詢對話框中提供按“顧客姓名”、“訂票日期”和訂單號三種查詢模式。3、按姓名查詢:輸入顧客姓名(能夠模糊查詢,只要輸入姓名的一部分),系統(tǒng)以列表方式結出查詢的結果紀錄,用鼠標在列表雙擊(或者選取后,單擊ok按鈕)所要的訂單,系統(tǒng)將在訂票主窗口中顯示具體的訂單信息。根據(jù)需要可以進行修改、刪除等操作。如果沒有找到則顯示“沒有發(fā)現(xiàn)訂單,請再試一次”。4、按訂票日期查詢:輸入具體的訂票日期(只能輸入數(shù)字,日期不完整,“ok”按鈕無效),能夠對日期的合法性進行檢查,如果查到對應的訂票則顯示一個“查詢結果”的列表,用鼠標在列表雙擊(或者選取后,單擊ok按鈕)所要的訂單,系統(tǒng)將在訂票主窗口中顯示具體
6、的訂單信息。根據(jù)需要可以進行修改、刪除等操作。如果沒有找到則顯示“沒有發(fā)現(xiàn)訂單,請再試一次”。5、姓名和日期組合查詢:選擇取姓名和日期,在姓名欄輸入查詢的姓名,在日期欄輸入查詢的日期,操作同4和5。6、按訂單號查詢:輸入指定的訂單號(只能輸入數(shù)字),單擊“ok”進行查詢,如果查到對應的訂票則系統(tǒng)將在訂票界面上顯示具體的訂單信息,根據(jù)需要可以進行修改、刪除等操作。如果沒有找到則顯示“不存在這個數(shù)字”。四、修改訂單1、打開指定的訂單(open order操作, 新增訂單單擊”insert order”按鈕后也可以)。2、在訂單主窗口中,修改訂票日期、出發(fā)機場、到達機場、航班信息、顧客姓名和訂票張數(shù)
7、等(要求與新增訂票中相似)3、單擊“update order”按鈕保存修改結果(不單擊“update order”按鈕系統(tǒng)不會保存修改結果)。4、如果對訂單信息進行了修改,沒有單擊“update order”按鈕,進行“新建訂單”或“打開訂單”按鈕時系統(tǒng)會提示“信息已修改,是否要保存”。 確認后保存,取消則返回訂單主窗口中,不保存則進入“新建訂單”界面或“打開訂單”界面。五、刪除訂單1、打開指定的訂單(open order操作, 新增訂單單擊”insert order”按鈕后也可以)。2、在訂單主窗口中,單擊“delete order”按鈕或者“刪除工具”刪除當前訂單。3、系統(tǒng)給出提示“是否要
8、刪除此訂單?”,確認后刪除,取消則不刪除六、報表統(tǒng)計功能1、登錄成功后在新增訂票窗體,單擊“報表”的按鈕或在“analysis”菜單中選擇”report”項2、用純文本的方式以行的方式(二行一條訂單信息,和一行為主要信息,第二為到達時間和到達機場)顯示登錄代理帳戶所有訂單的報表,并給出匯總數(shù)據(jù)。七、圖表統(tǒng)計功能1、登錄成功后在新增訂票窗體,單擊“圖表”按鈕或在“analysis”菜單中選擇”graph”項2、通過graph窗體以訂單日期為單位顯示訂單數(shù)量。用戶可以選擇圖表的形式(三維柱形圖表、二維柱形圖表和三維餅圖)顯示按訂單日期的訂票數(shù)量統(tǒng)計。八、系統(tǒng)幫助功能1、登錄成功后在新增訂票窗體,單
9、擊“幫助”按鈕或在“help”菜單中選擇”contents”項2、系統(tǒng)自動打開”flight reservation help version 1.0”幫助窗框體,為用戶提供有關系統(tǒng)的操作說明。九、系統(tǒng)版權說明功能1、登錄成功后在新增訂票窗體,在“help”菜單中選擇”about”項2、系統(tǒng)顯示一個窗體,用以顯示本系統(tǒng)的版本說明信息。任務2:制訂訂票系統(tǒng)的功能測試計劃做一做:功能測試也叫黑盒子測試或數(shù)據(jù)驅動測試, 根據(jù)產(chǎn)品特征、操作描述和用戶方案,測試一個產(chǎn)品的特性和可操作行為以確定它們滿足設計需求。軟件的功能測試,用于驗證應用程序或網(wǎng)站對目標用戶能正確工作,使用適當?shù)钠脚_、瀏覽器和測試腳本,
10、以保證目標用戶的體驗將足夠好,就像應用程序是專門為該市場開發(fā)的一樣。功能測試只需考慮各個功能,不需要考慮整個軟件的內部結構及代碼.一般從軟件產(chǎn)品的界面、架構出發(fā),按照用戶需求編寫出來的測試用例,輸入數(shù)據(jù)在預期結果和實際結果之間進行評測,進而提出更加使產(chǎn)品達到用戶使用的要求。根據(jù)系統(tǒng)的需求規(guī)格說明書,可以看出這是一個規(guī)模比較小的系統(tǒng),可以采用手工測試和自動化測試相結合的方式進行測試。可以采用場景法、成效價類劃分法、邊界類法和常見錯誤法來編寫測試用例。本系統(tǒng)有8個功能點要測試,比較復雜的功能點是新增訂票、查詢訂票和修改訂票三個功能點,每個功能點大約需求10個測試用例,其它均為2-5個測試用例,初步
11、估計有50個測試用例,約有3人天的工作量,執(zhí)行測試則有8人天的工作量(包括編寫測試腳本)。所需求人員和工作計劃如下(回歸測試不包括在內):訂票系統(tǒng)功能測試項目小組成員:甲:測試小組組長乙:測試工程師丙:測試員?。簻y試員訂票系統(tǒng)功能測試計劃:序號安排日期工作內容負責人備注1星期一上午編寫測試計劃測試項目會議分配工作任務確定測試策略甲全體參與項目培訓軟件開發(fā)項目經(jīng)理2星期一下午至星期二下午閱讀需求分析編寫測試數(shù)據(jù)編寫測試用例乙3星期一下午至星期二下午搭建測試環(huán)境輸入部分測試數(shù)據(jù)丙、丁4周三上午測試用例評審會測試環(huán)境驗收甲全體參加軟件開發(fā)項目經(jīng)理5周四、周五、第二周周一、第二周周二全天執(zhí)行測試記錄測
12、試缺陷丙、丁乙進行指導6第二周三測試分析撰寫功能測試報告乙7第二周周四上午提交測試報告甲交軟件開發(fā)項目經(jīng)理8第二周周四下午項目小結甲全體人員參與模塊二 編寫功能測試的測試用例學習目標1、掌握等價類劃分、邊界值、場景等編寫功能測試測試用例的方法2、掌握測試用例的主要內容、編寫格式工作任務1、根據(jù)需求報告編寫登錄功能的測試用例2、根據(jù)需求報告編寫訂票功能的測試用例3、根據(jù)需求報告編寫查詢功能的測試用例任務1:編寫登錄功能的測試用例做一做:根據(jù)系統(tǒng)需求規(guī)格說明書的要求,采用場景法設計測試用例,在訂票系統(tǒng)中可以設置登錄、新增訂票、查詢、修改訂票、刪除訂票、打印報表、顯示統(tǒng)計圖表和幫助等8個大的應用場景
13、。同時考慮不同的運行環(huán)境,如win98/win2000/winxp/win vastar/win7等不同的操作系統(tǒng),對于不同的操作系統(tǒng),可以使用相同的測試用例(操作系統(tǒng)地欄不同)。對于登錄場景可以采用有效等價類法編寫測試用例,將測試用例分成錯誤和正確二大類,在正確類中設立用戶名和密碼小寫和大寫都正確的2個測試用例。在錯誤類中采用邊界值法設立用戶名和密碼為空、用戶名小于4個字符、密碼小于4個字符、用戶名不正確、密碼不正確等6個測試用例。通過采用等價類法和邊界值法可以保證測試用例能夠覆蓋到所有的測試項,測試用例匯總表如下:測試用例編號主要測試內容預期結果測試結果f_l_1用戶名、密碼為空顯示帳戶或
14、者密碼不對f_l_2用戶名少于4個字符,密碼正確顯示姓名字符不少于4個字符f_l_3用戶名正確,密碼少于4個字符顯示密碼字符不少于4個字符f_l_4用戶名不正確,密碼正確顯示帳戶或者密碼不對f_l_5用戶名正確,密碼不正確顯示帳戶或者密碼不對f_l_6用戶名正確、密碼不對顯示帳戶或者密碼不對f_l_7用戶名、密碼正確(小寫)成功,顯示訂票窗體f_l_7用戶名、密碼正確(大寫)成功,顯示訂票窗體注:這是一個測試用例的匯總表,在excel中放在第一個工作表中,表的名稱為“登錄功能測試用例匯總表”,最后一欄是測試完成后填寫,用于總后的統(tǒng)計。根據(jù)測試用例匯總表,編寫測試數(shù)據(jù),具體如下:輸入項目測試數(shù)據(jù)
15、正確的用戶名和密碼test和mercury錯誤的用戶名和密碼admin和admin不足4個字符的用戶名和密碼te和mer根據(jù)測試用例匯總表、cmmi3對測試用例的格式要求和測試數(shù)據(jù)表,在excel中逐個編寫測試用例(以用例編號作為工作表的表名)。下面是f_l_2測試用例的具體內容:測試用例編號f_l_2編寫人趙航濤編寫日期2011-1-20測試內容用戶名少于4個字符,密碼正確項目名稱登錄功能操作系統(tǒng)winxp操作過程:1、雙擊c:program filesmercury interactivequicktest professionalsamples flightapp目錄下的flight4a
16、.exe2、在代理帳戶欄中輸入“te”,在密碼欄中輸入”mercury”3、單擊ok按鈕預期結果顯示錯誤對話框“agent name must be at least 4 characters long”實際運行結果測試人測試時間是否有缺陷缺陷描述下面是f_l_7測試用例的具體內容:測試用例編號f_l_7編寫人趙航濤編寫日期2011-1-20測試內容用戶名密碼正確項目名稱登錄功能操作系統(tǒng)winxp操作過程:1、雙擊c:program filesmercury interactivequicktest professionalsamples flightapp目錄下的flight4a.exe2、
17、在代理帳戶欄中輸入“test”,在密碼欄中輸入”mercury”3、單擊ok按鈕預期結果自動進入系統(tǒng)訂票窗體實際運行結果測試人測試時間是否有缺陷缺陷描述測試用例的重點是操作過程和預期運行結果,操作過程根據(jù)需求規(guī)格說明書、常規(guī)應用程序的操作過程和編寫的測試數(shù)據(jù)來編寫,要求操作過程明確,先操作什么后操作什么,在哪兒輸入,輸入什么都要十分明確,測試人員可以根據(jù)這個操作步驟完成登錄工作。在f_l_2中操作過程的三個步驟是一般有軟件登錄的操作過程,操作過程中輸入的te,mercury則來自測試數(shù)據(jù)表。預期結果是根據(jù)規(guī)格說明書和常用軟件開發(fā)中慣例和系統(tǒng)界面設計而確定的(提示信息的具體內容是根據(jù)系統(tǒng)界面設計
18、來確定的)。實際運行結果、測試人、測試時間、是否是缺陷和缺陷描述是由執(zhí)行測試的人填寫的。練一練:參考上述的二個例子,根據(jù)測試用例匯總表和測試數(shù)據(jù)表自己完成f_l_1、f_l_4、f_l_7。讀一讀:1、等價類劃分等價類劃分是把所有可能的輸入數(shù)據(jù),即程序的輸入域劃分成若干部分(子集),然后從每一個子集中選取少數(shù)具有代表性的數(shù)據(jù)作為測試用例.該方法是一種重要的,常用的黑盒測試用例設計方法。劃分等價類等價類是指某個輸入域的子集合.在該子集合中,各個輸入數(shù)據(jù)對于揭露程序中的錯誤都是等效的.并合理地假定:測試某等價類的代表值就等于對這一類其它值的測試.因此,可以把全部輸入數(shù)據(jù)合理劃分為若干等價類,在每一
19、個等價類中取一個數(shù)據(jù)作為測試的輸入條件,就可以用少量代表性的測試數(shù)據(jù).取得較好的測試結果.等價類劃分可有兩種不同的情況:有效等價類和無效等價類。有效等價類:是指對于程序的規(guī)格說明來說是合理的,有意義的輸入數(shù)據(jù)構成的集合.利用有效等價類可檢驗程序是否實現(xiàn)了規(guī)格說明中所規(guī)定的功能和性能。無效等價類:與有效等價類的定義恰巧相反。設計測試用例時,要同時考慮這兩種等價類.因為,軟件不僅要能接收合理的數(shù)據(jù),也要能經(jīng)受意外的考驗.這樣的測試才能確保軟件具有更高的可靠性。設計測試用例在確立了等價類后,可建立等價類表,列出所有劃分出的等價類:輸入條件有效等價類、無效等價類,然后從劃分出的等價類中按以下三個原則設
20、計測試用例: 為每一個等價類規(guī)定一個唯一的編號。 設計一個新的測試用例,使其盡可能多地覆蓋尚未被覆蓋地有效等價類,重復這一步.直到所有的有效等價類都被覆蓋為止。 設計一個新的測試用例,使其僅覆蓋一個尚未被覆蓋的無效等價類,重復這一步.直到所有的無效等價類都被覆蓋為止。2、邊界值分析法邊界值分析方法是對等價類劃分方法的補充。(1)邊界值分析方法的考慮:長期的測試工作經(jīng)驗告訴我們,大量的錯誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內部.因此針對各種邊界情況設計測試用例,可以查出更多的錯誤.使用邊界值分析方法設計測試用例,首先應確定邊界情況.通常輸入和輸出等價類的邊界,就是應著重測
21、試的邊界情況.應當選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數(shù)據(jù),而不是選取等價類中的典型值或任意值作為測試數(shù)據(jù).(2)基于邊界值分析方法選擇測試用例的原則: 1)如果輸入條件規(guī)定了值的范圍,則應取剛達到這個范圍的邊界的值,以及剛剛超越這個范圍邊界的值作為測試輸入數(shù)據(jù)。 2)如果輸入條件規(guī)定了值的個數(shù),則用最大個數(shù),最小個數(shù),比最小個數(shù)少1,比最大個數(shù)多1的數(shù)作為測試數(shù)據(jù)。 3)根據(jù)規(guī)格說明的每個輸出條件,使用前面的原則1)。 4)根據(jù)規(guī)格說明的每個輸出條件,應用前面的原則2)。 5)如果程序的規(guī)格說明給出的輸入域或輸出域是有序集合,則應選取集合的第一個元素和最后一個元素作為測試用例。
22、6)如果程序中使用了一個內部數(shù)據(jù)結構,則應當選擇這個內部數(shù)據(jù)結構的邊界上的值作為測試用例。 7)分析規(guī)格說明,找出其它可能的邊界條件。任務2:編寫訂票功能的測試用例根據(jù)需求規(guī)格說明書,可以看出訂票功能界面和內部邏輯都比較復雜,為了提高測試的覆蓋度,可以采用法設計測試用例,主要包括正確類和不正確類,對于日期欄應采用邊界值法來設計測試用例,對于出發(fā)地、到達地和航班采用場景法來設計測試用例。測試用例的匯總表如下:測試用例編號主要測試內容預期結果測試結果f_n_1輸入非法日期(日超過31)顯示“invalid day entered .the day be valid for the given mo
23、nth.”對話框f_n_2輸入非法月份(月超過12)顯示“invalid month entered .the month be greater than 01 and less than 12.”對話框f_n_3輸入今天以前的日期顯示“valid flight dates are after 02/10/11”對話框f_n_4輸入正確日期,保存沒有選擇出發(fā)地f_n_5輸入正確日期和出發(fā)地,保存沒有選擇到達地f_n_6輸入正確日期、出發(fā)地和到達地,保存沒有選擇航班f_n_7輸入正確日期、出發(fā)地、到達地和航班,保存沒有輸入姓名f_n_8輸入正確日期、出發(fā)地、到達地、航班和顧客姓名,保存成功保存f
24、_n_9修改顧客姓名、票數(shù),保存總價變化,成功保存f_n_10修改座位類別,保存單價、總價變化,成功保存f_n_11修改航班,保存單價、總價變化,成功保存f_n_12修改到達地,保存航班信息清空,沒有選擇航班f_n_13修改出發(fā)地,保存航班信息清空,沒有選擇到達地f_n_14修改日期,保存航班信息清空,沒有選擇到達地f_n_15修改日期、出發(fā)地、到達地、航班、票數(shù)、顧客姓名和座位類別,保存成功保存根據(jù)訂票測試用例匯總表,編寫測試數(shù)據(jù),具體如下:輸入項目輸入數(shù)據(jù)修改數(shù)據(jù)1(沒保存)修改數(shù)據(jù)2(保存)用戶名test密碼mercury日期03/02/1103/03/1103/03/11日期(日錯誤)
25、03/32/11日期(月錯誤)13/02/11日期(在今天之前)02/02/11出發(fā)地denverparisparis到達地londonlosangelesdenver航班號(自動顯示)202622025317077起發(fā)時間(自動顯示)10:21am8:12am10:24am降落時間(自動顯示)05:23pm03:23pm12:54am航空公司名稱(自動顯示)aaaaaf顧客姓名mark jonmark li票數(shù)12座位類別economybusiness單價(自動顯示)$112.20$224.40$222.94總金額(自動顯示)$112.20$448.80$445.88訂單號(自動顯示,保存后
26、才顯示)11注:由于系統(tǒng)日期不同,在具體測試時要根據(jù)實際情況對日期進行調整,或者將系統(tǒng)日期改為02/05/11,這樣才能保證測試數(shù)據(jù)是有效的。根據(jù)測試用例匯總表、cmmi3對測試用例的格式要求和測試數(shù)據(jù)表,在excel中逐個編寫測試用例(以用例編號作為工作表的表名)。下面是f_n_1測試用例的具體內容:測試用例編號f_n_1編寫人趙航濤編寫日期2011-1-20測試內容日期輸入錯誤(日超過31)項目名稱登錄功能操作系統(tǒng)winxp操作過程:1、 啟動flight4a.exe程序,帳戶名輸入test,密碼輸入mercury,進入訂票系統(tǒng)窗體2、 在date of flight中輸入:03/32/1
27、03、 在fly from中選擇“denver”預期結果顯示“invalid day entered .the day be valid for the given month.”對話框實際運行結果測試人測試時間是否有缺陷缺陷描述下面是f_n_8測試用例的具體內容:測試用例編號f_n_8編寫人趙航濤編寫日期2011-1-20測試內容成功訂票項目名稱登錄功能操作系統(tǒng)winxp操作過程:1、 啟動flight4a.exe程序,帳戶名輸入test,密碼輸入mercury,進入訂票系統(tǒng)窗體2、 在date of flight中輸入:03/02/113、 在fly from中選擇“denver”4、 在
28、fly to:中選擇”london”5、 單擊flights按鈕,選擇“20262”航班6、 在name欄中輸入:mark jon7、 在tickets欄中輸入:18、 在class欄中選擇:economy9、 單擊“insert order”按鈕預期結果單價和總價顯示:$112.20,狀態(tài)欄顯示:insert done,order n0顯示:11顯示“inserting order.”對話框(此對話框大約5秒鐘后自動消失) 數(shù)據(jù)庫中增加相應的訂單記錄實際運行結果測試人測試時間是否有缺陷缺陷描述下面是f_n_12測試用例的具體內容:測試用例編號f_n_12編寫人趙航濤編寫日期2011-1-20
29、測試內容保存后修改到達地項目名稱登錄功能操作系統(tǒng)winxp操作過程:1、 接著f_n_11的界面2、 在fly to:中選擇”losangeles”3、 單擊“update order”按鈕預期結果到達地、航班信息、座位類別、單價和合計清空彈出“請選擇到達城市”實際運行結果測試人測試時間是否有缺陷缺陷描述練一練:參照上面二個測試用例,自己課后完成f_n_3、f_n_7、f_n_15測試用例。讀一讀:場景法:通過運用場景來對系統(tǒng)的功能點或業(yè)務流程的描述,從而提高測試效果。場景法一般包含基本流和備用流,從一個流程開始,通過描述經(jīng)過的路徑來確定的過程,經(jīng)過遍歷所有的基本流和備用流來完成整個場景。下面
30、是場景法的基本設計步驟 1. 根據(jù)說明,描述出程序的基本流及各項備選流 2. 根據(jù)基本流和各項備選流生成不同的場景 3. 對每一個場景生成相應的測試用例 4. 對生成的所有測試用例重新復審,去掉多余的測試用例,測試用例確定后,對每一個測試用例確定測試數(shù)據(jù)值。任務3:編寫查詢訂票功能的測試用例根據(jù)需求規(guī)格說明書,可以看出查詢訂票功能界面和內部邏輯都比較復雜,為了提高測試的覆蓋度,可以采用場景法設計測試用例,主要包括按姓名查詢、按日期查詢、按訂單號查詢和按姓名日期聯(lián)合查詢4種場景。對于日期查詢用可用有效類和邊界值法來設計具體的測試用例,對于姓名和訂單號查詢應采用等價類法來設計測試用例,對于日期和姓
31、名組合查詢要采用判定表法設計測試用例。測試用例的匯總表如下:測試用例編號主要測試內容預期結果測試結果f_o_1按姓名查詢(數(shù)據(jù)庫中沒有的姓名)顯示“沒有記錄”對話框f_o_2按姓名查詢(正確的姓名)顯示滿足條件的“訂票記錄”列表框f_o_3按姓名查詢(姓名的一部分)顯示滿足條件的“訂票記錄”列表框f_o_4按日期查詢(輸入錯誤天數(shù))顯示日期錯誤對話框f_o_5按日期查詢(輸入錯誤月份)顯示日期錯誤對話框f_o_6按日期查詢(輸入以前的正確日期,有記錄)顯示滿足條件的“訂票記錄”列表框f_o_7按日期查詢(輸入以后的正確日期,有記錄)顯示滿足條件的“訂票記錄”列表框f_o_8按日期查詢(輸入以后
32、的正確日期,無記錄)顯示“沒有記錄”對話框f_o_9按訂單號查詢(輸入不存在的訂單號)顯示“沒有記錄”對話框f_o_10按訂單號查詢(輸入存在的訂單號)顯示滿足條件的“訂票記錄”列表框f_o_11按日期與姓名組合查詢(輸入正確的姓名和日期)顯示滿足條件的“訂票記錄”列表框f_o_12按日期與姓名組合查詢(輸入不存在的姓名和日期)顯示“沒有記錄”對話框f_o_13按日期與姓名組合查詢(輸入正確的姓名和沒有訂票的日期)顯示“沒有記錄”對話框根據(jù)訂票測試用例匯總表,編寫測試數(shù)據(jù),具體如下:輸入項目輸入數(shù)據(jù)能查詢到的顧客姓名bob johnson能查詢到的顧客姓名的一部分john不能查詢到的顧客姓名z
33、haohangtao日期(天錯誤)03/32/11日期(月錯誤)13/02/11可以查到記錄的日期(在今天之前)02/12/11可以查到記錄的日期(在今天之后)03/02/11不能查到記錄的合法日期04/02/11存在的訂單號2不存在的訂單號30組合查詢1(可查到記錄)jon baker,02/12/11組合查詢2(姓名對日期不對)jon,04/02/11組合查詢3(姓名不對日期對)zhaohangtao,02/12/11注:由于系統(tǒng)日期不同,在具體測試時要根據(jù)軟件的安裝情況對日期進行調整,這樣才能保證測試數(shù)據(jù)是有效的。根據(jù)測試用例匯總表、cmmi3對測試用例的格式要求和測試數(shù)據(jù)表,在exce
34、l中逐個編寫測試用例(以用例編號作為工作表的表名)。下面是f_n_1測試用例的具體內容:測試用例編號f_o_1編寫人趙航濤編寫日期2011-1-20測試內容日期輸入錯誤(日超過31)項目名稱登錄功能操作系統(tǒng)winxp操作過程:1、 啟動flight4a.exe程序,帳戶名輸入test,密碼輸入mercury,進入訂票系統(tǒng)窗體2、 單擊“open order”按鈕3、 在“open order”對話框中,選擇“customer name”選項4、 在customer name欄中輸入: zhaohangtao,單擊“ok”按鈕預期結果顯示“no orders found.please try a
35、gain”實際運行結果測試人測試時間是否有缺陷缺陷描述下面是f_o_7測試用例的具體內容:測試用例編號f_o_7編寫人趙航濤編寫日期2011-1-20測試內容成功訂票項目名稱登錄功能操作系統(tǒng)winxp操作過程:1、 啟動flight4a.exe程序,帳戶名輸入test,密碼輸入mercury,進入訂票系統(tǒng)窗體2、 單擊“open order”按鈕3、 在“open order”對話框中,選擇“flight date”選項4、 在flight date欄中輸入:03/02/11,單擊“ok”按鈕預期結果彈出“search results”列表框,其中包含mark jon和zhao hang等4條
36、訂票記錄實際運行結果測試人測試時間是否有缺陷缺陷描述下面是f_o_10測試用例的具體內容:測試用例編號f_o_10編寫人趙航濤編寫日期2011-1-20測試內容保存后修改到達地項目名稱登錄功能操作系統(tǒng)winxp操作過程:1、 啟動flight4a.exe程序,帳戶名輸入test,密碼輸入mercury,進入訂票系統(tǒng)窗體2、 單擊“open order”按鈕3、 在“open order”對話框中,選擇“order no”選項4、 在order no欄中輸入2,單擊“ok”按鈕預期結果彈出“search results”列表框,其中包含mark jon和zhao hang等4條訂票記錄其中包含f
37、red smith在2011/2/12訂的3張4295航班的機票。實際運行結果測試人測試時間是否有缺陷缺陷描述練一練:參照上面三個測試用例,自己課后完成f_o_3、f_n_6、f_n_110測試用例。讀一讀:判定表法:判定表(decision table),它是分析和表達多邏輯條件下執(zhí)行不同操作的情況下的工具。在程序設計發(fā)展的初期,判定表就已被當做編寫程序的輔助工具了。由于判定表測試嚴格,能夠將復雜的邏輯關系和多種條件組合的情況表達得既具體又明確,針對不同的邏輯條件組合值,分別執(zhí)行不同的操作,因此,使用判定表能夠設計出完整的測試用例集合。判定表是一種針對存在條件、動作關系或者因果關系的特性測試
38、的用例設計方法。判定表通常由4個部分組成。1)條件樁(condition stub):列出了問題的所有條件,列出條件的次序沒有約束。2)動作樁(action stub):列出問題規(guī)定可能采取的操作,這些操作的排列順序無關緊要。3)條件項(condition entry):列出條件樁給出的條件并列出所有可能的取值。針對條件樁的條件和條件項的取值,判斷在整個程序模塊中的所有可能的情況下其結果的真假值。4)動作項(action entry):列出在條件項的各種取值情況下應該采取的動作。判定表的建立步驟如下:1)確定規(guī)則的個數(shù),例如,有n個條件,那么決策表中就有2n個規(guī)則(每個條件取真、假值)。2)列
39、出所有的條件樁和動作樁。3)填入條件項。4)填入動作項,得到初始判定表。5)簡化判定表,合并相似規(guī)則。模塊三 手工方式進行功能測試學習目標1、掌握測試環(huán)境的建立方法2、掌握根據(jù)測試用例進行手工測試的方法3、掌握正確填寫測試用例工作任務1、 搭建測試環(huán)境2、 根據(jù)測試用例進行功能測試任務1:測試環(huán)境(testing environment)=軟件+硬件+網(wǎng)絡+數(shù)據(jù)準備+測試工具。測試環(huán)境是指為了完成軟件測試工作所必需的計算機硬件、軟件、網(wǎng)絡設備、歷史數(shù)據(jù)的總稱。毫無疑問,穩(wěn)定和可控的測試環(huán)境,可以使測試人員花費較少的時間就完成測試用例的執(zhí)行,也無需為測試用例、測試過程的維護花費額外的時間,并且可
40、以保證每一個被提交的缺陷都可以在任何時候被準確的重現(xiàn)。測試環(huán)境的搭建主要包括如下內容:操作系統(tǒng):根據(jù)測試用例中操作系統(tǒng)的要求安裝操作系統(tǒng)。數(shù)據(jù)庫管理系統(tǒng):根據(jù)系統(tǒng)設計說明書安裝數(shù)據(jù)庫管理系統(tǒng)。運行環(huán)境安裝:根據(jù)系統(tǒng)設計說明書安裝系統(tǒng)開發(fā)平臺。不同開發(fā)平臺開發(fā)的軟件需求安裝特點的運行環(huán)境,如java類軟件要安裝jdk,對于vb開發(fā)的軟件要安裝vb運行環(huán)境,對于.net開發(fā)的軟件要安裝.net framework。對于b/s模式的系統(tǒng),還要安裝web服務器和相關的插件等,如iis,apache,tomcat等。測試工具試對象的安裝:根據(jù)被測試系統(tǒng)的系統(tǒng)安裝手冊。測試對象系統(tǒng)配置:根據(jù)被測試系統(tǒng)的系
41、統(tǒng)使用手冊對系統(tǒng)進行一定的配置,保證其能夠正確運行。做一做:1、操作系統(tǒng)安裝:安裝winxp(sp3),請參考其它資料。2、數(shù)據(jù)庫系統(tǒng)安裝:安裝office2003(系統(tǒng)使用的是access數(shù)據(jù)庫),請參考其它資料。3、運行環(huán)境安裝:安裝.net framework2.0,請參考后面的閱讀材料。4、測試工具安裝:安裝qtp9.2,請參考后面的閱讀材料。5、測試對象系統(tǒng)安裝:qtp9.2安裝的過程中會自動安裝flight應用軟件。6、測試對象系統(tǒng)配置:qtp9.2安裝的過程中自動配置odbc 任務2:手工執(zhí)行測試用例按照測試計劃,根據(jù)測試用例進行測試,根據(jù)運行結果填寫測試用例。對比測試結果與預期
42、結果,確定是否存在缺陷,如果發(fā)現(xiàn)顯示的結果與操作過程中定義的不同,或者界面上出現(xiàn)錯誤,或者沒有顯示規(guī)定的對話框,就要認定出現(xiàn)了缺陷。如果發(fā)現(xiàn)實際結果與預期結果不符的異常情況,首先要對異常情況進行初步的分析,排除人為因素、環(huán)境因素的影響,重新執(zhí)行這個測試用例,如果出現(xiàn)同樣的異常問題,就可以確認為一個缺陷,要在測試用例中記錄這個缺陷并上報測試組長。做一做:1、手動執(zhí)行f_n_1測試用例測試用例編號f_n_1編寫人趙航濤編寫日期2011-1-20測試內容日期輸入錯誤(日超過31)項目名稱登錄功能操作系統(tǒng)winxp操作過程:1、 啟動flight4a.exe程序,帳戶名輸入test,密碼輸入mercu
43、ry,進入訂票系統(tǒng)窗體2、 在date of flight中輸入:03/32/103、 在fly from中選擇“denver”預期結果顯示“invalid day entered .the day be valid for the given month.”對話框實際運行結果測試人測試時間是否有缺陷缺陷描述根據(jù)f_n_1測試用例中的操作過程,依次執(zhí)行相關的操作。(1) 啟動系統(tǒng),在登錄對話框的用戶名、密碼中輸入用戶名和密碼(有專門的測試用例測試登錄功能,在此不要仔細核對)(2) 在訂票窗體中仔細檢查:文字是否有錯誤,圖片是否有錯誤,顯示效果是否合理等。(3) 在訂票窗框體的日期欄中輸入03/
44、32/11,在出發(fā)地中選擇” denver”(4) 觀察是否彈出“invalid day entered .the day be valid for the given month.”對話框,對話框中的提示信息是否存在錯誤等,如圖3-2:圖3-2 f_n_1測試用例運行圖(5) 根據(jù)運行的情況和測試用例預期結果進行對比,確認本次測試是否通過,有沒有發(fā)現(xiàn)錯誤,將結果填寫到測試用例中。2、手動執(zhí)行f_n_8測試用例測試用例編號f_n_8編寫人趙航濤編寫日期2011-1-20測試內容成功訂票項目名稱登錄功能操作系統(tǒng)winxp操作過程:1、 啟動flight4a.exe程序,帳戶名輸入test,密碼輸
45、入mercury,進入訂票系統(tǒng)窗體2、 在date of flight中輸入:03/02/113、 在fly from中選擇“denver”4、 在fly to:中選擇”london”5、 單擊flights按鈕,選擇“20262”航班6、 在name欄中輸入:mark jon7、 在tickets欄中輸入:18、 在class欄中選擇:economy9、 單擊“insert order”按鈕預期結果單價和總價顯示:$112.20,狀態(tài)欄顯示:insert done,order n0顯示:11顯示“inserting order.”對話框(此對話框大約5秒鐘后自動消失) 數(shù)據(jù)庫中增加相應的訂單
46、記錄實際運行結果測試人測試時間是否有缺陷缺陷描述根據(jù)f_n_8測試用例中的操作過程,依次執(zhí)行相關的操作。1、 啟動flight4a.exe(開始菜單程序quicktest professionalsample applicationflight),根據(jù)測試用例的要求,在login窗體中輸入test和mercury,如圖3-3:圖3-3 f_n_8測試用例運行2、 單擊“確認”按鈕,如圖3-4:圖3-4 f_n_8測試用例運行3、 根據(jù)要求依次輸入相關的內容,如圖3-4:4、 單擊“insert order”按鈕,顯示如圖3-5:圖3-5 f_n_8測試用例運行測試結果與測試用例中的預期結果相同
47、,使用access打開“c:program filesmercury interactivequicktest professionalsamplesflightappflight.mdb”文件,選擇orders表,此表中增加了mark jon訂的2011年3月2日202053航班一張機票的記錄。此測試用例通過,根據(jù)測試結果填寫f_n_8測試用例。練一練:參照上面的二個例子,執(zhí)行f_l_2和f_l_6二個測試用例。模塊四 qtp自動化功能測試學習目標1、掌握qtp的基礎操作2、掌握根據(jù)測試用例錄制qtp測試腳本2、掌握根據(jù)測試用例在qtp測試腳本中添加檢查點工作任務1、在qtp中錄制新增訂票的
48、測試腳本2、在新增訂票的測試腳本中設置檢查點3、執(zhí)行新增訂票測試腳本并分析qtp測試報告任務1:在qtp中錄制新增訂票的測試腳本在qtp,根據(jù)f_l_6、f_n_1、f_n_2、f_n_3、f_n_4、f_n_5、f_n_6、f_n_7、f_n_8測試用例,錄制增加訂票的測試腳本。學一學:1、測試腳本(testing script):一般指的是一個特定測試的一系列指令,這些指令可以被自動化測試工具執(zhí)行。 為了提高測試腳本的可維護性和可復用性,必須在執(zhí)行測試腳本之前對它們進行構建?;蛟S會發(fā)現(xiàn)這樣的情況,即有的操作將出現(xiàn)在幾個測試過程中。因此,應有目的地確定這些操作的目標,這樣就可以復用它們的實施
49、。 測試腳本是自動執(zhí)行測試過程(或部分測試過程)的計算機可讀指令。測試腳本可以被創(chuàng)建(記錄)或使用測試自動化工具自動生成,或用編程語言編程來完成,也可綜合前三種方法來完成。測試腳本可以分為:線性腳本:是錄制手工執(zhí)行的測試實力得到的腳本。這種腳本包括所有的擊鍵、功能鍵、箭頭、控制測試軟件的控制鍵及輸入數(shù)據(jù)的數(shù)字鍵。 結構化腳本:類似于結構化程序設計,結構化腳本中含有控制腳本設計的指令。這些指令或為控制結構或為調用結構。 共享腳本:腳本可能被多個測試事例使用。 數(shù)據(jù)驅動腳本技術:將測試輸入存儲在獨立的文件中,而不是存儲在腳本中。 關鍵字驅動腳本:較復雜的數(shù)據(jù)驅動技術的邏輯擴展。2、關鍵字驅動:關鍵
50、字驅動實際上是比較復雜的數(shù)據(jù)驅動技術的邏輯擴展。將數(shù)據(jù)文件變成測試用例的描述,用一系列關鍵字指定要執(zhí)行的任務。主要關鍵字包括三類:被操作對象(item)、操作(operation)和值(value),用面向對象形式可將其表現(xiàn)為 item.operation(value),將測試邏輯按照這些關鍵字進行分解,形成數(shù)據(jù)文件。用關鍵字的形式將測試邏輯封裝在數(shù)據(jù)文件中,測試工具只要能夠解釋這些關鍵字即可對其應用自動化。在關鍵字驅動技術中,假設測試者具有某些被測系統(tǒng)的知識,所以不必告訴測試者如何進行詳細的動作,只是說明測試用例做什么,而不是如何做。這樣在腳本中使用的是說明性方法和描述性方法。描述性方法將被
51、測軟件的知識建立在測試自動化環(huán)境中,這種知識包含在支持腳本中。例如,為完成在網(wǎng)頁瀏覽時輸入網(wǎng)址,一般的腳本需要說明在某某窗口的某某控件中輸入什么字符;而在關鍵字驅動腳本中,可以直接是在地址欄中輸入網(wǎng)址什么什么;甚至更簡單,僅說明輸入網(wǎng)址什么。關鍵字驅動腳本的數(shù)量不隨測試用例的數(shù)量變化,而僅隨軟件規(guī)模而增加。這種腳本還可以實現(xiàn)跨平臺的用例共享,只需要更改支持腳本即可。做一做:操作過程:1、啟動qtp:win系統(tǒng)的開始菜單程序 quicktest professional quicktest professional2、錄制測試腳本設置測試程序:在qtp窗體中單擊工具欄中的“record”按鈕,彈
52、出record and run setting對話框,在對話框中單擊“windows application”項,單擊“新增”按鈕,在彈出的文件對話框中單擊ok按鈕(系統(tǒng)默認打開c:program filesmercury interactivequicktest professional samples flight appflight4a.exe”文件,如果要測試其它程序在此對話框中選擇相應的程序文件),效果如圖3-6:單擊“確定”按鈕,系統(tǒng)自動啟動flight4a程序,顯示flight系統(tǒng)的登錄界面,如圖3-7。圖3-6 qtp中設置被測試應用程序根據(jù)f_l_6測試用例的操作步驟,在登錄
53、界面中分別輸入test和mercury,單擊“確認”按鈕,如圖3-7:圖3-7 qtp測試腳本錄制根據(jù)f_n_1測試用例的操作步驟,在訂票窗體的date of elight欄中輸入:02/01/10,然后在fly from欄中選擇“denver”,系統(tǒng)彈出“valid flight dates are after 02/10/11”警告對話框,單擊“確認”按鈕根據(jù)f_n_2測試用例的操作步驟,在訂票窗體的date of elight欄中輸入:13/01/11,然后在fly from欄中選擇“denver”,系統(tǒng)彈出“invalid month entered .the month be greater than 01 and less than 12.”警告對話框,單擊“確認”按鈕根據(jù)f_n_3測試用例的操作步驟,在訂票窗體的date of elight欄中輸入:03/32/11,然后在fly from欄中選擇“denver”,系統(tǒng)彈出“invalid day entered .the day be valid for
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 法律服務行業(yè)法律顧問服務協(xié)議
- 產(chǎn)業(yè)園物業(yè)服務合同
- 古詩文登高解讀與教學方案設計
- 個人權益保護網(wǎng)絡平臺使用協(xié)議
- 企業(yè)級網(wǎng)絡安全預防預案
- 裝修工程擔保合同
- 《宋代書法欣賞:大學書法藝術課程教案》
- 在線教育行業(yè)分析模擬試題集
- 股權擔保協(xié)議書規(guī)范
- 企業(yè)社會責任年度演講致辭草稿
- 中國后循環(huán)缺血的專家共識48506課件
- 信用管理概論課件整書電子教案完整版教學課件全套ppt教學教程最全課件最新
- 思想道德與法治全冊教案
- (高職)旅游景區(qū)服務與管理電子課件完整版PPT全書電子教案
- 唯美動畫生日快樂電子相冊視頻動態(tài)PPT模板
- 設計文件簽收表(一)
- 試運行方案計劃-
- 可研匯報0625(專家評審)
- 帶電核相試驗報告
- SCH壁厚等級對照表
- 春季常見傳染病預防知識PPT課件
評論
0/150
提交評論