棗莊學(xué)院信息科學(xué)與工程學(xué)院_第1頁
棗莊學(xué)院信息科學(xué)與工程學(xué)院_第2頁
棗莊學(xué)院信息科學(xué)與工程學(xué)院_第3頁
棗莊學(xué)院信息科學(xué)與工程學(xué)院_第4頁
棗莊學(xué)院信息科學(xué)與工程學(xué)院_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實驗報告棗莊學(xué)院信息科學(xué)與工程學(xué)院 2014-2015 學(xué)年 第 2 學(xué)期專 業(yè): 計算機科學(xué)與技術(shù) 課程名稱: 軟件測試和UML技術(shù) 班 級: 姓 名: 學(xué)號: 指導(dǎo)教師: 使用免費的在線測試工具測試網(wǎng)站的性能實驗?zāi)康牧私馐裁词擒浖y試? 軟件測試的有哪些方法?常用的測試工具有哪些?背景知識1軟件測試軟件測試就是在軟件投入運行前,對軟件需求分析、設(shè)計規(guī)格說明和編碼的最終復(fù)審,是軟件質(zhì)量保證的關(guān)鍵步驟。 軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程?;蛘哒f,軟件測試是根據(jù)軟件開發(fā)各階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計一批測試用例(即輸入數(shù)據(jù)及其預(yù)期的輸出結(jié)果),并利用這些測試用例去運行程序,以發(fā)

2、現(xiàn)程序錯誤的過程。 2測試過程為了保證測試的質(zhì)量,將測試過程分成幾個階段,即:代碼審查、單元測試、集成測試、系統(tǒng)測試和驗收測試。代碼會審由一組人通過閱讀、討論和爭議對程序進行靜態(tài)分析的過程。單元測試集中在檢查軟件設(shè)計的最小單位模塊上,通過測試發(fā)現(xiàn)實現(xiàn)該模塊的實際功能與定義該模塊的功能說明不符合的情況,以及編碼的錯誤。集成測試是將模塊按照設(shè)計要求組裝起來同時進行測試,主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問題。系統(tǒng)測試是測試整個系統(tǒng),以證實它滿足“需求規(guī)格說明書”所規(guī)定的功能、質(zhì)量和性能等方面的特性。驗收測試的目的是向未來的用戶表明系統(tǒng)能夠像預(yù)定要求那樣工作。與系統(tǒng)測試非常相似,主要區(qū)別是測試人員不同,驗收

3、測試由用戶執(zhí)行。3測試方法軟件測試的方法分為功能性測試和結(jié)構(gòu)性測試。功能測試是指在對程序進行功能抽象的基礎(chǔ)上,將程序劃分成功能單元,然后在數(shù)據(jù)抽象的基礎(chǔ)上,對每個功能單元生成測試數(shù)據(jù)進行測試。進行功能測試時,被測程序被當(dāng)作打不開的黑盒,因而無法了解其內(nèi)部構(gòu)造,因此又稱為黑盒測試。結(jié)構(gòu)性測試是知道產(chǎn)品內(nèi)部工作過程,檢測產(chǎn)品內(nèi)部動作是否按照規(guī)格說明書的規(guī)定正常進行。它允許測試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息,設(shè)計或選擇測試用例,對程序所有邏輯路徑進行測試。此方法把測試對象看作一個透明的盒子,又叫白盒測試。4測試工具軟件測試的工作量很大(據(jù)統(tǒng)計,會用到40% 的開發(fā)時間;一些可靠性要求非常高的軟

4、件,測試時間甚至占到總開發(fā)時間的60% ),但測試卻是在整個軟件過程中極有可能應(yīng)用計算機進行自動化的工作,原因是測試的許多操作是重復(fù)性的、非智力創(chuàng)造性的、需求細(xì)致注意力的工作。測試工具的應(yīng)用已經(jīng)成為了普遍的趨勢。測試工具一般可分為白盒測試工具、黑盒測試工具、性能測試工具,另外還有用于測試管理(包括測試流程管理、缺陷跟蹤管理、測試用例管理)的工具。實驗內(nèi)容使用下面12個免費的在線軟件測試工具,每位同學(xué)選擇3個工具對棗莊學(xué)院網(wǎng)站和自己選擇的一個自己喜歡的網(wǎng)站的性能進行測試將測試結(jié)果進行總結(jié)和對比。1) HYPERLINK / t _blank Web Page Test / 從世界各地多個地點,使

5、用真正的瀏覽器(IE和Chrome),并在真正的消費者連接速度,對你的網(wǎng)站進行速度測試。您可以運行簡單的測試,或執(zhí)行多步交易,視頻采集,內(nèi)容封鎖和更先進的測試,包括。您的結(jié)果將提供豐富的診斷信息,包括資源加載的瀑布圖,網(wǎng)頁速度優(yōu)化檢查和改進建議。2) HYPERLINK / o Land Impact t _blank Load Impact /Load Impact 是一個用來測試網(wǎng)站一次性可支持的負(fù)載數(shù),可在同一時間從不同的地點發(fā)起50個并發(fā)請求,然后分析出你的網(wǎng)頁加載的速度。3) HYPERLINK / o FreeSpeedTest t _blank FreeSpeedTest /Fr

6、eeSpeedT 是最棒的網(wǎng)站速度測試工具之一,用于測試網(wǎng)站訪問速度和加載時間,可模擬來自全球各地的請求。4) HYPERLINK /performance-testing o Browser Mob t _blank Browser Mob /performance-testing可模擬三個不同地方的用戶訪問網(wǎng)站并進行加載測試,有超過25個真實瀏覽器或100個虛擬用戶來檢測網(wǎng)站速度,同時提供腳本驗證服務(wù)等。5) HYPERLINK /seo-tools/speedtester.html o Rapid Search Metrics t _blank Rapid Search Metrics

7、/seo-tools/speedtester.html用于做 SEO 搜索引擎優(yōu)化和速度測試和分析,數(shù)據(jù)包括網(wǎng)站的平均速度、數(shù)據(jù)量,非HTML加載時間等等。6) HYPERLINK / o Host Tracker t _blank Host Tracker /可通過來自全球的超過 95% 的節(jié)點對網(wǎng)站進行模擬測試,包括錯誤報告通知到手機,支持HEAD/POST/GET 等方法以及 CGI 腳本操作。7) HYPERLINK / o Pingdom Tools t _blank Pingdom Tools /用來顯示網(wǎng)站各個元素的加載時間,包括Html、css和js、圖片等。8) HYPERL

8、INK /corporate/test-speed/?utm_source=&utm_medium=internal&utm_campaign=.top&url= o Webo Software t _blank Webo Software/corporate/test-speed/?utm_source=&utm_medium=internal&utm_campaign=.top&url=Webo 軟件對網(wǎng)站進行性能測試后,將測試結(jié)果通過 email 發(fā)送給你,同時它也建議什么時候需要提升網(wǎng)站速度、帶寬等信息。9) HYPERLINK /speed_test t _blank iWebtoo

9、l /speed_test10) HYPERLINK / o Wave t _blank Wave /11) HYPERLINK /services/analyze/ o Web Page Analyzer t _blank Web Page Analyzer/services/analyze/Web Page Analyzer 可讓用戶測試網(wǎng)站速度以提升性能,同時可計算網(wǎng)頁大小、復(fù)雜度和下載時間。12) HYPERLINK /tn561353-website-speed-test.aspx o WebToolHub t _blank WebToolHub/tn561353-website-s

10、peed-test.aspx 網(wǎng)站測試的一個精巧的工具,包括兩種測試模式:簡單和高級。簡單模式顯示網(wǎng)站的加載時間以及各個地方的訪問速度,而高級模式還包括每個元素的加載時間。實驗要求根據(jù)題目要求使用上面3個免費的在線測試工具對2個你喜歡的網(wǎng)站進行測試;實驗結(jié)果要求給出兩個網(wǎng)站的測試效果比較;你使用的該在線工具都測試了哪方面的性能。撰寫實驗報告;利用 HYPERLINK / t _blank Web Page Test對棗莊學(xué)院和 HYPERLINK 測試 利用 HYPERLINK / o FreeSpeedTest t _blank FreeSpeedTest對棗莊學(xué)院和 HYPERLINK 測

11、試 (三)利用 HYPERLINK /tn561353-website-speed-test.aspx o WebToolHub t _blank WebToolHub對棗莊學(xué)院和 HYPERLINK 測試實驗思考你還能知道哪些比較有名的軟件測試工具,測試工具的作用是什么,又什么優(yōu)點?答:軟件測試管理工具有:TestCenter(澤眾軟件)、TestDirector(MI公司TD,8.0后改成QC),TestManager(IBM),QADirector(Compuware); 測試工具的作用是:為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程。優(yōu)點:對程序的回歸測試更方便;可以運用更多更繁瑣的測試;更好地利用資

12、源;增加軟件信任度。黑盒測試實驗?zāi)康哪苁炀殤?yīng)用功能性測試技術(shù)進行測試用例設(shè)計;對測試用例進行優(yōu)化設(shè)計;實驗內(nèi)容題目一:電話號碼問題某城市電話號碼由三部分組成。它們的名稱和內(nèi)容分別是: 地區(qū)碼:空白或三位數(shù)字; 前 綴:非0或1的三位數(shù)字; 后 綴:4位數(shù)字。假定被測程序能接受一切符合上述規(guī)定的電話號碼,拒絕所有不符合規(guī)定的電話號碼。根據(jù)該程序的規(guī)格說明,作等價類的劃分,并設(shè)計測試方案。確定輸入域 地區(qū)碼 前綴 后綴 對輸入域進行等價類劃分有效等價類無效等價類地區(qū)碼a、空白f、非空白且非3位數(shù)字b、3位數(shù)字前綴c、非0的三位數(shù)字g、首位0或1的三位數(shù)字d、非1的三位數(shù)字h、非3位數(shù)字i非數(shù)字后綴

13、e、4位數(shù)字j、非數(shù)字非4位數(shù)字3、等價類設(shè)計測試用例測試編號測試數(shù)據(jù)預(yù)期輸出覆蓋范圍T01 1117895有效a.c.eT021112345678有效b.d.eT03 234、。,。 無效a.c.jT04 12478946無效a.g.kT05786243+-+-無效b.c.jT0658901089523無效b.g.kT07。,;011無效f.g.jT08;/.7891234無效f.c.e題目二:三角形問題使用黑盒測試方法測試三角形問題。(等價類測試法、邊界值測試法、決策表測試法)假定三角形的3條邊的取值限制在1100,這里選擇100作為邊長的上限只是為了問題研究方便而設(shè)定,另外,這里的邊長只

14、取整數(shù),三角形問題可以更具體描述為以下形式: 輸入3個數(shù)a、b、c分別作為三角形的3條邊,要求a、b、c必須滿足以下條件。Con1:1a100;Con2:1b100;Con3:1c100;Con4:ab+c ;Con5:ba+c;Con6:c3)&(z5)8 j=x*y+10;9 j=j%3;10說明:程序段中每行開頭的數(shù)字(110)是對每條語句的編號。畫出程序的控制流圖(用題中給出的語句編號表示)。分別以語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、組合覆蓋和路徑覆蓋方法設(shè)計測試用例,并寫出每個測試用例的執(zhí)行路徑(用題中給出的語句編號表示)。語句覆蓋:用例XYZ執(zhí)行路徑T014651,2,4

15、,5,7,8,9判定覆蓋:用例XYZ執(zhí)行路徑覆蓋范圍T015362,45,7,9TFT024662,7,8FT條件覆蓋:用例XYZ執(zhí)行路徑覆蓋范圍T01 23112,7,9FFT024672,45,7,8TT判定/條件覆蓋:用例XYZ執(zhí)行路徑覆蓋范圍T015362,45,7,9TFT024662,7,8FT組合覆蓋:用例XYZ執(zhí)行路徑覆蓋范圍T014672,45.7,8TTT0223112,7,9FFT035362,45,7,9TFT044662,7,8FT路徑覆蓋:用例XYz執(zhí)行路徑T0123111,2,7,9T024661,2,7,8,9T034671,2,45,7,8,9題目二:使用白盒

16、測試方法測試三角形問題下表所示代碼的功能是輸入3個整數(shù)a、b、c,分別作為三角形的3條邊,是否能構(gòu)成三角形,如果能構(gòu)成三角形,則判斷三角形的類型(等邊三角形、等腰三角形、一般三角形)。另外,三角形邊長的取值限制為1100。表2序號程序代碼01020304050607080910111213141516171819private string judgeTriangle(int a , int b , int c ) string strType; /三角形類型 if (a + b c & b + c a & a + c b) if (a = b | b = c | a = c) if (a =

17、 b & b = c) strType = 等邊三角形; else strType = 等腰三角形; else strType = 一般三角形; else strType = 不能構(gòu)成三角形; return strType; 使用白盒測試方法測試三角形問題的測試計劃如下表所示。表3計劃標(biāo)識符TestPlan-02-02測試概述測試目標(biāo)測試三角形問題,判斷三角形的類型測試范圍三角形邊長為正整數(shù)限制條件三角形的3條邊的取值限制在1100 參考資料無測試項目(1)輸入3個數(shù);(2)取值范圍在1100;(3)三角形類型測試特征邊長的取值在1100的正整數(shù)測試方法白盒測試方法:代碼檢查法、邏輯覆蓋法、基

18、本路徑測試法測試標(biāo)準(zhǔn)程序運行結(jié)果與預(yù)期結(jié)果完全一致測試環(huán)境Windows XP及以上版本的操作系統(tǒng)、Microsoft Visual Studio 2008人員和時間測試實施人員1人,測試時間2h1.使用代碼檢查法對三角形問題進行測試針對于表2和表3中程序代碼對代碼結(jié)構(gòu)的合理性、代碼編寫的標(biāo)準(zhǔn)性和可讀性、代碼邏輯表達的正確性等方面進行檢查。2使用邏輯覆蓋法對三角形問題進行測試1)分析程序的邏輯結(jié)構(gòu)2)執(zhí)行語句覆蓋的測試3)執(zhí)行判定覆蓋的測試4)執(zhí)行條件覆蓋的測試5)執(zhí)行條件/判定覆蓋的測試6)執(zhí)行條件組合覆蓋的測試3使用基本路徑測試法對三角形問題進行測試1)繪制程序流程圖2)繪制程序控制流圖3

19、)計算環(huán)路復(fù)雜度4)確定獨立路徑5)設(shè)計軟件測試用例6)執(zhí)行軟件測試與分析測試結(jié)果繪制程序流程圖2)繪制程序控制流圖3)計算環(huán)路復(fù)雜度環(huán)路復(fù)雜度為44)確定獨立路徑獨立路徑:Path1: 4-6-8-9-18Path2: 4-6-8-11-18Path3: 4-6-14-18Path4: 4-17-185)設(shè)計軟件測試用例編號ABC預(yù)期輸出覆蓋路徑T01404040等邊三角形1T02405050等腰三角形2TO36080100一般三角形3TO4102025不三角形能構(gòu)成46)執(zhí)行軟件測試與分析測試結(jié)果用例圖的繪制實驗?zāi)康?掌握參與者和用例的繪制步驟;掌握用例和用例之間關(guān)系的繪制步驟;了解用例圖

20、實現(xiàn)的分析過程實驗內(nèi)容網(wǎng)上教學(xué)系統(tǒng)需求分析如下: 網(wǎng)上教學(xué)系統(tǒng)是在網(wǎng)絡(luò)環(huán)境下,充分發(fā)揮網(wǎng)絡(luò)的教育功能和教育資源優(yōu)勢,向教育者和學(xué)習(xí)者提供的一種教和學(xué)的環(huán)境,通過傳遞數(shù)字化教育信息,開展交互式的同步或異步的教學(xué)活動。由于其具有教學(xué)資源共享、學(xué)習(xí)時空不限、交流多向互動和便于學(xué)習(xí)合作的特點與優(yōu)勢, 作為傳統(tǒng)教育的補充目前在我國的高校中得到了廣泛推廣。 學(xué)員登錄本系統(tǒng)后可以瀏覽網(wǎng)站的網(wǎng)頁信息、選擇和查找自己所需要學(xué)習(xí)文章和課件并進行下載.教師可以登錄本系統(tǒng),在網(wǎng)站上輸入課程介紹、上傳課程的課件、發(fā)布、更新和修改消息。 (3)系統(tǒng)管理員可以進行對本系統(tǒng)網(wǎng)站頁面的維護和執(zhí)行批準(zhǔn)用戶申請注冊的操作。 根據(jù)需

21、求分析,確定參與者、用例。然后構(gòu)建用例模型。實驗要求 1根據(jù)需求分析,確定參與者、用例。然后構(gòu)建用例模型。 2撰寫實驗報告實驗思考 如何確定參與者和用例? 根據(jù)短文分析,參與者有三位:學(xué)員,教師,系統(tǒng)管理員1、其中學(xué)生的動作:登陸,瀏覽,選擇和查找,下載(其中登陸包含瀏覽、選擇和查找、下載)2、教師的動作:登陸,輸入,上傳,發(fā)布,更新,修改(其中登陸包含輸入、上傳、發(fā)布、更新、修改)3、系統(tǒng)管理員的動作有:登陸,維護,執(zhí)行批準(zhǔn)(其中登陸包含維護和執(zhí)行批準(zhǔn)) 則用例圖如下圖所示: 單元測試JUnit測試框架的使用實驗?zāi)康?掌握J(rèn)unit測試框架的使用2掌握測試用例的編寫實驗內(nèi)容1在工程中添加類類

22、WordDealUtil中的方法wordFormat4DB( )實現(xiàn)的功能見文件注釋。package.gzhu;package.gzhu;importjava.util.regex.Matcher;importjava.util.regex.Pattern;publicclassWordDealUtil/*將Java對象名稱(每個單詞的頭字母大寫)按照*數(shù)據(jù)庫命名的習(xí)慣進行格式化*格式化后的數(shù)據(jù)為小寫字母,并且使用下劃線分割命名單詞*例如:employeeInfo經(jīng)過格式化之后變?yōu)閑mployee_info*paramnameJava對象名稱*/publicstaticStringwordFo

23、rmat4DB(Stringname)Patternp=Ppile(A-Z);Matcherm=p.matcher(name);StringBufferstrBuffer=newStringBuffer();while(m.find()/將當(dāng)前匹配子串替換為指定字符串,/并且將替換后的子串以及其之前到上次匹配子串之后的字符串段添加到一個StringBuffer對象里m.appendReplacement(strBuffer,_+m.group();/將最后一次匹配工作后剩余的字符串添加到一個StringBuffer對象里returnm.appendTail(strBuffer).toStrin

24、g().toLowerCase();2寫單元測試代碼3進一步完善測試用例單元測試的范圍要全面,如對邊界值、正常值、錯誤值的測試。運用所學(xué)的測試用例的設(shè)計方法,如:等價類劃分法、邊界值分析法,對測試用例進行進一步完善。繼續(xù)補充一些對特殊情況的測試:/測試 null 時的處理情況Test public void wordFormat4DBNull()String target = null;String result = WordDealUtil.wordFormat4DB(target)assertNull(result);/測試空字符串的處理情況Test public void wordFor

25、mat4DBEmpty()String target = ;String result = WordDealUtil.wordFormat4DB(target);assertEquals(, result);/測試當(dāng)首字母大寫時的情況Test public void wordFormat4DBegin()String target = TeacherInfo;String result = WordDealUtil.wordFormat4DB(target);assertEquals(teacher_info, result);/測試當(dāng)尾字母為大寫時的情況Test public void wo

26、rdFormat4DBEnd()String target = teacherInfoA;String result = WordDealUtil.wordFormat4DB(target);assertEquals(teacher_info_a, result);/測試多個相連字母大寫時的情況Test public void wordFormat4DBTogether()String target = teacherAInfo;String result = WordDealUtil.wordFormat4DB(target);assertEquals(teacher_a_info, res

27、ult);4查看分析運行結(jié)果,修改錯誤代碼再次運行測試。JUnit 運行界面提示我們有兩個測試情況未通過測試(見圖6),當(dāng)首字母大寫時得到的處理結(jié)果與預(yù)期的有偏差,造成測試失?。╢ailure);而當(dāng)測試對 null 的處理結(jié)果時,則直接拋出了異常測試錯誤(error)。顯然,被測試代碼中并沒有對首字母大寫和 null 這兩種特殊情況進行處理,修改如下:/修改后的方法wordFormat4DBpublic static String wordFormat4DB(String name)if(name = null)return null;Pattern p = Ppile(A-Z);Match

28、er m = p.matcher(name);StringBuffer sb = new StringBuffer();while(m.find()if(m.start() != 0)m.appendReplacement(sb, (_+m.group().toLowerCase();return m.appendTail(sb).toString().toLowerCase();圖6 示例2運行結(jié)果實驗思考 什么是單元測試?使用Junit進行單元測試需要注意什么內(nèi)容?還有其他單元測試工具嗎? 簡單的說就是寫一個類,測試程序代碼會不會出現(xiàn)BUG,分析測試結(jié)果,完善程序功能。狀態(tài)圖和活動圖的繪制

溫馨提示

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

評論

0/150

提交評論