軟件測(cè)試之軟件自動(dòng)化測(cè)試(精).ppt_第1頁(yè)
軟件測(cè)試之軟件自動(dòng)化測(cè)試(精).ppt_第2頁(yè)
軟件測(cè)試之軟件自動(dòng)化測(cè)試(精).ppt_第3頁(yè)
軟件測(cè)試之軟件自動(dòng)化測(cè)試(精).ppt_第4頁(yè)
軟件測(cè)試之軟件自動(dòng)化測(cè)試(精).ppt_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第6章 軟件自動(dòng)化測(cè)試,由安博測(cè)試空間技術(shù)中心,6.1 自動(dòng)化測(cè)試基礎(chǔ),自動(dòng)化測(cè)試的定義,測(cè)試自動(dòng)化的原因:測(cè)試軟件是一項(xiàng)艱苦的工作。 測(cè)試的工作量很大(據(jù)統(tǒng)計(jì),測(cè)試會(huì)占用到約40%的軟件開發(fā)時(shí)間;一些可靠性要求非常高的軟件,測(cè)試時(shí)間甚至占到開發(fā)時(shí)間約70%)。而測(cè)試中的許多操作是重復(fù)性的、非智力性的和非創(chuàng)造性的,并要求做準(zhǔn)確細(xì)致的工作。 自動(dòng)化測(cè)試的定義:使用一種自動(dòng)化測(cè)試工具來(lái)驗(yàn)證各種軟件測(cè)試的需求,它包括測(cè)試活動(dòng)的管理與實(shí)施。,無(wú)法覆蓋所有代碼路徑 簡(jiǎn)單的功能性測(cè)試用例在每一輪測(cè)試中機(jī)械地重復(fù),工作量往往較大. 手工測(cè)試難以捕捉到許多與時(shí)序、死鎖、資源沖突、多線程等有關(guān)的錯(cuò)誤。 難以模擬

2、大量數(shù)據(jù)或大量并發(fā)用戶 難以在短時(shí)間內(nèi)完成大量的測(cè)試用例,手工測(cè)試的局限性,可能縮短軟件測(cè)試周期 測(cè)試效率高 節(jié)省人力資源,降低測(cè)試成本 增強(qiáng)測(cè)試的穩(wěn)定性和可靠性 提高軟件測(cè)試的準(zhǔn)確度和精確度 測(cè)試工具使測(cè)試工作容易,還能產(chǎn)生更高質(zhì)量的測(cè)試結(jié)果 測(cè)試自動(dòng)化可以完成手工難以完成的測(cè)試,如性能、負(fù)載測(cè)試,測(cè)試自動(dòng)化的好處,比較適合采用自動(dòng)化測(cè)試的: 主要是重復(fù)多次的機(jī)械性活動(dòng),例如測(cè)試案例的執(zhí)行和比較,及一些手工無(wú)法或難以執(zhí)行的測(cè)試(包括嵌入式系統(tǒng)測(cè)試、壓力測(cè)試等)。測(cè)試自動(dòng)化在單元測(cè)試、集成測(cè)試、功能測(cè)試、性能測(cè)試、穩(wěn)定性測(cè)試、負(fù)載測(cè)試/壓力測(cè)試、可靠性測(cè)試等方面獲得很好的效果。 不適合采用自動(dòng)

3、化測(cè)試的: 不穩(wěn)定軟件的測(cè)試、開發(fā)周期很短的軟件、一次性的軟件等,還有智力性活動(dòng),包括測(cè)試規(guī)劃、測(cè)試計(jì)劃、測(cè)試報(bào)告等。,軟件開發(fā)過(guò)程,下列情況需要考慮引入自動(dòng)化測(cè)試:P138 (1)非常重要的測(cè)試; (2)涉及范圍很廣的測(cè)試; (3)對(duì)主要功能的測(cè)試; (4)容易自動(dòng)化的測(cè)試; (5)很快有回報(bào)的測(cè)試; (6)運(yùn)行最頻繁的測(cè)試; (7)測(cè)試個(gè)案的生成,包括測(cè)試輸入、測(cè)試輸出、測(cè)試操作指令等; (8)測(cè)試的執(zhí)行與控制,包括單機(jī)運(yùn)行和網(wǎng)絡(luò)多機(jī)分布式的運(yùn)行,在節(jié)假日的運(yùn)行; (9)測(cè)試結(jié)果與標(biāo)準(zhǔn)輸出進(jìn)行對(duì)比; (10)不吻合預(yù)期的測(cè)試結(jié)果的分析、記錄、分類和報(bào)告,及總體測(cè)試狀況的統(tǒng)計(jì)及報(bào)表的產(chǎn)生。,

4、自動(dòng)化測(cè)試的原理和方法,軟件測(cè)試自動(dòng)化實(shí)現(xiàn)的基礎(chǔ): 通過(guò)設(shè)計(jì)的特殊程序模擬測(cè)試人員對(duì)計(jì)算機(jī)的操作過(guò)程、操作行為,或者類似于編譯系統(tǒng)那樣對(duì)計(jì)算機(jī)程序進(jìn)行檢查。 軟件測(cè)試自動(dòng)化實(shí)現(xiàn)的原理和方法主要有: 直接對(duì)代碼進(jìn)行靜態(tài)和動(dòng)態(tài)分析、測(cè)試過(guò)程的捕獲(錄制)和回放、測(cè)試腳本技術(shù)、虛擬用戶技術(shù)和測(cè)試管理技術(shù)。,(1)代碼分析 一種白盒測(cè)試的自動(dòng)化方法,一般針對(duì)不同的高級(jí)語(yǔ)言去構(gòu)造分析工具,在工具中定義類、對(duì)象、函數(shù)、變量等定義規(guī)則、語(yǔ)法規(guī)則;在分析時(shí)對(duì)代碼進(jìn)行語(yǔ)法掃描,找出不符合編碼規(guī)范的地方;根據(jù)某種質(zhì)量模型評(píng)價(jià)代碼質(zhì)量,生成系統(tǒng)的調(diào)用關(guān)系圖等。,(2)捕獲和回放(錄制回放):一種黑盒測(cè)試的自動(dòng)化方法

5、。 捕獲是將用戶每一步操作都記錄下來(lái)。這種記錄的方式有兩種:程序用戶界面的像素坐標(biāo)或程序顯示對(duì)象(窗口、按鈕、滾動(dòng)條等)的位置,以及相對(duì)應(yīng)的操作、狀態(tài)變化或是屬性變化。所有的記錄轉(zhuǎn)換為一種腳本語(yǔ)言所描述的過(guò)程,以模擬用戶的操作。 回放時(shí),將腳本語(yǔ)言所描述的過(guò)程轉(zhuǎn)換為屏幕上的操作,然后將被測(cè)系統(tǒng)的輸出記錄下來(lái)同預(yù)先給定的標(biāo)準(zhǔn)結(jié)果比較。這可以大大減輕黑盒測(cè)試的工作量,在迭代開發(fā)的過(guò)程中,能夠很好地進(jìn)行回歸測(cè)試。,“捕獲回放”步驟: (1)先由手工完成一遍需要測(cè)試的流程 (2)計(jì)算機(jī)記錄下這個(gè)流程期間客戶端和服務(wù)器端之間的通信信息,這些信息通常是一些協(xié)議和數(shù)據(jù) (3)形成特定的腳本程序 (Scrip

6、t) (4)然后在系統(tǒng)的統(tǒng)一管理下,修改腳本,同時(shí)生成多個(gè)虛擬用戶,并運(yùn)行該腳本,監(jiān)控硬件和軟件平臺(tái)的性能,提供分析報(bào)告或相關(guān)資料。 通過(guò)幾臺(tái)機(jī)器就可以模擬出成百上千的用戶對(duì)應(yīng)用系統(tǒng)進(jìn)行負(fù)載能力的測(cè)試。,(3)腳本技術(shù) 腳本是一組測(cè)試工具執(zhí)行的指令集合,也是計(jì)算機(jī)程序的一種形式。腳本可以通過(guò)錄制測(cè)試的操作產(chǎn)生,然后再做修改,這樣可以減少腳本編程的工作量。當(dāng)然,也可以直接用腳本語(yǔ)言編寫腳本。腳本中可包含數(shù)據(jù)和指令,并包括以下一些信息: 同步(何時(shí)進(jìn)行下一步輸入) 比較信息(比較什么、如何比較以及和誰(shuí)比較) 捕獲何種屏幕數(shù)據(jù)以及存儲(chǔ)在何處 控制信息等,測(cè)試腳本的開發(fā)流程,1)根據(jù)測(cè)試設(shè)計(jì)文檔,確定

7、自動(dòng)測(cè)試范圍。使用捕獲/回放工具生成初始的測(cè)試腳本; 2)對(duì)生成的腳本進(jìn)行修改,得到正確的、可復(fù)用的、可維護(hù)性好的腳本。 3)執(zhí)行修改后的腳本,獲得實(shí)際的運(yùn)行效果。 4)對(duì)觀察到的運(yùn)行結(jié)果進(jìn)行分析和比較,報(bào)告發(fā)現(xiàn)的缺陷;評(píng)價(jià)本次運(yùn)行結(jié)果,分析存在的問(wèn)題和不足,提出下一步的改進(jìn)方案。 5)重復(fù)前面的步驟,進(jìn)行回歸測(cè)試和其他測(cè)試。根據(jù)需要,可能從第一步開始重復(fù)執(zhí)行, 也可能從后面各步開始重復(fù)執(zhí)行。,(4)自動(dòng)比較 自動(dòng)測(cè)試時(shí),預(yù)期輸出是事先定義的,或插入腳本中的(checkpoint),然后在測(cè)試過(guò)程中運(yùn)行腳本,將捕獲的結(jié)果和預(yù)先準(zhǔn)備的輸出進(jìn)行比較,從而確定測(cè)試用例是否通過(guò)。自動(dòng)比較可以對(duì)比屏幕或

8、屏幕區(qū)域圖象、比較窗口或窗口上空間的數(shù)據(jù)或?qū)傩?、比較網(wǎng)頁(yè)、比較文件等。,(5)測(cè)試管理 指對(duì)測(cè)試輸入、執(zhí)行過(guò)程、測(cè)試結(jié)果進(jìn)行管理。除了對(duì)和手工測(cè)試共性的測(cè)試計(jì)劃、測(cè)試用例、缺陷、產(chǎn)品功能、需求變化等實(shí)施管理外,還要對(duì)自動(dòng)化測(cè)試中的測(cè)試數(shù)據(jù)文件、測(cè)試腳本代碼、預(yù)期輸出結(jié)果、測(cè)試日志、測(cè)試自動(dòng)比較結(jié)果等進(jìn)行跟蹤、控制和管理。,6.2 軟件自動(dòng)化測(cè)試生存周期方法學(xué) P145,圖 自動(dòng)化測(cè)試生存周期方法學(xué)結(jié)構(gòu),軟件自動(dòng)化測(cè)試生存周期方法學(xué)(續(xù)),采用自動(dòng)化測(cè)試方法的確認(rèn) 自動(dòng)化測(cè)試工具的獲?。鹤詣?dòng)化工具可以購(gòu)買,也可以自己開發(fā) 自動(dòng)化測(cè)試的引入階段 包括測(cè)試過(guò)程分析和測(cè)試工具的考查。 測(cè)試計(jì)劃與測(cè)試設(shè)

9、計(jì) 包括制訂測(cè)試計(jì)劃、建立測(cè)試環(huán)境、測(cè)試設(shè)計(jì)和設(shè)計(jì)開發(fā)。 測(cè)試執(zhí)行與管理 測(cè)試活動(dòng)評(píng)審與評(píng)估,6.3 自動(dòng)化測(cè)試生存周期方法的應(yīng)用,軟件自動(dòng)化測(cè)試不是靈丹妙藥 測(cè)試計(jì)劃產(chǎn)生:主要靠測(cè)試工程師與軟件生產(chǎn)質(zhì)量保證 專家的合作,自動(dòng)化工具只能起到一定的輔助作用。 一種測(cè)試工具不完全適用于所有測(cè)試 自動(dòng)測(cè)試不一定減輕工作量 測(cè)試進(jìn)度可能不一定縮短 測(cè)試工具不一定易于使用 自動(dòng)化測(cè)試的普遍應(yīng)用存在局限 測(cè)試覆蓋率不會(huì)達(dá)到百分之百,測(cè)試自動(dòng)化限制,測(cè)試自動(dòng)化可以帶來(lái)非常明顯的收益,但也有以下限制: 不能取代手工測(cè)試,可作為手工測(cè)試的補(bǔ)充,手工測(cè)試比自動(dòng)測(cè)試發(fā)現(xiàn)的缺陷更多 對(duì)測(cè)試質(zhì)量的依賴性極大,自動(dòng)測(cè)試一

10、般可能使測(cè)試得更快,而不能保證測(cè)試得更好 自動(dòng)測(cè)試腳本可能包含錯(cuò)誤; 需要被測(cè)試的程序相對(duì)穩(wěn)定; 測(cè)試自動(dòng)化可能會(huì)制約軟件開發(fā)。 測(cè)試工具本身不能代替人的想象力和創(chuàng)造力。人工測(cè)試比測(cè)試工具更優(yōu)越的另一個(gè)方面是可以處理意外事件。,軟件測(cè)試工具分類,根據(jù)測(cè)試方法分類: 黑盒測(cè)試工具、白盒測(cè)試工具。 根據(jù)測(cè)試的對(duì)象和目的: 單元測(cè)試工具、功能測(cè)試工具、負(fù)載測(cè)試工具、性能測(cè)試工具和測(cè)試管理工具等。,自動(dòng)化測(cè)試工具在設(shè)計(jì)時(shí)往往針對(duì)被測(cè)試的對(duì)象不同而不同,黑盒測(cè)試工具:是指測(cè)試軟件功能或性能的工具,主要用于系統(tǒng)測(cè)試和驗(yàn)收測(cè)試;其又可分為功能測(cè)試工具和性能測(cè)試工具。一般原理是利用腳本的錄制/回放,模擬用戶的

11、操作,然后將被測(cè)系統(tǒng)的輸出記錄下來(lái)同預(yù)期結(jié)果比較。 白盒測(cè)試工具:是指測(cè)試軟件的源代碼的工具,可以實(shí)現(xiàn)代碼的靜態(tài)分析,動(dòng)態(tài)測(cè)試,評(píng)審等功能,主要用于單元測(cè)試。又分為靜態(tài)測(cè)試工具和動(dòng)態(tài)測(cè)試工具。 測(cè)試管理工具:是指管理整個(gè)測(cè)試流程的工具,主要功能有測(cè)試計(jì)劃的管理,測(cè)試用例的管理,缺陷跟蹤,測(cè)試報(bào)告管理等,一般貫穿于整個(gè)的軟件測(cè)試生命周期。 所有的測(cè)試工具都可以歸到上面的3個(gè)大類里面,比如一些數(shù)據(jù)庫(kù)測(cè)試工具、鏈接測(cè)試工具可以歸到黑盒測(cè)試工具里面,一些缺陷管理工具如Bugzilla可以歸到測(cè)試管理工具里面,但有時(shí)缺陷管理工具也可以自成一類。,軟件測(cè)試工具分類,MI公司,全稱Mercury Inter

12、active,軟件測(cè)試工具領(lǐng)域的NO.1。其開發(fā)的LoadRunner屬于性能測(cè)試工具,主要用于C/S和B/S結(jié)構(gòu)的軟件系統(tǒng)的測(cè)試,其通過(guò)模擬虛擬的并發(fā)用戶數(shù)來(lái)對(duì)被測(cè)系統(tǒng)進(jìn)行壓力測(cè)試。通過(guò)以模擬上千萬(wàn)用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能監(jiān)測(cè)的方式來(lái)確認(rèn)和查找問(wèn)題,能夠 對(duì)整個(gè)企業(yè)架構(gòu)進(jìn)行測(cè)試, 使企 業(yè)能最大限度地縮短測(cè)試時(shí)間, 優(yōu)化性能和加速應(yīng)用系統(tǒng)的發(fā) 布周期。,測(cè)試工具主流產(chǎn)品,TD,TestDirector,是MI公司開發(fā)的一款知名的測(cè)試管理工具,可以實(shí)現(xiàn)需求管理,測(cè)試計(jì)劃管理,用例管理,缺陷管理。TestDirector能夠很好的和MI公司的其他測(cè)試工具(如QTP,LoadRunner等)很好

13、的集成,并且具有強(qiáng)大的圖表統(tǒng)計(jì)功能,會(huì)自動(dòng)生成豐富的統(tǒng)計(jì)圖表。 TestDirector是B/S結(jié)構(gòu)的軟件,只需要在服務(wù)器端安裝軟件,所有的客戶端就可以通過(guò)瀏覽器來(lái)訪問(wèn)TestDirector,方便測(cè)試人員的團(tuán)隊(duì)合作和溝通交流。 QC(Quality Center)可以說(shuō)是TD的升級(jí)版。 Bugzilla是缺陷管理工具。,黑盒測(cè)試工具,WinRunner是MI公司開發(fā)的一款功能測(cè)試工具,是基于 Windows操作系統(tǒng)的,通過(guò)腳本的錄制和回放來(lái)進(jìn)行自動(dòng)化的功能測(cè)試。腳本語(yǔ)言是類C的。 QTP的全稱是Quick Test Professional, 是MI公司開發(fā)的一款功能測(cè)試工具,也是MI公司主

14、推的一款測(cè)試工具,其功能與WinRunner類似。 腳本語(yǔ)言是類VBScript。,黑盒測(cè)試工具,LoadRunner是MI公司的性能測(cè)試工具,跨平臺(tái)的,可以安裝運(yùn)行在Windows等多種操作系統(tǒng)。 近年,國(guó)內(nèi)的51testing網(wǎng)和MI公司等聯(lián)合推出了LoadRunner的認(rèn)證培訓(xùn)。 小知識(shí):安裝LoadRunner后卸載,卸載干凈才能重裝成功。軟件是否卸載完全,重點(diǎn)觀察系統(tǒng)的注冊(cè)表。,黑盒測(cè)試工具,IBM Rational公司,原來(lái)叫作Rational;后來(lái)被IBM公司收購(gòu),就改成了IBM Rational。 IBM Rational公司開發(fā)的軟件測(cè)試工具的市場(chǎng)占有率僅次于MI公司,IBM

15、 Rational公司的測(cè)試工具主要有4款: Rational TestManager(測(cè)試管理工具) Rational ClearQuest(缺陷管理工具) Rational Robot(功能/性能工具) Rational Purify (白盒測(cè)試工具) Rational公司的其他軟件工程領(lǐng)域的工具: Rational Requisitepro(需求管理),Rational Rose(建模工具), Rational Clearcase(配置管理)等,其公司的定位是為軟件公司客戶提供一整套軟件生命周期解決方案。,美國(guó)Compuware(康博)其公司開發(fā)的測(cè)試工具主要有 QACenter(測(cè)試管

16、理) Trackrecord(缺陷管理) QARun(功能) QALoad(性能) Devpartner (白盒測(cè)試) 這些測(cè)試工具在國(guó)內(nèi)不是很流行,但在歐美比較普及。,其他測(cè)試工具,Telelogic,其開發(fā)了很多軟件工程領(lǐng)域的工具,如Telelogic doors(需求管理)等,但是最有名的是Logiscope(白盒測(cè)試)。 微軟公司-WAS(性能測(cè)試) Radview公司-WebLoad(性能測(cè)試),TestView Manager(測(cè)試管理) Parasoft公司Jtest(白盒測(cè)試),C+ test(白盒測(cè)試) 另外,很多缺陷管理工具都是開源的,可在網(wǎng)絡(luò)上免費(fèi)下載,比如Bugzilla(免費(fèi)),Junit(白盒工具),Mantis(免費(fèi)),Jira(免費(fèi))。,按照功能選擇測(cè)試工具 “適合才是根本” 。考慮以下幾點(diǎn): 操作系統(tǒng)兼容性。如LoadRunner是跨平臺(tái)的,而WinRunner只能在Windows平臺(tái)上運(yùn)行。 測(cè)試工具的集成能力:同一家公司的測(cè)試工具一般彼此間可共享和傳遞數(shù)據(jù),例如MI公

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論