




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、軟件測試方法和技術(shù)軟件測試方法和技術(shù) - Ch.11軟件測試自動化軟件測試自動化主講教師:郭曉燕主講教師:郭曉燕第十一章第十一章 軟件測試自動化軟件測試自動化11.1測試自動化的內(nèi)涵測試自動化的內(nèi)涵11.2 測試工具的分類和選擇測試工具的分類和選擇11.3 測試工具的主流產(chǎn)品介紹測試工具的主流產(chǎn)品介紹 11.4 IBM-Rational產(chǎn)品的整體解決方案產(chǎn)品的整體解決方案11.5 Mercury Interactive產(chǎn)品的整體解決方案產(chǎn)品的整體解決方案11.6 Compuware產(chǎn)品的整體解決方案產(chǎn)品的整體解決方案11.1測試自動化的內(nèi)涵測試自動化的內(nèi)涵11.1.1 為什么要軟件測試自動化為
2、什么要軟件測試自動化11.1.2 自動化測試的引入和應(yīng)用自動化測試的引入和應(yīng)用11.1.3 測試自動化的基本結(jié)構(gòu)測試自動化的基本結(jié)構(gòu)11.1.4 測試自動化的原理和方法測試自動化的原理和方法 11.1.5 測試自動化普遍存在的問題測試自動化普遍存在的問題手工測試的局限性手工測試的局限性p 通過手工測試無法做到覆蓋所有代碼路徑通過手工測試無法做到覆蓋所有代碼路徑; ;p 許多與時序、死鎖、資源沖突、多線程等有關(guān)的錯誤通過手工測試很許多與時序、死鎖、資源沖突、多線程等有關(guān)的錯誤通過手工測試很難捕捉到難捕捉到p 在系統(tǒng)負載、性能測試時,需要模擬大量數(shù)據(jù)、或大量并發(fā)用戶等各在系統(tǒng)負載、性能測試時,需要
3、模擬大量數(shù)據(jù)、或大量并發(fā)用戶等各種應(yīng)用場合時,也很難通過手工測試來進行種應(yīng)用場合時,也很難通過手工測試來進行p 在進行系統(tǒng)可靠性時,需要模擬系統(tǒng)運行十年、幾十年,以驗證系統(tǒng)在進行系統(tǒng)可靠性時,需要模擬系統(tǒng)運行十年、幾十年,以驗證系統(tǒng)能否穩(wěn)定運行,也是手工測試無法模擬的。能否穩(wěn)定運行,也是手工測試無法模擬的。p 如果有大量(幾千)的測試用例,需要在短時間內(nèi)完成,手工測試又如果有大量(幾千)的測試用例,需要在短時間內(nèi)完成,手工測試又怎么辦呢?怎么辦呢?p 測試可以發(fā)現(xiàn)錯誤,并不能表明程序的正確性。測試可以發(fā)現(xiàn)錯誤,并不能表明程序的正確性。自動化測試帶來的好處自動化測試帶來的好處1. 縮短周期縮短周
4、期 Testing cycle - Regression Testing2. Attributes of TA,Speed 速度Efficiency 效率Accuracy and Precise 準確、精確 Relentlessness 無情3. 容易實施、結(jié)果可靠容易實施、結(jié)果可靠4. 做手工不能做做手工不能做手工測試手工測試 耗費時間耗費時間 低可靠性低可靠性 人力資源人力資源 不一致性不一致性 僅對于一次性的測試有益僅對于一次性的測試有益 速度速度 可重復(fù)可重復(fù) 覆蓋率覆蓋率 可靠可靠 可以再度使用可以再度使用 重復(fù)測試節(jié)省時間重復(fù)測試節(jié)省時間自動測試自動測試手工測試手工測試 vs.自動
5、測試自動測試正確認識測試自動化正確認識測試自動化n不現(xiàn)實的期望注定測試自動化的失敗不現(xiàn)實的期望注定測試自動化的失敗n測試自動化能:測試自動化能:n顯著降低重復(fù)手工測試的時間顯著降低重復(fù)手工測試的時間n建立可靠、重復(fù)的測試,減少認為錯誤建立可靠、重復(fù)的測試,減少認為錯誤n增強測試質(zhì)量和覆蓋率增強測試質(zhì)量和覆蓋率n測試自動化不能:測試自動化不能:n完全替代手工測試和手工測試工程師完全替代手工測試和手工測試工程師n保證保證100%的測試覆蓋率的測試覆蓋率n彌補測試實踐的不足彌補測試實踐的不足測試自動化成本測試自動化成本/收益分析收益分析結(jié)構(gòu)結(jié)構(gòu)成本成本收益收益凈收凈收益益No Automation0
6、00Recording and Playback8.3112.7Data-driven structure using datapools8.4189.6Framework structure9.8155.2Framework / data-driven (hybrid) structure focusing on views of the application and using datapools11.6197.4自動化測試的引入和應(yīng)用自動化測試的引入和應(yīng)用p 找準測試自動化的切入點找準測試自動化的切入點p 把測試開發(fā)納入整個軟件開發(fā)體系把測試開發(fā)納入整個軟件開發(fā)體系p 測試自動化依賴測
7、試流程和測試用例測試自動化依賴測試流程和測試用例p 軟件測試自動化的投入較大軟件測試自動化的投入較大p 進行資源的合理調(diào)度進行資源的合理調(diào)度自動化測試工作流程自動化測試工作流程收集測試信息收集測試信息測試需求是什么?那里能得到用到的數(shù)據(jù)?建立基本測試建立基本測試紀錄用戶的操作核實成功回放提高基本測試提高基本測試插入測試點驅(qū)動測試數(shù)據(jù)整體測試整體測試關(guān)聯(lián)數(shù)據(jù)建立綜合的測試場景計劃計劃1創(chuàng)建創(chuàng)建2核實核實 和和 提高提高3整合整合4計劃自動化測試計劃自動化測試紀錄用戶操作形紀錄用戶操作形成基本測試成基本測試對對 回放回放 和和 測試測試提高自動化測試提高自動化測試運行多種測試檢運行多種測試檢查數(shù)據(jù)
8、流查數(shù)據(jù)流測試自動化的基本結(jié)構(gòu)測試自動化的基本結(jié)構(gòu)機房機房辦公室辦公室文件服務(wù)器文件服務(wù)器SQL ServerSQL ServerWebWeb服務(wù)器服務(wù)器 控制程序控制程序拷貝測試文件拷貝測試文件拷貝測試結(jié)果拷貝測試結(jié)果分派工作分派工作分派工作分派工作查詢結(jié)果查詢結(jié)果BuildBuild系統(tǒng)編譯系統(tǒng)編譯尋找工作項目尋找工作項目更新更新顯示顯示Dev Build, Test BuildDev Build, Test Build測試自動化的原理和方法測試自動化的原理和方法p 代碼分析代碼分析: : 類似于高級編譯系統(tǒng),在工具中定義類類似于高級編譯系統(tǒng),在工具中定義類/對象/函數(shù)/變量等定義規(guī)則、語
9、法規(guī)則等,在分析時對代碼進行語法掃描,找出不符合編碼規(guī)范的地方。p 捕獲和回放捕獲和回放: : 代碼分析是一種白盒測試的自動化方法,代碼分析是一種白盒測試的自動化方法,捕獲和回放則是一種黑盒測試的自動化方法。p對象識別對象識別p腳本技術(shù)腳本技術(shù)p自動化比較自動化比較對象識別對象識別編輯框編輯框下拉框下拉框按鈕按鈕QuickTest 在支持應(yīng)用中識別、確定每一個對象是什么類型復(fù)選框復(fù)選框選擇框選擇框?qū)ο笞R別對象識別 2n邏輯名稱是對象屬性之一的值邏輯名稱是對象屬性之一的值n數(shù)值數(shù)值 用于識別對象名稱用于識別對象名稱Nativeclass: EditAttached Text: Agent Nam
10、e:Enabled: TrueFocused: TrueHeight: 20Text: HaroldWidth: 119對象識別對象識別 3對象庫對象庫 是本地在測試結(jié)構(gòu)范圍內(nèi)是本地在測試結(jié)構(gòu)范圍內(nèi) 存儲對像信息存儲對像信息.對象庫對象庫例如對象 (屬性) 包含登陸窗口在記錄過程中捕獲的:- Agent Name field- Password field- OK button- Cancel button- Help button腳本技術(shù)腳本技術(shù)p 線性腳本線性腳本,是錄制手工執(zhí)行的測試用例得到的腳本,這種腳本包含所有的擊鍵、移動、輸入數(shù)據(jù)等,所有錄制的測試用例都可以得到完整的回放。p 結(jié)構(gòu)
11、化腳本結(jié)構(gòu)化腳本,類似于結(jié)構(gòu)化程序設(shè)計,具有各種邏輯結(jié)構(gòu)、函數(shù)調(diào)用功能。p 共享腳本共享腳本,是指某個腳本可以被多個測試用例使用。p 數(shù)據(jù)驅(qū)動腳本數(shù)據(jù)驅(qū)動腳本,將測試輸入存儲在獨立的(數(shù)據(jù))文件中,而不是存儲在腳本中。p 關(guān)鍵字驅(qū)動腳本關(guān)鍵字驅(qū)動腳本,是數(shù)據(jù)驅(qū)動腳本的邏輯擴張Script exampleSample script=Section Two - header file, public variables and constants declaration area= $include rtpCMCSanity0225_BB_X.sbh$Include rtpCMC5_BB.sbh$
12、include rtpReportLog.sbh=Section Three - Unit test scripting area for this subroutine or function Sub Main CallScript rtpCMCSanity0225_init Dim Result As Integer Dim meetingTopic As String If there already a meeting meeting, didnt start again SQASuspendLogOutput Result = WindowVP (Exists, Caption=*
13、+MEETING_CLIENT_CAPTION+ *, VP=Window Existence;Wait=1,3) SQAResumeLogOutput If Result = 0 ThenResult = func_MiscScheduleStartMeetingSimple (PAGE_CAPTION, meetingTopic, MEETING_PASSWD)ElseEnd IfCheckBox CheckBox Click, Name=OverdraftComboBox, ComboListBoxEditBoxHTMLDocument , HTMLImage , HTMLLink In
14、putKeysInputKeys This is Robot.EnterUser Action commands 測試自動化普遍存在的問題測試自動化普遍存在的問題p 不正確的觀念或不現(xiàn)實的期望不正確的觀念或不現(xiàn)實的期望p 缺乏具有良好素質(zhì)、經(jīng)驗的測試人才缺乏具有良好素質(zhì)、經(jīng)驗的測試人才p 測試工具本身的問題影響測試的質(zhì)量測試工具本身的問題影響測試的質(zhì)量p 沒有進行有效的、充分的培訓(xùn)沒有進行有效的、充分的培訓(xùn)p 沒有考慮到公司的實際情況,盲目引入測試工具沒有考慮到公司的實際情況,盲目引入測試工具p 沒有形成一個良好的使用測試工具的環(huán)境沒有形成一個良好的使用測試工具的環(huán)境p 其它技術(shù)問題和組織問題
15、其它技術(shù)問題和組織問題11.2 測試工具的分類和選擇測試工具的分類和選擇11.2.1 測試工具的分類測試工具的分類11.2.2 測試工具的選擇測試工具的選擇測試工具是測試自動化的表現(xiàn)測試工具是測試自動化的表現(xiàn)測試工具的例子測試工具的例子測試工具的分類測試工具的分類Code analysis Tools- Static analysis- Dynamic analysisTest Execution Tool- Capture and Replay ( Record & Playback)- Monitor Tool- Stubs and Drivers- Automated Testi
16、ng EnvironmentTest case generators測試工具的選擇測試工具的選擇測試工具介紹測試工具介紹n功能測試工具:功能測試工具:QTP、Seleniumn性能測試工具:性能測試工具:JMetern安全性測試工具:安全性測試工具:Acunetix web Vulnerablity scannern缺陷跟蹤系統(tǒng):缺陷跟蹤系統(tǒng):Mantis、Bugzillan管理工具:管理工具:Testlink、TestDirector11.3 測試工具的主流產(chǎn)品介紹測試工具的主流產(chǎn)品介紹 11.3.1 面向開發(fā)的單元測試工具面向開發(fā)的單元測試工具11.3.2 負載和性能測試工具負載和性能測試
17、工具11.3.3 GUI功能測試工具功能測試工具11.3.4 基于基于Web應(yīng)用的測試工具應(yīng)用的測試工具11.3.5 軟件測試管理和其他工具軟件測試管理和其他工具面向開發(fā)的單元測試工具面向開發(fā)的單元測試工具根據(jù)不同的語言進行分類根據(jù)不同的語言進行分類:pC/C+單元級測試工具單元級測試工具Panorama C+,C+Test, Numega pJUnit是一個開發(fā)源代碼的是一個開發(fā)源代碼的Java測試框架測試框架根據(jù)工具的功能特點進行分類:根據(jù)工具的功能特點進行分類:p 內(nèi)存資源泄漏檢查工具:內(nèi)存資源泄漏檢查工具:Numega中的中的BounceChecker, Rational的的Purif
18、y等等p 代碼覆蓋率檢查工具代碼覆蓋率檢查工具:Numega的的TrueCoverage, Rational的的PureCoverage,TeleLogic公司的公司的Logiscopep 代碼性能檢查工具:代碼性能檢查工具:Logiscope和和 Macabe等。等。p 軟件糾錯工具軟件糾錯工具Rational Purl等。等。負載和性能測試工具負載和性能測試工具屬性屬性LoadRunner /MIQALoad /CompuwareWebLoad/Radview價格價格昂貴昂貴較貴較貴一般一般安裝配置安裝配置簡單簡單簡單簡單一般一般操作性操作性較復(fù)雜較復(fù)雜簡單簡單簡單簡單支持測試對象支持測試
19、對象各種中間件各種中間件/數(shù)據(jù)庫數(shù)據(jù)庫/應(yīng)用服應(yīng)用服務(wù)器的性能監(jiān)控務(wù)器的性能監(jiān)控/企業(yè)架構(gòu)企業(yè)架構(gòu)(j2ee和和.net)的測試的測試客戶客戶/服務(wù)器系統(tǒng)、企業(yè)資源配服務(wù)器系統(tǒng)、企業(yè)資源配置置(ERP)和電子商務(wù)應(yīng)用和電子商務(wù)應(yīng)用Web Application支持平臺支持平臺windows,unix或或linuxHP-UX, IBM AIX,Sun Solaris, Linux, NT/2kUnix Windows支持數(shù)據(jù)庫支持數(shù)據(jù)庫DB2, SQLserver, Orcale, SybaseADO, DB2, Oracle, Sybase, SQLserver, OdbcADO, DB2,
20、Oracle, Sybase, SQLserver, Odbc支持協(xié)議支持協(xié)議web,http(s), soap, streaming, wap, winsock, xmlhttp, ssl, oap, xml, streaming, mediaxml,java,ejb,activex,wap,http,snmp,real/m$streaming腳本語言腳本語言類似類似C+C/C+和和VC+Javascript自動數(shù)據(jù)生成自動數(shù)據(jù)生成YYY腳本調(diào)試腳本調(diào)試YYY報表定制功能報表定制功能YYYGUI功能測試工具功能測試工具將操作應(yīng)用程序的各種動作和輸入記錄下來,包括鍵盤操作、鼠標(biāo)點將操作應(yīng)用程序
21、的各種動作和輸入記錄下來,包括鍵盤操作、鼠標(biāo)點擊等捕捉擊等捕捉(Record)下來,生成一個腳本文件,這個腳本以后可以被下來,生成一個腳本文件,這個腳本以后可以被“回回放(放( playback)” 。在實際測試過程中,要根據(jù)測試需求對錄制的腳。在實際測試過程中,要根據(jù)測試需求對錄制的腳本進行一些必要的修改或加入一些參數(shù),如選擇不同的測試數(shù)據(jù)、腳本本進行一些必要的修改或加入一些參數(shù),如選擇不同的測試數(shù)據(jù)、腳本中插入檢查點(中插入檢查點(Check Point)進行跟蹤調(diào)試等。)進行跟蹤調(diào)試等。基于基于GUI功能測試工具主要適合回歸測試階段。當(dāng)一個應(yīng)用開發(fā)基本完功能測試工具主要適合回歸測試階段。
22、當(dāng)一個應(yīng)用開發(fā)基本完成后,程序界面基本定型,雖然業(yè)務(wù)的需求會很頻繁變化,但測試腳本成后,程序界面基本定型,雖然業(yè)務(wù)的需求會很頻繁變化,但測試腳本結(jié)構(gòu)基本不需要改動,只需要做些小調(diào)整,就可以自動運行,則可大大結(jié)構(gòu)基本不需要改動,只需要做些小調(diào)整,就可以自動運行,則可大大提高了測試的效率和測試的準確性。提高了測試的效率和測試的準確性。目前主要產(chǎn)品有目前主要產(chǎn)品有MI公司的公司的 WinRunner, Compuware的的QARun, Rational的的 SQA Robot,MS Visual Test Suite等等GUI自動化測試自動化測試p 設(shè)計測試用例,并手工進行測試。設(shè)計測試用例,并手
23、工進行測試。p 如果測試未通過,則先改正缺陷,再次執(zhí)行測試。如果測試未通過,則先改正缺陷,再次執(zhí)行測試。p 如果測試通過,利用測試工具運行該測試過程,捕獲如果測試通過,利用測試工具運行該測試過程,捕獲運行過程需要檢測的屏幕對象,并保存。運行過程需要檢測的屏幕對象,并保存。p 在進行回歸測試測試,自動利用測試工具運行測試,在進行回歸測試測試,自動利用測試工具運行測試,并比較運行過程的屏幕對象與保存的屏幕對象比較,并比較運行過程的屏幕對象與保存的屏幕對象比較,從而判斷測試用例是否通過。從而判斷測試用例是否通過?;诨赪eb應(yīng)用的測試工具應(yīng)用的測試工具基于基于Web應(yīng)用的測試工具主要進行鏈接檢查、
24、應(yīng)用的測試工具主要進行鏈接檢查、HTML檢查、檢查、Web功能和功能和Web站點安全性等各個方面的測試。站點安全性等各個方面的測試。主要主要Web測試工具有測試工具有MI公司的公司的Astra 系列(如系列(如Astra QuickTest )、)、RSW公司的公司的 E-Test Suite等;等;Web系統(tǒng)測試工具系統(tǒng)測試工具: WorkBench、Web Application Stress Tool(WAS)、頁面鏈接測試)、頁面鏈接測試Link Sleuth等。等。Website性能測試測什么?性能測試測什么?各種操作的響應(yīng)速度各種操作的響應(yīng)速度最大并發(fā)用戶數(shù)最大并發(fā)用戶數(shù)最大數(shù)據(jù)容
25、量最大數(shù)據(jù)容量ACT ACT (Application Center Test) ACT測試的步驟測試的步驟n創(chuàng)建測試腳本創(chuàng)建測試腳本n手工編寫手工編寫VBScriptn錄音并修改錄音并修改n運行測試腳本運行測試腳本n設(shè)定并發(fā)用戶數(shù)設(shè)定并發(fā)用戶數(shù)n設(shè)定用戶身份設(shè)定用戶身份n運行、觀察、獲取主觀體驗運行、觀察、獲取主觀體驗n理解結(jié)果報告理解結(jié)果報告n圖表圖表n各項性能統(tǒng)計數(shù)字各項性能統(tǒng)計數(shù)字n日志文件日志文件解讀解讀ACT測試結(jié)果測試結(jié)果nTTFB, TTLBnHTTP錯誤的含義n401n403n404n500常見的ACT結(jié)果圖線11.4 Rational產(chǎn)品的整體解決方案產(chǎn)品的整體解決方案11.4.1 Rational測試產(chǎn)品結(jié)構(gòu)測試產(chǎn)品結(jié)構(gòu)11
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 腫瘤化療的小講課
- 醫(yī)德醫(yī)風(fēng)培訓(xùn)資料
- 中小學(xué)心理健康教育培訓(xùn)
- 教聯(lián)體內(nèi)合作機制對教育資源優(yōu)化的作用
- 河長制工作中存在的問題與解決路徑
- 中班健康教案:感冒大作戰(zhàn)
- 員工培訓(xùn)的重要性與實施策略
- 共青科技職業(yè)學(xué)院《醫(yī)學(xué)英語寫作二專業(yè)》2023-2024學(xué)年第一學(xué)期期末試卷
- 江蘇護理職業(yè)學(xué)院《聲樂學(xué)基礎(chǔ)與訓(xùn)練》2023-2024學(xué)年第一學(xué)期期末試卷
- 南通職業(yè)大學(xué)《建筑文物保護與修復(fù)實踐》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年中考英語總復(fù)習(xí):補全對話 練習(xí)題匯編(含答案解析)
- 醫(yī)學(xué)細胞生物學(xué)(溫州醫(yī)科大學(xué))知到智慧樹章節(jié)答案
- 《冠心病的規(guī)范化診》課件
- 2024年度汽車4S店門頭裝修及展示區(qū)設(shè)計合同
- 24秋國開《西方行政學(xué)說》形考任務(wù)1學(xué)習(xí)活動(二)答案(第2套)
- 車輛保險服務(wù)招投標(biāo)書范本
- 2022年人教PEP版小學(xué)四年級英語下冊期末試卷及答案
- GB 11564-2024機動車回復(fù)反射裝置
- 《牛津英漢詞典》全集完整版TXT電子書
- 2024反詐知識競賽考試題庫及答案(三份)
- 2024年【每周一測】第四周語文五年級下冊基礎(chǔ)練習(xí)題(含答案)
評論
0/150
提交評論