軟件測試課程期末報(bào)告(學(xué)號-姓名)_第1頁
軟件測試課程期末報(bào)告(學(xué)號-姓名)_第2頁
軟件測試課程期末報(bào)告(學(xué)號-姓名)_第3頁
軟件測試課程期末報(bào)告(學(xué)號-姓名)_第4頁
軟件測試課程期末報(bào)告(學(xué)號-姓名)_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 軟件測試課程軟件測試課程期末報(bào)告期末報(bào)告學(xué)學(xué) 院院 : 專專 業(yè)業(yè) : 班班 級級 : 學(xué)學(xué) 號號 : 姓姓 名名 : 任任課課教教師師 : 二二一六一六 年年 六六 月月I目錄1 軟件測試基本理論.11.1軟件測試分類.11.2 軟件測試工具.41.2.1 白盒測試工具.41.2.2 黑盒測試工具.51.3 軟件測試基本步驟.62 軟件測試實(shí)踐.72.1測試程序介紹.72.1.1 程序功能.72.1.2 程序代碼.72.2白盒測試實(shí)踐.102.2.1 白盒測試工具介紹.102.2.2 測試用例.112.2.3 測試步驟.112.2.4 測試結(jié)果及分析.122.3黑盒測試實(shí)踐.142.3.1

2、 黑盒測試工具介紹.142.3.2 測試用例.152.3.3 測試步驟.152.3.4 測試結(jié)果及分析.203 測試總結(jié).2011 軟件測試基本理論軟件測試基本理論1.1軟件測試分類軟件測試分類軟件測試是一項(xiàng)復(fù)雜的系統(tǒng)工程,從不同的角度考慮可以有不同的劃分方法,對測試進(jìn)行分類是為了更好的明確測試的過程,了解測試究竟要完成哪些工作,盡量做到全面測試。1.按是否需要執(zhí)行被測軟件的角度按是否需要執(zhí)行被測軟件的角度,可分為靜態(tài)測試和動(dòng)態(tài)測試,前者不利用計(jì)算機(jī)運(yùn)行待測程序而應(yīng)用其他手段實(shí)現(xiàn)測試目的,如代碼審核。而動(dòng)態(tài)測試則通過運(yùn)行被測試軟件來達(dá)到目的。2.按階段劃分: 1.單元測試 單元測試是對軟件中的

3、基本組成單位進(jìn)行的測試,如一個(gè)模塊、一個(gè)過程等等。它是軟件動(dòng)態(tài)測試的最基本的部分,也是最重要的部分之一,其目的是檢驗(yàn)軟件基本組成單位的正確性。因?yàn)閱卧獪y試需要知道內(nèi)部程序設(shè)計(jì)和編碼的細(xì)節(jié)知識,一般應(yīng)由程序員而非測試員來完成,往往需要開發(fā)測試驅(qū)動(dòng)模塊和樁模塊來輔助完成單元測試。因此應(yīng)用系統(tǒng)有一個(gè)設(shè)計(jì)很好的體系結(jié)構(gòu)就顯得尤為重要。 一個(gè)軟件單元的正確性是相對于該單元的規(guī)約而言的。因此,單元測試以被測試單位的規(guī)約為基準(zhǔn)。單元測試的主要方法有控制流測試、數(shù)據(jù)流測試、排錯(cuò)測試、分域測試等等。 2.集成測試 集成測試是在軟件系統(tǒng)集成過程中所進(jìn)行的測試,其主要目的是檢查軟件單位之間的接口是否正確。它根據(jù)集成

4、測試計(jì)劃,一邊將模塊或其他軟件單位組合成越來越大的系統(tǒng),一邊運(yùn)行該系統(tǒng),以分析所組成的系統(tǒng)是否正確,各組成部分是否合拍。集成測試的策略主要有自頂向下和自底向上兩種。3.系統(tǒng)測試 系統(tǒng)測試是對已經(jīng)集成好的軟件系統(tǒng)進(jìn)行徹底的測試,以驗(yàn)證軟件系統(tǒng)的正確性和性能等滿足其規(guī)約所指定的要求,檢查軟件的行為和輸出是否正確并非一項(xiàng)簡單的任務(wù),它被稱為測試的“先知者問題”。因此,系統(tǒng)測試應(yīng)該按照測試計(jì)劃進(jìn)行,其輸入、輸出和其他動(dòng)態(tài)運(yùn)行行為應(yīng)該與軟件規(guī)約進(jìn)行對比。軟件系2統(tǒng)測試方法很多,主要有功能測試、性能測試、隨機(jī)測試等等。4.驗(yàn)收測試 驗(yàn)收測試旨在向軟件的購買者展示該軟件系統(tǒng)滿足其用戶的需求。它的測試數(shù)據(jù)通常

5、是系統(tǒng)測試的測試數(shù)據(jù)的子集。所不同的是,驗(yàn)收測試常常有軟件系統(tǒng)的購買者代表在現(xiàn)場,甚至是在軟件安裝使用的現(xiàn)場。這是軟件在投入使用之前的最后測試。5.回歸測試 回歸測試是在軟件維護(hù)階段,對軟件進(jìn)行修改之后進(jìn)行的測試。其目的是檢驗(yàn)對軟件進(jìn)行的修改是否正確。這里,修改的正確性有兩重含義:一是所作的修改達(dá)到了預(yù)定目的,如錯(cuò)誤得到改正,能夠適應(yīng)新的運(yùn)行環(huán)境等等;二是不影響軟件的其他功能的正確性。6.Alpha 測試:在系統(tǒng)開發(fā)接近完成時(shí)對應(yīng)用系統(tǒng)的測試;測試后,仍然會有少量的設(shè)計(jì)變更。這種測試一般由最終用戶或其他人員員完成,不能由程序員或測試員完成。 7.Beta 測試:當(dāng)開發(fā)和測試根本完成時(shí)所做的測試

6、,而最終的錯(cuò)誤和問題需要在最終發(fā)行前找到。這種測試一般由最終用戶或其他人員員完成,不能由程序員或測試員完成。3.按測試方法劃分:1 白盒測試 白盒測試也稱結(jié)構(gòu)測試或邏輯驅(qū)動(dòng)測試,是指基于一個(gè)應(yīng)用代碼的內(nèi)部邏輯知識,即基于覆蓋全部代碼、分支、路徑、條件的測試,它是知道產(chǎn)品內(nèi)部工作過程,可通過測試來檢測產(chǎn)品內(nèi)部動(dòng)作是否按照規(guī)格說明書的規(guī)定正常進(jìn)行,按照程序內(nèi)部的結(jié)構(gòu)測試程序,檢驗(yàn)程序中的每條通路是否都有能按預(yù)定要求正確工作,而不顧它的功能,白盒測試的主要方法有邏輯驅(qū)動(dòng)、基路測試等,主要用于軟件驗(yàn)證?!鞍缀小狈ㄈ媪私獬绦騼?nèi)部邏輯結(jié)構(gòu)、對所有邏輯路徑進(jìn)行測試?!鞍缀小狈ㄊ歉F舉路徑測試。在使用這一方案

7、時(shí),測試者必須檢查程序的內(nèi)部結(jié)構(gòu),從檢查程序的邏輯著手,得出測試數(shù)據(jù)。貫穿程序的獨(dú)立路徑數(shù)是天文數(shù)字。但即3使每條路徑都測試了仍然可能有錯(cuò)誤。第一,窮舉路徑測試決不能查出程序違反了設(shè)計(jì)規(guī)范,即程序本身是個(gè)錯(cuò)誤的程序。第二,窮舉路徑測試不可能查出程序中因遺漏路徑而出錯(cuò)。第三,窮舉路徑測試可能發(fā)現(xiàn)不了一些與數(shù)據(jù)相關(guān)的錯(cuò)誤。白盒測試可以借助一些工具來完成如Junit Framework,Jtest等。2 黑盒測試 黑盒測試是指不基于內(nèi)部設(shè)計(jì)和代碼的任何知識,而基于需求和功能性的測試,黑盒測試也稱功能測試或數(shù)據(jù)驅(qū)動(dòng)測試,它是在已知產(chǎn)品所應(yīng)具有的功能,通過測試來檢測每個(gè)功能是否都能正常使用,在測試時(shí),把

8、程序看作一個(gè)不能打開的黑盆子,在完全不考慮程序內(nèi)部結(jié)構(gòu)和內(nèi)部特性的情況下,測試者在程序接口進(jìn)行測試,它只檢查程序功能是否按照需求規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)鋸而產(chǎn)生正確的輸出信息,并且保持外部信息(如數(shù)據(jù)庫或文件)的完整性。黑盒測試方法主要有等價(jià)類劃分、邊值分析、因果圖、錯(cuò)誤推測等,主要用于軟件確認(rèn)測試?!昂诤小狈ㄖ塾诔绦蛲獠拷Y(jié)構(gòu)、不考慮內(nèi)部邏輯結(jié)構(gòu)、針對軟件界面和軟件功能進(jìn)行測試?!昂诤小狈ㄊ歉F舉輸入測試,只有把所有可能的輸入都作為測試情況使用,才能以這種方法查出程序中所有的錯(cuò)誤。實(shí)際上測試情況有無窮多個(gè),人們不僅要測試所有合法的輸入,而且還要對那些不合法但是可能的

9、輸入進(jìn)行測試。黑盒測試也可以借助一些工具,如WinRunner,QuickTestPro,Rational Robot等。3 ALAC(Act-like-a-customer)測試ALAC測試是一種基于客戶使用產(chǎn)品的知識開發(fā)出來的測試方法。ALAC測試是基于復(fù)雜的軟件產(chǎn)品有許多錯(cuò)誤的原則。最大的受益者是用戶,缺陷查找和改正將針對哪些客戶最容易遇到的錯(cuò)誤。1.2 軟件測試工具軟件測試工具1.2.1 白盒測試工具白盒測試工具1. JTEST:4jtest是parasoft公司推出的一款針對java語 言的自動(dòng)化白盒測試工具,它通過自動(dòng)實(shí)現(xiàn)java的單元測試和代碼標(biāo)準(zhǔn)校驗(yàn),來提高代碼的可靠性。Jte

10、st先分析每個(gè)java類,然后自動(dòng)生成 junit測試用例并執(zhí)行用例,從而實(shí)現(xiàn)代碼的最大覆蓋,并將代碼運(yùn)行時(shí)未處理的異常暴露出來;另外,它還可以檢查以DbC(Design by Contract)規(guī)范開發(fā)的代碼的正確性。用戶還可以通過擴(kuò)展測試用例的自動(dòng)生成器來添加更多的junit用例。Jtest還能按照現(xiàn)有的超過350個(gè) 編碼標(biāo)準(zhǔn)來檢查并自動(dòng)糾正大多數(shù)常見的編碼規(guī)則上的偏差,用戶可自定義這些標(biāo)準(zhǔn),通過簡單的幾個(gè)點(diǎn)擊,就能預(yù)防類似于未處理異常、函數(shù)錯(cuò)誤、內(nèi)存泄漏、性 能問題、安全隱患這樣的代碼問題。2. JMETER:JMeter是Apache組織的開放源代碼項(xiàng)目,它是功能和性能測試的工具,10

11、0%的用java實(shí)現(xiàn)。使用JMeter進(jìn)行性能測試。 JMeter可以用于測試靜態(tài)或者動(dòng)態(tài)資源的性能(文件、Servlets、Perl腳本、java對象、數(shù)據(jù)庫數(shù)據(jù)庫和查詢、ftp服務(wù)器或者其他的資源)。JMeter用于模擬在服務(wù)器、網(wǎng)絡(luò)網(wǎng)絡(luò)或者其他對象上附加高負(fù)載以測試他們提供服務(wù)的受壓能力,或者分析他們提供的服務(wù)在不同負(fù)載條件下的總性能情況。你可以用JMeter提供的圖形化界面分析性能指標(biāo)或者在高負(fù)載情況下測試服務(wù)器/腳本/對象的行為。3. JUNIT: JUnit是一個(gè)開源的 java測試框架,它是Xuint測試體系架構(gòu)的一種實(shí)現(xiàn)。在JUnit單元測試框架的設(shè)計(jì)時(shí),設(shè)定了三個(gè)總體目標(biāo),第

12、一個(gè)是簡化測試的編寫,這種簡化包 括測試框架的學(xué)習(xí)和實(shí)際測試單元的編寫;第二個(gè)是使測試單元保持持久性;第三個(gè)則是可以利用既有的測試來編寫相關(guān)的測試。junit是完全免費(fèi)的,使用方便。在你提升程序代碼的品質(zhì)時(shí)JUnit測試仍允許你更快速的撰寫程序那聽起來似乎不是很直覺,但那是事實(shí)。當(dāng)你使用JUnit撰寫測試, 你將花更少的時(shí)間除蟲,同時(shí)對你程序代碼的改變更俱有信心。這個(gè)信心讓你更積極重整程序代碼并增加新的功能。使用JUnit你可以快速的撰寫測試并檢測你的程序代碼并逐步隨著程序代碼的成長增加測試。只要你寫了一些測試,你想要快速并頻繁的執(zhí)行測試而不至于中斷建立設(shè)計(jì)及開發(fā)程序。4. BoundsChe

13、cker:BoundsChecker是一個(gè)運(yùn)行時(shí)錯(cuò)誤檢測工具,它主要定位程序運(yùn)行時(shí)期發(fā)生的5各種錯(cuò)誤。BoundsChecker是一個(gè)運(yùn)行時(shí)錯(cuò)誤檢測工具,它主要定位程序運(yùn)行時(shí)期發(fā)生的各種錯(cuò)誤它通過駐留在Visual C+開發(fā)環(huán)境內(nèi)部的自動(dòng)處理調(diào)試程序來加速應(yīng)用程序的開發(fā),縮短產(chǎn)品發(fā)布時(shí)間。BoundsChecker對于編程中的錯(cuò)誤(大多數(shù)是C+中特有的)提供了清晰的詳細(xì)的分析。它能夠檢測和診斷出在靜態(tài),堆棧內(nèi)存中的錯(cuò)誤以及內(nèi)存和資源泄漏問題。在運(yùn)行狀態(tài)下BoundsChecker驗(yàn)證超過8700APIs和OLE方法,包括最新的Windows APIs,ODBC,ActiveX,DirectX,

14、COM和Internet APIs。BoundsChecker采用一種被稱為Code Injection的技術(shù),來截獲分配內(nèi)存和釋放內(nèi)存函數(shù)的調(diào)用。簡單的說,當(dāng)你的程序開始運(yùn)行時(shí),BoundsChecker的DLL被自動(dòng)載入進(jìn)程的地址空間,然后它會修改進(jìn)程中分配和釋放內(nèi)存的函數(shù)的調(diào)用,讓這些調(diào)用首先轉(zhuǎn)入它的代碼。BoundsChecker在做這些動(dòng)作時(shí),無需修改被調(diào)試程序的源代碼或工程配置文件,這使得它使用非常的簡便、直接。1.2.2 黑盒測試工具黑盒測試工具1. LoadRunner:LoadRunner是一種預(yù)測系統(tǒng)行為和性能的負(fù)載測試工具。通過以模擬上千萬用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能監(jiān)測的

15、方式來確認(rèn)和查找問題,LoadRunner能夠?qū)φ麄€(gè)企業(yè)架構(gòu)進(jìn)行測試。企業(yè)使用LoadRunner能最大限度地縮短測試時(shí)間,優(yōu)化性能和加速應(yīng)用系統(tǒng)的發(fā)布周期。 LoadRunner可適用于各種體系架構(gòu)的自動(dòng)負(fù)載測試,能預(yù)測系統(tǒng)行為并評估系統(tǒng)性能。2. TestDirector8.0:TestDirector能夠在一獨(dú)立的應(yīng)用系統(tǒng)中提供需求管理功能,并且可以把測試需求管理于測試計(jì)劃、測試日程控制、測試執(zhí)行和錯(cuò)誤跟蹤等功能融合為一體,因此極大地加速了測試的進(jìn)程。電子商務(wù)正改變著許多公司在如何規(guī)劃并建立IT系統(tǒng)方面的決定。常常在一瞬間,一個(gè)Web應(yīng)用就完成了創(chuàng)建和部署,并展現(xiàn)在您的客戶、供應(yīng)商或合作

16、伙伴的面前。但是,由于緊湊的開發(fā)計(jì)劃和復(fù)雜的系統(tǒng)結(jié)構(gòu),Web應(yīng)用測試經(jīng)常是被忽視的。為了與心經(jīng)濟(jì)同步,您必須開發(fā)經(jīng)過全面測試的高品質(zhì)的網(wǎng)絡(luò)應(yīng)用。 6在正式面試之前,測試管理提供了一套測試Web應(yīng)用的組織框架。由于測試方案會根據(jù)不斷推陳出新的應(yīng)用要求而改進(jìn),您需要設(shè)立一個(gè)中央點(diǎn)來管理測試過程。一套基于Web的測試管理系統(tǒng)提供了一個(gè)協(xié)同合作的環(huán)境和一個(gè)中央數(shù)據(jù)倉庫。由于測試人員分布在各地,您需要一個(gè)統(tǒng)一的測試管理系統(tǒng)能讓用戶不管在何時(shí)何地都能參與到整個(gè)測試過程中,并獻(xiàn)計(jì)獻(xiàn)策。IT部門的增長速度非???,人員也經(jīng)常流動(dòng)。您必須以最快的速度培訓(xùn)新的測試人員,教會他們所有的測試有關(guān)的知識技術(shù)。而TestD

17、irector所提供的一種單點(diǎn)模式,便于管理復(fù)雜的部署過程,改善部門間的溝通,加速您測試的成功。 TestDirector能消除組織機(jī)構(gòu)間、地域間間的障礙,它能讓測試人員,開發(fā)人員或其他的IT人員通過一個(gè)中央數(shù)據(jù)倉庫,在不同位置就能互通測試信息。TestDirector將測試過程-從測試需求管理、測試計(jì)劃、測試日程安排,到測試執(zhí)行,以至到出錯(cuò)后的跟蹤-僅在一個(gè)基于瀏覽器的應(yīng)用中便可完成。 3.Ranorex自動(dòng)化測試:Ranorex是Windows上運(yùn)行的GUI自動(dòng)測試框架,它支持多種不同的應(yīng)用,包括web 2.0, Win32, MFC, WPF, Flash/Flex, .Net和Java

18、(SWT)。Ranorex沒有自己的腳本語言,用戶可以使用業(yè)界流行的編程語言C#, VB.NET編寫它的測試用例。Ranorex的特性包括,使用RanoreXPath對待測應(yīng)用的GUI對象進(jìn)行識別,這種方式可以識別絕大部分控件對象。除此之外Ranorex擁有幾乎所有自動(dòng)測試工具都有的錄制回放功能,這是通過它的Ranorex編輯器實(shí)現(xiàn)的,它被稱為Renorex Recorder。該工具可以通過使用動(dòng)作表格編輯器很方便地維護(hù)錄制的代碼,并且集成了Ranorex對象庫,可以自動(dòng)產(chǎn)生C#和VB.NET的代碼。與此同時(shí)Ranorex還提供了GUI對象映射功能,這就是前面提到的Ranorex對象庫,該庫對

19、各種類型的GUI對象進(jìn)行統(tǒng)一管理。Ranorex還提供了專門支持.NET環(huán)境的自動(dòng)測試庫。用戶使用Ranorex Studio可以非常輕松地進(jìn)行自動(dòng)測試開發(fā),該集成環(huán)境提供了代碼自動(dòng)完成和強(qiáng)大的調(diào)試功能。Ranorex曾經(jīng)因?yàn)槠鋵?NET和Flash/Flex絕佳支持獲得第二屆和第三季ATI自動(dòng)測試最佳商業(yè)功能測試工具獎(jiǎng)。71.3 軟件測試基本步驟軟件測試基本步驟一般測試流程:1.需求分析階段:只要就是對業(yè)務(wù)的學(xué)習(xí),分析需求點(diǎn)。2.測試計(jì)劃階段:測試組長就要根據(jù)SOW開始編寫測試計(jì)劃,其中包括人員,軟件硬件資源,測試點(diǎn),集成順序,進(jìn)度安排和風(fēng)險(xiǎn)識別等內(nèi)容。3.測試設(shè)計(jì)階段:測試方案一般由對需求

20、很熟的高資深的測試工程師設(shè)計(jì),測試方案要求根據(jù)SRS上的每個(gè)需求點(diǎn)設(shè)計(jì)出包括需求點(diǎn)簡介,測試思路和詳細(xì)測試方法三部分的方案。測試方案編寫完成后也需要進(jìn)行評審。4.測試方案階段:主要是對測試用例和規(guī)程的設(shè)計(jì)。測試用例是根據(jù)測試方案來編寫的,通過測試方案階段,測試人員對整個(gè)系統(tǒng)需求有了詳細(xì)的理解。這時(shí)開始編寫用例才能保證用例的可執(zhí)行和對需求的覆蓋。測試用例需要包括測試項(xiàng),用例級別,預(yù)置條件,操作步驟和預(yù)期結(jié)果。其中操作步驟和預(yù)期結(jié)果需要編寫詳細(xì)和明確。測試用例應(yīng)該覆蓋測試方案,而測試方案又覆蓋了測試需求點(diǎn),這樣才能保證客戶需求不遺漏。同樣,測試用例也需要評審。5.測試執(zhí)行階段:執(zhí)行測試用例,及時(shí)提

21、交有質(zhì)量的Bug和測試日報(bào),測試報(bào)告等相關(guān)文檔。測試流程依次如下: 1.需求:閱讀需求,理解需求,與客戶、開發(fā)、架構(gòu)多方交流,深入了解需求。-testing team 2.測試計(jì)劃: 根據(jù)需求估算測試所需資源(人力、設(shè)備等)、所需時(shí)間、功能點(diǎn)劃分、如何合理分配安排資源等。-testing leader or testing manager 3.用例設(shè)計(jì):根據(jù)測試計(jì)劃、任務(wù)分配、功能點(diǎn)劃分,設(shè)計(jì)合理的測試用例。-testing leader, senior tester 4.執(zhí)行測試:根據(jù)測試用例的詳細(xì)步驟,執(zhí)行測試用例。-every tester(主要是初級測試人員) 5.執(zhí)行結(jié)果記錄和bug

22、記錄:對每個(gè)case記錄測試的結(jié)果,有bug的在測試管理工具中編寫bug記錄。-every tester(主要是初級測試人員) 86.defect tracking:追蹤leader分配給你追蹤的bug.直到 bug fixed。-every tester 7.測試報(bào)告:通過不斷測試、追蹤,直到被測軟件達(dá)到測試需求要求,并沒有重大bug。8.用戶體驗(yàn)、軟件發(fā)布等 項(xiàng)目立項(xiàng)后,開始寫測試計(jì)劃,根據(jù)需求編寫測試需求,根據(jù)測試需求編寫測試用例,根據(jù)測試用例執(zhí)行測試,把沒用通過的測試用例寫成測試缺陷報(bào)告,進(jìn)行回歸測試,直到測試的結(jié)束編寫測試總結(jié),這每個(gè)步驟都需要審核通過。2 軟件測試實(shí)踐軟件測試實(shí)踐2

23、.1測試程序介紹測試程序介紹2.1.1 程序功能程序功能電話號碼問題某城市電話號碼由三部分組成。它們的名稱和內(nèi)容分別是: 地區(qū)碼:空白或三位數(shù)字; 前 綴:非0或1的三位數(shù)字; 后 綴:4位數(shù)字。假定被測程序能接受一切符合上述規(guī)定的電話號碼,拒絕所有不符合規(guī)定的電話號碼。2.1.2 程序代碼程序代碼using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;u

24、sing System.Windows.Forms;namespace ceshi1 public partial class Form1 : Form9 public Form1() InitializeComponent(); private void button1_Click(object sender, EventArgs e) string str = 電話.Text; int n = result(str); switch (n) case 0: 結(jié)果.Text = 電話號碼正確”; break; case 1: 結(jié)果.Text = 輸入的號碼位數(shù)錯(cuò)誤; break; case

25、2: 結(jié)果.Text = 輸入的號碼含非純數(shù)字; break; case 3: 結(jié)果.Text = 前綴不含0或1; break; case 4: 結(jié)果.Text = 輸入的號碼含非純數(shù)字; break; case 5: 結(jié)果.Text = 前綴不含或1; break; default: break; private void Form1_Load(object sender, EventArgs e) private void 電話_TextChanged(object sender, EventArgs e) private void 電話號碼_Click(object sender, E

26、ventArgs e) private void 結(jié)果_TextChanged(object sender, EventArgs e) private void 測試結(jié)果_Click(object sender, EventArgs e) 10 public int result(string str) if (str.Length = 7) for (int i = 0; i str.Length; i+) if (!Char.IsNumber(stri) return 2; for (int j = 0; j 3; j+) if (strj = 0 | strj = 1) return 3

27、; return 0; else if (str.Length = 10) for (int i = 0; i str.Length; i+) if (!Char.IsNumber(stri) return 4; for (int j = 3; j 6; j+) if (strj = 0 | strj = 1) return 5; return 0; else11 return 1; 2.2白盒測試實(shí)踐白盒測試實(shí)踐2.2.1 白盒測試工具介紹白盒測試工具介紹掌握白盒測試的基本理論,能夠利用白盒測試?yán)碚撛O(shè)計(jì)測試用例,并在所開發(fā)的軟件中進(jìn)行測試。白盒測試技術(shù)要求掌握語句覆蓋、分支覆蓋、路徑覆蓋等白

28、盒測試用例設(shè)計(jì)方法。Visual Studio 2010集成開發(fā)環(huán)境通過集成Visual Studio Ultimate 2010和VS Test Professional 2010等工具對軟件測試提供了強(qiáng)有力的支持,可以創(chuàng)建和管理單元測試,UI測試,web測試,負(fù)載測試等。2.2.2 測試用例測試用例用例編號輸入輸出1234567a輸入的號碼不是純數(shù)字。22304567輸入的號碼前綴里有0或1。32314567輸入的號碼前綴里有0或1。42345678電話號碼正確。5234567890a輸入的號碼不是純數(shù)字。60122304567輸入的號碼前綴里有0或1。1270122314567輸入的號碼

29、前綴里有0或1。80123456789電話號碼正確。901234567891輸入的號碼位數(shù)錯(cuò)誤。測試代碼是否與要求的功能相一致。地區(qū)碼:空白或三位數(shù)字;前 綴:非0或1的三位數(shù)字;后 綴:4位數(shù)字。檢查被測程序是否能接受一切符合上述規(guī)定的電話號碼,拒絕所有不符合規(guī)定的電話號碼。并根據(jù)錯(cuò)誤返回不同值。2.2.3 測試步驟測試步驟測試代碼public void TestMethod1() Form1 f=new Form1(); int re; string str1 = 234567a; re=f.result(str1); Assert.AreEqual(2, re); string str2

30、 = 2304567; re = f.result(str2); Assert.AreEqual(3, re); str2 = 2314567; re = f.result(str2); Assert.AreEqual(3, re); string str0 = 2345678; re = f.result(str0); Assert.AreEqual(0, re); string str3 = 234567890a; re = f.result(str3); Assert.AreEqual(4, re); string str4 = 0122304567; re = f.result(str

31、4); Assert.AreEqual(5, re); str4 = 0122314567; re = f.result(str4); Assert.AreEqual(5, re); str0 = 0123456789; re = f.result(str0);13 Assert.AreEqual(0, re); str1 = 01234567891; re = f.result(str1); Assert.AreEqual(1, re); 代碼測試結(jié)果:測試代碼覆蓋率結(jié)果:2.2.4 測試結(jié)果及分析測試結(jié)果及分析14152.3黑盒測試實(shí)踐黑盒測試實(shí)踐2.3.1 黑盒測試工具介紹黑盒測試工具介紹功能測試是針對應(yīng)用系統(tǒng)進(jìn)行測試,是基于產(chǎn)品功能說明書,是在已知產(chǎn)品所應(yīng)具有的功能,從用戶角度來進(jìn)行功能驗(yàn)證,以確認(rèn)每個(gè)功能是否都能正常使用。本項(xiàng)目主要應(yīng)用黑盒測試的基本理論設(shè)計(jì)測試用例,在軟件開發(fā)過程中進(jìn)行功能測試。黑盒測試技術(shù)要求掌握等價(jià)類劃分法、邊界值分析法、因果圖法等黑盒測試用例設(shè)計(jì)方法。根據(jù)所設(shè)計(jì)測試用例,采用QTP/VS2010實(shí)現(xiàn)自動(dòng)化測試。QuickTest Professional 是一種自動(dòng)化測試工具,它提供符合所有主要應(yīng)用軟件環(huán)境的功能測試和回歸測試的自動(dòng)化測試。采用關(guān)鍵字驅(qū)動(dòng)的理念以簡化測試用例的創(chuàng)建和維護(hù)。它讓用戶可以直接錄制屏幕上的操作流程,自動(dòng)生

溫馨提示

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

評論

0/150

提交評論