級軟件工程專業(yè)《軟件測試技術》實驗文檔_馬麗
《級軟件工程專業(yè)《軟件測試技術》實驗文檔_馬麗》由會員分享,可在線閱讀,更多相關《級軟件工程專業(yè)《軟件測試技術》實驗文檔_馬麗(14頁珍藏版)》請在裝配圖網上搜索。
1、 《軟件測試技術》實驗指導書 適用專業(yè): 軟件工程(本科) 實驗學時:30 一、 適用范圍 大綱適用于軟件工程專業(yè)本科教學使用。 二、課程名稱 《軟件測試技術》 三、實驗教學目的和要求 1、實驗目的 本實驗課程配合《軟件測試技術》理論課同步開設,其中包括驗證型、設計型和綜合型實驗。本實驗課程著眼于理論與應用的結合,注重培養(yǎng)學生軟件測試的實際動手能力,增強軟件工程項目的質量管理意識。通過實驗教學,使學生掌握軟件測試的方法和技術,并能運用軟件測試工具進行自動化測試。 2、實驗要求 實驗前要充分做好準備工作: 1.復習和掌握與本實驗有關的知識內容; 2.預習、思考實
2、驗內容; 3.對實驗內容進行分析和設計。 實驗過程中,實驗者必須服從指導教師和實驗室工作人員的安排,遵守紀律與實驗制度,愛護設備及衛(wèi)生。在指定的實驗時間內,必須到實驗室內做實驗。 對于上機過程中出現(xiàn)的問題,盡量先獨立思考和解決;對于難以解決的問題可以和同學交流或詢問老師;對于同一個實驗題目,可以考慮多種方法來實現(xiàn),然后比較并選擇出一種較為有效的方法來實現(xiàn)。 對于設計型和驗證型實驗,實驗時一人一組,獨立上機。對于綜合型實驗,每四人組成一個小組,由組長來組織管理小組成員,共同完成實驗內容。 四、實驗項目與學時分配 序號 實驗項目 學時數(shù) 實驗類型 1 實例程序設計 4 設
3、計 2 功能性測試(黑盒測試) 6 設計、驗證 3 結構性測試(白盒測試) 4 設計、驗證 4 單元測試 2 設計、驗證 5 QTP的使用 4 驗證 6 LoadRunner的使用 4 驗證 7 WinRunner的使用 2 驗證 8 Web系統(tǒng)測試 4 綜合 合計 30 實驗1 測試的實例程序的設計(4學時) 一、實驗目的 完成測試程序的編寫,后續(xù)的實驗將以這些程序作為測試對象用不同的測試方法來進行測試。 二、實驗內容 1、設計三角形問題的程序 2、設計Nextdate函數(shù)的程序 3、設計傭
4、金問題的程序 4、簡單ATM系統(tǒng) 5、貨幣轉換器 三、實驗步驟 1、第2周完成各程序的總體設計和前兩個程序的實現(xiàn)并進行調試。 2、第3、4周實現(xiàn)后3個程序的功能。 四、實驗要求 1、用C或C++、JAVA語言開發(fā)程序,根據(jù)題目要求實現(xiàn)程序功能; 2、畫出程序功能的實現(xiàn)圖(流程圖或數(shù)據(jù)流圖或對象(類)模型或狀態(tài)圖等); 3、撰寫實驗報告; 4、打包各程序相關資料且上交。 實驗2 功能性測試(6學時) 一、 實驗目的 1、能熟練應用功能性測試技術進行測試用例設計; 2、對測試用例進行優(yōu)化設計; 二、 實驗內容 1.題目一:貨幣轉換器 根據(jù)該程序的規(guī)格說明,
5、作等價類的劃分,并設計測試方案。 2.題目二:三角形問題 根據(jù)下面給出的規(guī)格說明,利用等價類劃分的方法,給出足夠的測試用例。 “一個程序讀入三個整數(shù)。把此三個數(shù)值看成是一個三角形的三個邊。這個程序要打印出信息,說明這個三角形是三邊不等的、是等腰的、還是等邊的?!? 3.題目三:日期問題 用決策表測試法測試以下程序:該程序有三個輸入變量month、day、year(month 、 day和year均為整數(shù)值,并且滿足:1≤month≤12和1≤day≤31),分別作為輸入日期的月份、日、年份,通過程序可以輸出該輸入日期在日歷上隔一天的日期。例如,輸入為 2021 年11月29日,則該程序
6、的輸出為2004年12月1日。 (1) 分析各種輸入情況,列出為輸入變量 month 、 day 、 year 劃分的有效等價類。 (2) 分析程序的規(guī)格說明,并結合以上等價類劃分的情況,給出問題規(guī)定的可能采取的操作(即列出所有的動作樁)。 (3) 根據(jù) (1) 和 (2) ,畫出簡化后的決策表。 4.題目四:計算器 三、實驗步驟 1、根據(jù)功能性測試技術設計測試用例,主要考慮等價類劃分和邊界值分析測試技術; 2、根據(jù)所學知識確定優(yōu)化策略(原則:用最少的用例檢測出更多的缺陷、軟件測試的充分性與冗余性考慮),設計兩套測試用例集; 3、根據(jù)設計的兩套測試用例集進行測試; 四
7、、實驗要求 1、根據(jù)題目要求編寫測試用例(參照表1進行用例設計); 2、實驗結果要求給出兩套測試用例集測試效果比較; 3、撰寫實驗報告; 實驗3 結構性測試(4學時) 一、實驗目的 1、掌握結構性測試技術,并能應用結構性測試技術設計測試用例; 2、對測試用例進行優(yōu)化設計 二、實驗內容 1.題目一:使用邏輯覆蓋測試方法測試以下程序段 void DoWork (int x,int y,int z) { int k=0, j=0; if ( (x>3)&&(z<10) ) { 4 k=x*y-1; 5 j=sqrt(k); 6 }
8、7 if((x==4)||(y>5)) 8 j=x*y+10; 9 j=j%3; 10} 說明:程序段中每行開頭的數(shù)字(1~10)是對每條語句的編號。 (1)畫出程序的控制流圖(用題中給出的語句編號表示)。 (2)分別以語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、組合覆蓋和路徑覆蓋方法設計測試用例,并寫出每個測試用例的執(zhí)行路徑(用題中給出的語句編號表示)。 2.題目二:三角形問題 在三角形計算中,要求輸入三角型的三個邊長:A、B 和C。當三邊不可能構成三角形時提示錯誤,可構成三角形時計算三角形周長。若是等腰三角形打印“等腰三角形”,若是等邊三角形,則提示“等邊三角形
9、”。畫出程序流程圖、控制流程圖、計算圈復雜度V(g),找出基本測試路徑。 3.題目三:計算生日是星期幾 已知公元1年1月1日是星期一。編寫一個程序,只要輸入年月日,就能回答那天是星期幾。應用邏輯覆蓋方法和基路徑測試方法為上面的問題設計測試用例。 4.題目四:選擇排序 下面是選擇排序的程序,其中datalist是數(shù)據(jù)表,它有兩個數(shù)據(jù)成員:一是元素類型為Element的數(shù)組V,另一個是數(shù)組大小n。算法中用到兩個操作,一是取某數(shù)組元素V[i]的關鍵碼操作getKey ( ),一是交換兩數(shù)組元素內容的操作Swap( ): void SelectSort ( datalist &
10、 list ) { /對表list.V[0]到list.V[n-1]進行排序, n是表當前長度。 for ( int i = 0; i < list.n-1; i++ ) { int k = i; //在list.V[i].key到list.V[n-1].key中找具有最小關鍵碼的對象 for ( int j = i+1; j < list.n; j++) if ( list.V[j].getKey ( ) < list.V[k].getKey ( ) ) k = j;//當前具最小關鍵碼的對象
11、 if ( k != i ) Swap ( list.V[i], list.V[k] ); //交換
}
}
(1)、試計算此程序段的McCabe復雜性;
(2)、用基本路徑覆蓋法給出測試路徑;
(3)為各測試路徑設計測試用例。
題目五、
以下代碼由C語言書寫,能根據(jù)指定的年、月計算當月所含天數(shù)。
(1) 請畫出以上代碼的控制流圖。
(2) 請計算上述控制流圖的環(huán)路復雜度V(G)。
(3) 假設year的取值范圍是1000 12、取值、month取值、maxday預期結果),使之滿足基本路徑覆蓋要求。
三、實驗步驟
1、根據(jù)結構性測試技術設計測試用例,主要考慮邏輯覆蓋測試(語句覆蓋、判斷覆蓋、條件覆蓋、判斷/條件覆蓋、條件組合覆蓋、路徑覆蓋)和基路徑測試技術;
2、根據(jù)所學知識確定優(yōu)化策略(原則:用最少的用例檢測出更多的缺陷、軟件測試的充分性與冗余性考慮),設計兩套測試用例集;
3、根據(jù)設計的兩套測試用例集進行測試、參照表2所示的缺陷等級給出缺陷列表;
計算測試用例的分支覆蓋率、條件覆蓋率和語句覆蓋率等測試管理指標;
四、實驗要求
1、根據(jù)題目要求編寫測試用例;
2、實驗結果要求給出兩套測試用例集測試效
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。