壓力測試工具_(dá)第1頁
壓力測試工具_(dá)第2頁
壓力測試工具_(dá)第3頁
壓力測試工具_(dá)第4頁
壓力測試工具_(dá)第5頁
已閱讀5頁,還剩136頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、SINYEE1壓力測試工具壓力測試工具-LoadrunnerSINYEE2OutlineOutline腳本錄制和回放腳本錄制和回放常見問題及解決常見問題及解決方案方案數(shù)據(jù)歸屬關(guān)系數(shù)據(jù)歸屬關(guān)系動(dòng)態(tài)變量動(dòng)態(tài)變量制定計(jì)劃制定計(jì)劃錄制腳本錄制腳本定制事務(wù)定制事務(wù)參數(shù)化參數(shù)化增加檢查點(diǎn)增加檢查點(diǎn)設(shè)計(jì)測試場景設(shè)計(jì)測試場景SINYEE基于Web應(yīng)用的壓力測試概述SINYEE44理解理解Web應(yīng)用的壓力測試中所面臨的問題應(yīng)用的壓力測試中所面臨的問題4明確一個(gè)明確一個(gè)LoadRunner專家的職責(zé)專家的職責(zé)4學(xué)習(xí)利用學(xué)習(xí)利用LoadRunner進(jìn)行壓力測試進(jìn)行壓力測試目標(biāo)目標(biāo)SINYEE5vWeb應(yīng)用失敗的代價(jià)

2、是巨大的應(yīng)用失敗的代價(jià)是巨大的 決不僅僅是手指點(diǎn)幾下而已v增強(qiáng)應(yīng)用部署的信心增強(qiáng)應(yīng)用部署的信心 通過壓力測試可以保證應(yīng)用在真實(shí)環(huán)境下的性能和功能為什么要對為什么要對WebWeb應(yīng)用執(zhí)行壓力測試應(yīng)用執(zhí)行壓力測試? ?SINYEE6功能測試功能測試壓力壓力測試測試執(zhí)行提交后檢查業(yè)務(wù)處執(zhí)行提交后檢查業(yè)務(wù)處理程序是否正確理程序是否正確功能性功能性舉例舉例目標(biāo)目標(biāo)檢查檢查2000個(gè)并發(fā)的點(diǎn)擊個(gè)并發(fā)的點(diǎn)擊是否會(huì)導(dǎo)致系統(tǒng)崩潰?是否會(huì)導(dǎo)致系統(tǒng)崩潰?系統(tǒng)穩(wěn)定系統(tǒng)穩(wěn)定性性事務(wù)處理的響應(yīng)時(shí)間是事務(wù)處理的響應(yīng)時(shí)間是否符合需求規(guī)范?否符合需求規(guī)范?系統(tǒng)性能系統(tǒng)性能檢查系統(tǒng)在大負(fù)載情況檢查系統(tǒng)在大負(fù)載情況下業(yè)務(wù)處理流程是

3、否正下業(yè)務(wù)處理流程是否正確確大負(fù)載下系統(tǒng)大負(fù)載下系統(tǒng)的功能性的功能性舉例舉例目標(biāo)目標(biāo)WebWeb應(yīng)用的功能測試和性能測試應(yīng)用的功能測試和性能測試SINYEE7測試人測試人員員壓力產(chǎn)生壓力產(chǎn)生被測系統(tǒng)被測系統(tǒng)是否有足夠的測試資源是否有足夠的測試資源? 測試人員測試人員 客戶機(jī)客戶機(jī)如何調(diào)度和同步測試用戶如何調(diào)度和同步測試用戶?如何搜集和分析測試結(jié)果如何搜集和分析測試結(jié)果?如何完成回歸測試如何完成回歸測試?分析分析?123.20所有人注意所有人注意:點(diǎn)擊按鈕:點(diǎn)擊按鈕Web serverDatabase server調(diào)度員調(diào)度員手動(dòng)測試存在的問題手動(dòng)測試存在的問題SINYEE8被測系統(tǒng)被測系統(tǒng)We

4、b serverDatabase server壓力產(chǎn)生壓力產(chǎn)生Vuser 主機(jī)主機(jī)解決測試資源的限制解決測試資源的限制 利用圖表工具分析測試結(jié)果利用圖表工具分析測試結(jié)果 利用錄制的腳本進(jìn)行回歸測試?yán)娩浿频哪_本進(jìn)行回歸測試AnalysisController 運(yùn)行大量的運(yùn)行大量的“Virtual Users”在不同的機(jī)器上在不同的機(jī)器上 利用利用 “Virtual Users”代替實(shí)際測試人員代替實(shí)際測試人員 通過通過“Controller”管理管理“ Vusers”LoadRunner LoadRunner 的解決方案的解決方案SINYEE9LoadRunner LoadRunner 的解決

5、方案的解決方案支持多種協(xié)議和支持多種協(xié)議和APISINYEE10LoadRunner LoadRunner 的解決方案的解決方案Vuser 類型分為下列類別: 所有協(xié)議:按字母順序排列的所有可支持協(xié)議的列表。 應(yīng)用程序部署解決方案:適用于 Citrix 協(xié)議。 客戶端L 服務(wù)器:適用于 MS SQL、ODBC、Oracle (兩層)、DB2 CLI、Sybase Ctlib、Sybase Dblib、Windows Sockets 和 DNS 協(xié)議。 自定義:適用于 C 模板、Visual Basic 模板、Java 模板、Javascript 和VBscript 類型腳本。 分布式組件:適用

6、于 COM/DCOM、Corba-Java 和 Rmi -Java 協(xié)議。SINYEE11LoadRunner LoadRunner 的解決方案的解決方案 電子商務(wù):適用于 FTP、LDAP、Palm、SOAP、Web (HTTP/HTML) 和雙Web/Winsocket 協(xié)議。 Enterprise Java Bean:適用于 EJB 測試和 Rmi-Java 協(xié)議。 ERP/CRM:適用于 Baan、Oracle NCA、Peoplesoft-Tuxedo、Peoplesoft 8Web 多語言、SAPGUI、SAP-Web 和 Siebel (Siebel-DB2CLI、Siebel-

7、MSSQL、Siebel-Web 和 Siebel-Oracle)協(xié)議。 傳統(tǒng):適用于終端仿真 (RTE)。 郵件服務(wù):Internet 郵件訪問協(xié)議 (IMAP)、MS Exchange (MAPI)、POP3和 SMTP。 中間件: Jacada 和 Tuxedo (6、7)協(xié)議。 流:適用于 MediaPlayer 和 RealPlayer 協(xié)議。 無線:適用于 i-Mode、VoiceXML 和 WAP 協(xié)議。SINYEE12LoadRunner LoadRunner 的解決方案的解決方案能夠?qū)Χ喾N能夠?qū)Χ喾NServer和資和資源進(jìn)行監(jiān)控源進(jìn)行監(jiān)控vWeb serversvWeb ap

8、plication serversvDatabase serversvSystem resourcesSINYEE13LoadRunner LoadRunner 的解決方案的解決方案Virtual User Generator產(chǎn)生壓力和搜集測試結(jié)果產(chǎn)生壓力和搜集測試結(jié)果生成用于生成用于“Controller”部署的部署的“ Vusers”通過圖表分析工具來編譯和顯通過圖表分析工具來編譯和顯示測試結(jié)果示測試結(jié)果LoadRunner ControllerLoadRunner AnalysisSINYEE14系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能調(diào)優(yōu)LoadRunner LoadRunner 工作流程工作流程分析測試

9、結(jié)果分析測試結(jié)果階段 5LoadRunnerV U G E NLoadRunnerC O N T R O L L E R & A N A L Y S I S執(zhí)行場景執(zhí)行場景階段 4設(shè)計(jì)測試場景設(shè)計(jì)測試場景階段 3創(chuàng)建創(chuàng)建 Web Virtual Users階段 2階段 1制定壓力測試制定壓力測試方案方案NOTE: 這是這是LR的一個(gè)典型工作流程。為便于理解這個(gè)流程,有些步驟將按的一個(gè)典型工作流程。為便于理解這個(gè)流程,有些步驟將按照照 不同的順序來介紹。不同的順序來介紹。SINYEE15壓力測試的人員分工壓力測試的人員分工人員人員/角色角色主要職責(zé)主要職責(zé)提供被測系統(tǒng)業(yè)務(wù)流程方面的建議提

10、供被測系統(tǒng)業(yè)務(wù)流程方面的建議 Database性能專家性能專家數(shù)據(jù)庫性能調(diào)優(yōu)數(shù)據(jù)庫性能調(diào)優(yōu)LoadRunner 專家專家Web Server 性能專性能專家家項(xiàng)目經(jīng)理項(xiàng)目經(jīng)理業(yè)務(wù)專家業(yè)務(wù)專家web server性能調(diào)優(yōu)性能調(diào)優(yōu)管理管理Web站點(diǎn)的執(zhí)行站點(diǎn)的執(zhí)行在被測系統(tǒng)上產(chǎn)生大用戶量的負(fù)載在被測系統(tǒng)上產(chǎn)生大用戶量的負(fù)載SINYEE16NOTE: “Action files” 將在下面討論將在下面討論通過回放一個(gè)或多個(gè)錄制好的通過回放一個(gè)或多個(gè)錄制好的“Action files”(業(yè)務(wù)流程文件業(yè)務(wù)流程文件)來模擬一個(gè)真實(shí)用戶的來模擬一個(gè)真實(shí)用戶的操作操作 Virtual User“Vusers”

11、是利用是利用 LoadRunner 執(zhí)行壓力測試執(zhí)行壓力測試的核心。的核心。關(guān)鍵詞關(guān)鍵詞SINYEE17為了完成一項(xiàng)業(yè)務(wù)所需要執(zhí)行的一系列業(yè)務(wù)為了完成一項(xiàng)業(yè)務(wù)所需要執(zhí)行的一系列業(yè)務(wù)操作操作 。通常我們把它稱作。通常我們把它稱作 “transaction(事務(wù))。事務(wù))?!睒I(yè)務(wù)流程業(yè)務(wù)流程N(yùn)OTE: 我們會(huì)頻繁的提到這個(gè)關(guān)鍵詞我們會(huì)頻繁的提到這個(gè)關(guān)鍵詞關(guān)鍵詞關(guān)鍵詞SINYEE壓力測試方案制定SINYEE19 目標(biāo)目標(biāo)v 壓力測試前需要搜集和準(zhǔn)備哪些資料壓力測試前需要搜集和準(zhǔn)備哪些資料 v 這些資料可以從什么地方獲取這些資料可以從什么地方獲取v 這些資料的組織技巧這些資料的組織技巧v 在制定測試方

12、案時(shí)如何運(yùn)用這些資料在制定測試方案時(shí)如何運(yùn)用這些資料SINYEE20LoadRunner LoadRunner 工作流程工作流程系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能調(diào)優(yōu) 分析測試結(jié)分析測試結(jié)果果 執(zhí)行測試場執(zhí)行測試場景景 設(shè)計(jì)測試場景設(shè)計(jì)測試場景 創(chuàng)建創(chuàng)建 Web 虛擬用戶虛擬用戶階段階段 1制定壓力測試制定壓力測試方案方案階段 2階段 3階段 4階段 5制定壓力測試方案制定壓力測試方案1.1 獲得系統(tǒng)使用信息獲得系統(tǒng)使用信息 1.2 準(zhǔn)備業(yè)務(wù)流程文檔準(zhǔn)備業(yè)務(wù)流程文檔1.3 確定參數(shù)化內(nèi)容確定參數(shù)化內(nèi)容1.4 準(zhǔn)備測試數(shù)據(jù)準(zhǔn)備測試數(shù)據(jù)SINYEE211.1 1.1 獲得系統(tǒng)使用信息獲得系統(tǒng)使用信息目的目的:v

13、 確認(rèn)需要模擬的業(yè)務(wù)流程的優(yōu)先級確認(rèn)需要模擬的業(yè)務(wù)流程的優(yōu)先級v 為實(shí)施壓力測試提供必要的信息為實(shí)施壓力測試提供必要的信息可以從下列文件中獲得和顯示系統(tǒng)使用信息可以從下列文件中獲得和顯示系統(tǒng)使用信息:v 任務(wù)分配圖任務(wù)分配圖v 事務(wù)統(tǒng)計(jì)文件事務(wù)統(tǒng)計(jì)文件v 用戶統(tǒng)計(jì)文件用戶統(tǒng)計(jì)文件SINYEE22系統(tǒng)使用信息的分析系統(tǒng)使用信息的分析v 任務(wù)分配圖任務(wù)分配圖 有哪些任務(wù)? 同一時(shí)間內(nèi)有多少次操作?v 事務(wù)統(tǒng)計(jì)文件事務(wù)統(tǒng)計(jì)文件 事務(wù)平均值、和峰值是多少? 數(shù)據(jù)庫連接是多少? 如果任務(wù)失敗會(huì)產(chǎn)生多少業(yè)務(wù)風(fēng)險(xiǎn)?v 用戶統(tǒng)計(jì)文件用戶統(tǒng)計(jì)文件 每個(gè)真實(shí)用戶會(huì)執(zhí)行多少任務(wù)? 不同任務(wù)在每個(gè)真實(shí)用戶中的分配比例

14、?SINYEE23獲得系統(tǒng)使用信息獲得系統(tǒng)使用信息網(wǎng)上書店網(wǎng)上書店 (一天一天, 幾千用戶幾千用戶)瀏覽購物瀏覽購物管理流程管理流程*發(fā)票處理發(fā)票處理*系統(tǒng)備份系統(tǒng)備份業(yè)務(wù)流程業(yè)務(wù)流程搜索標(biāo)題搜索標(biāo)題結(jié)帳結(jié)帳創(chuàng)建新帳戶NightDayNight11505050501802101501301001502001701401000120060040304075121222446688101012ampm需要模擬的需要模擬的時(shí)間時(shí)間*非非Web任務(wù)任務(wù)例: 任務(wù)分配圖SINYEE24內(nèi)部訂單處理流程內(nèi)部訂單處理流程 (高峰日高峰日, 600 用戶用戶) 獲得系統(tǒng)使用信息獲得系統(tǒng)使用信息*非非Web任務(wù)

15、任務(wù)夜晚夜晚白天白天夜晚夜晚111418021022018017040403022025021010121590907020251640601012503050121222446688101012ampm*系統(tǒng)備份系統(tǒng)備份生成訂單生成訂單更新訂單更新訂單登陸登陸創(chuàng)建帳戶創(chuàng)建帳戶訂單發(fā)送訂單發(fā)送*批量處理帳單批量處理帳單*批量結(jié)算批量結(jié)算任務(wù)任務(wù)需要模擬的需要模擬的時(shí)間時(shí)間例:任務(wù)分配圖SINYEE25 獲得系統(tǒng)使用信息獲得系統(tǒng)使用信息哪些業(yè)務(wù)流程可以進(jìn)行自動(dòng)化測試哪些業(yè)務(wù)流程可以進(jìn)行自動(dòng)化測試?風(fēng)險(xiǎn)級風(fēng)險(xiǎn)級別別業(yè)務(wù)流程業(yè)務(wù)流程訂單發(fā)送訂單發(fā)送典型工作日典型工作日 20/hr高峰工作日高峰工作日

16、30/hrWeb server 連接狀況連接狀況ModerateModerateModerateHigh40/hr90/hrHeavyHighDatabase 連接狀況連接狀況3 3訂單生成訂單生成訂單更新訂單更新創(chuàng)建新帳戶創(chuàng)建新帳戶130/hr180/hrModerateModerateMod.10/hr15/hrModerateModerateLow3 33 33 3登陸登陸70/hr3 33 33 33 33 3210/hrHeavyLightHigh選擇標(biāo)準(zhǔn)選擇標(biāo)準(zhǔn):高數(shù)據(jù)庫高數(shù)據(jù)庫I/O3 3大流量大流量3 3高風(fēng)險(xiǎn)任務(wù)高風(fēng)險(xiǎn)任務(wù) (即可能導(dǎo)致整個(gè)業(yè)務(wù)流程的失敗即可能導(dǎo)致整個(gè)業(yè)務(wù)流程

17、的失敗)3 3事務(wù)統(tǒng)計(jì)文件SINYEE26v 決定哪些業(yè)務(wù)流程能夠執(zhí)行自動(dòng)化測試決定哪些業(yè)務(wù)流程能夠執(zhí)行自動(dòng)化測試v 了解哪些業(yè)務(wù)是相互關(guān)聯(lián)的了解哪些業(yè)務(wù)是相互關(guān)聯(lián)的 (數(shù)據(jù)關(guān)聯(lián)數(shù)據(jù)關(guān)聯(lián)) v 確定每天的壓力峰值的時(shí)間確定每天的壓力峰值的時(shí)間 峰值持續(xù)時(shí)間 每月、每季度或每年壓力峰值的天數(shù)v 決定需要模擬的業(yè)務(wù)流程和用戶決定需要模擬的業(yè)務(wù)流程和用戶Virtual Users: ?信息的使用 獲得系統(tǒng)使用信息獲得系統(tǒng)使用信息SINYEE27系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能調(diào)優(yōu)分析測試結(jié)分析測試結(jié)果果執(zhí)行測試場景執(zhí)行測試場景設(shè)計(jì)測試場景設(shè)計(jì)測試場景創(chuàng)建創(chuàng)建 Web 虛擬用戶虛擬用戶階段階段 1制定壓力測制定壓

18、力測試方案試方案階段 2階段 3階段 4階段 5制定壓力測試方案制定壓力測試方案1.1 獲得系統(tǒng)使用信息獲得系統(tǒng)使用信息 1.2 準(zhǔn)備業(yè)務(wù)流程文檔準(zhǔn)備業(yè)務(wù)流程文檔1.3 確定參數(shù)化內(nèi)容確定參數(shù)化內(nèi)容1.4 準(zhǔn)備測試數(shù)據(jù)準(zhǔn)備測試數(shù)據(jù)LoadRunner LoadRunner 工作流程工作流程SINYEE28LoadRunner LoadRunner 工作流程工作流程系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能調(diào)優(yōu)分析測試結(jié)分析測試結(jié)果果執(zhí)行測試場景執(zhí)行測試場景設(shè)計(jì)測試場景設(shè)計(jì)測試場景創(chuàng)建創(chuàng)建 Web 虛擬用戶虛擬用戶階段階段 1制定壓力測制定壓力測試方案試方案階段階段2階段階段3階段階段4階段階段5制定壓力測試方案制定

19、壓力測試方案1.1 獲得系統(tǒng)使用信息獲得系統(tǒng)使用信息 1.2 準(zhǔn)備業(yè)務(wù)流程文檔準(zhǔn)備業(yè)務(wù)流程文檔1.3 確定參數(shù)化內(nèi)容確定參數(shù)化內(nèi)容1.4 準(zhǔn)備測試數(shù)據(jù)準(zhǔn)備測試數(shù)據(jù)SINYEE29v 搜集和分析系統(tǒng)使用信息搜集和分析系統(tǒng)使用信息 任務(wù)分配圖 事務(wù)統(tǒng)計(jì)文件v 準(zhǔn)備準(zhǔn)備Web應(yīng)用的業(yè)務(wù)邏輯文檔應(yīng)用的業(yè)務(wù)邏輯文檔v 確定可以執(zhí)行自動(dòng)化測試的業(yè)務(wù)流程確定可以執(zhí)行自動(dòng)化測試的業(yè)務(wù)流程總結(jié)總結(jié)SINYEE創(chuàng)建虛擬用戶: ACTION FILESSINYEE31目標(biāo)目標(biāo)v 基于測試方案設(shè)計(jì)基于測試方案設(shè)計(jì)“Vuser”v 創(chuàng)建創(chuàng)建“ action file”v 回放回放“Vuser”和檢查運(yùn)行結(jié)果和檢查運(yùn)行結(jié)

20、果SINYEE32關(guān)鍵字關(guān)鍵字錄制一個(gè)業(yè)務(wù)流程,通過回放模擬真實(shí)用錄制一個(gè)業(yè)務(wù)流程,通過回放模擬真實(shí)用戶業(yè)務(wù)操作。戶業(yè)務(wù)操作。 Action FileSINYEE33VuGen 獲取HTTP協(xié)議創(chuàng)建虛擬用戶WEB服務(wù)器服務(wù)器數(shù)據(jù)庫服務(wù)數(shù)據(jù)庫服務(wù)器器WEB瀏覽瀏覽器器公網(wǎng)公網(wǎng)/外網(wǎng)外網(wǎng)/內(nèi)網(wǎng)內(nèi)網(wǎng)HTTPHTTPVuGenSINYEE34LoadRunner 工作流程系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能調(diào)優(yōu) 分析測試結(jié)分析測試結(jié)果果 場景運(yùn)行場景運(yùn)行 場景設(shè)計(jì)場景設(shè)計(jì) 創(chuàng)建創(chuàng)建Web虛擬虛擬用戶用戶階段1 制定測試方案制定測試方案階段階段 2階段 3階段4階段5創(chuàng)建創(chuàng)建 WEB 虛擬用戶虛擬用戶2.1錄制用戶操作

21、腳本錄制用戶操作腳本2.2 增加增加 LoadRunner 事務(wù)事務(wù)2.3參數(shù)化數(shù)據(jù)參數(shù)化數(shù)據(jù)2.4增加確認(rèn)檢查增加確認(rèn)檢查2.5確認(rèn)正確執(zhí)行確認(rèn)正確執(zhí)行SINYEE35錄制用戶操作腳本v 啟動(dòng)啟動(dòng)VuGen工具工具v 點(diǎn)擊點(diǎn)擊“錄制錄制”按鈕按鈕v 輸入輸入U(xiǎn)RL,選擇,選擇“OK”SINYEE36 錄制用戶操作腳本-簡單說明vVuGen 中的腳本分為三部分:中的腳本分為三部分:vuser_init、vuser_end 和和Actionv其中其中vuser_init 和和vuser_end 都只能存在一個(gè),都只能存在一個(gè),不能再分割,而不能再分割,而Action 還可以分成無數(shù)多個(gè)部分還可以

22、分成無數(shù)多個(gè)部分(通過點(diǎn)擊(通過點(diǎn)擊New 按鈕,新建按鈕,新建ActionXXX)v在錄制需要登陸的系統(tǒng)時(shí),我們把登陸部分放到在錄制需要登陸的系統(tǒng)時(shí),我們把登陸部分放到vuser_init 中,把登陸后的操作部分放到中,把登陸后的操作部分放到Action 中,把注銷關(guān)閉登陸部分放到中,把注銷關(guān)閉登陸部分放到vuser_end 中中如果需要在登陸操作設(shè)集如果需要在登陸操作設(shè)集合點(diǎn),那么登陸操作也要合點(diǎn),那么登陸操作也要放到放到Action 中,因?yàn)橹校驗(yàn)関user_init 中不能添加集中不能添加集合點(diǎn)合點(diǎn)在重復(fù)執(zhí)行測試腳本時(shí),在重復(fù)執(zhí)行測試腳本時(shí),vuser_init 和和vuser_en

23、d 中中的內(nèi)容只會(huì)執(zhí)行一次,重復(fù)的內(nèi)容只會(huì)執(zhí)行一次,重復(fù)執(zhí)行的只是執(zhí)行的只是Action 中的部分。中的部分。SINYEE37Optional itemOptional itemv 1 基于瀏覽器的應(yīng)用程序推薦使用基于瀏覽器的應(yīng)用程序推薦使用HTML-based Scriptv 2 不是基于瀏覽器的應(yīng)用程序推薦使用不是基于瀏覽器的應(yīng)用程序推薦使用URL-based Script。v 3 如果基于瀏覽器的應(yīng)用程序中包含了如果基于瀏覽器的應(yīng)用程序中包含了JavaScript 并且該并且該腳本向服務(wù)器產(chǎn)生了請求,比如分頁按鈕等,也要使用腳本向服務(wù)器產(chǎn)生了請求,比如分頁按鈕等,也要使用URL-base

24、d 方式錄制方式錄制v 4 基于瀏覽器的應(yīng)用程序中使用了基于瀏覽器的應(yīng)用程序中使用了HTTPS 安全協(xié)議,使用安全協(xié)議,使用URL-based 方式錄方式錄SINYEE38 錄制用戶操作腳本錄制用戶操作腳本SINYEE39 錄制用戶操作腳本錄制用戶操作腳本v 執(zhí)行一個(gè)業(yè)務(wù)流程執(zhí)行一個(gè)業(yè)務(wù)流程. . .SINYEE40錄制用戶操作腳本錄制用戶操作腳本v 執(zhí)行一個(gè)業(yè)務(wù)流程執(zhí)行一個(gè)業(yè)務(wù)流程. . .SINYEE41錄制用戶操作腳本錄制用戶操作腳本v 執(zhí)行一個(gè)業(yè)務(wù)流程執(zhí)行一個(gè)業(yè)務(wù)流程. . .SINYEE42錄制用戶操作腳本錄制用戶操作腳本v. . . 選擇選擇“停止停止”按鈕,結(jié)束業(yè)務(wù)流程錄制按鈕,

25、結(jié)束業(yè)務(wù)流程錄制SINYEE43Virtual User Virtual User 回放模式回放模式登陸登陸(recordingoptional)vuser_init.cUser Actions(業(yè)務(wù)流程業(yè)務(wù)流程)Action1.c, Action2.c, etc.(e.g., Create Order, Sumit Order)這部分在壓力測試過程中將會(huì)循環(huán)執(zhí)行這部分在壓力測試過程中將會(huì)循環(huán)執(zhí)行退出退出(recordingoptional)vuser_end.cSINYEE44關(guān)于用戶操作文件關(guān)于用戶操作文件v 每一步表式一個(gè)操作每一步表式一個(gè)操作 用戶的實(shí)際操作 一個(gè) LoadRunner

26、的 “事務(wù)*” 或者是 “確認(rèn)檢查點(diǎn)*”*NOTE: “事務(wù)事務(wù)”和和“檢查點(diǎn)檢查點(diǎn)”將在后續(xù)課程將在后續(xù)課程中討論中討論v 每一步都有一個(gè)每一步都有一個(gè)圖標(biāo)表示圖標(biāo)表示每個(gè)圖標(biāo)代表每個(gè)圖標(biāo)代表一個(gè)步驟一個(gè)步驟SINYEE45Think TimesThink Timesv 模擬用戶在實(shí)際操作模擬用戶在實(shí)際操作時(shí)使用的時(shí)間時(shí)使用的時(shí)間v 錄制過程中由錄制過程中由 VuGen 插入插入* 在在controller中,默認(rèn)狀態(tài)是中,默認(rèn)狀態(tài)是 “Play think times as recorded.”SINYEE46LoadRunner LoadRunner 工作流程工作流程系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能

27、調(diào)優(yōu) 分析測試壓分析測試壓 結(jié)果結(jié)果 執(zhí)行場景執(zhí)行場景 設(shè)計(jì)場景設(shè)計(jì)場景 創(chuàng)建創(chuàng)建 Web 虛擬用戶虛擬用戶階段 1 制定測試方案制定測試方案階段階段 2階段 3階段 4階段 5創(chuàng)建創(chuàng)建Web虛擬用戶虛擬用戶2.1錄制用戶業(yè)務(wù)操作錄制用戶業(yè)務(wù)操作2.2 增加增加 LoadRunner 事務(wù)事務(wù)2.3參數(shù)化參數(shù)化2.4增加確認(rèn)檢查點(diǎn)增加確認(rèn)檢查點(diǎn)2.5確認(rèn)腳本正確回放確認(rèn)腳本正確回放這一步在上述每個(gè)階這一步在上述每個(gè)階段完成后都要執(zhí)行一段完成后都要執(zhí)行一次次SINYEE47虛擬用戶虛擬用戶“ Run-timeRun-time” ” 設(shè)置設(shè)置v 回放時(shí)顯示頁面回放時(shí)顯示頁面v 提示結(jié)果保存目錄提示

28、結(jié)果保存目錄普通設(shè)置普通設(shè)置v 回放時(shí)保存關(guān)聯(lián)信息回放時(shí)保存關(guān)聯(lián)信息v 設(shè)置頁面快照比較方式設(shè)置頁面快照比較方式SINYEE48虛擬用戶虛擬用戶“ Run-timeRun-time” ” 設(shè)置設(shè)置v 建立一個(gè)結(jié)果日志文件建立一個(gè)結(jié)果日志文件v 將日志記錄方式設(shè)置為標(biāo)準(zhǔn)將日志記錄方式設(shè)置為標(biāo)準(zhǔn)“Run-Time”設(shè)置設(shè)置SINYEE49回放回放 Action FileAction Filev 點(diǎn)擊工具欄上圖標(biāo)點(diǎn)擊工具欄上圖標(biāo)SINYEE50確認(rèn)虛擬用戶正確執(zhí)行確認(rèn)虛擬用戶正確執(zhí)行SINYEE51Report TreepaneReportDetailspane確認(rèn)虛擬用戶正確執(zhí)行確認(rèn)虛擬用戶正確執(zhí)

29、行Results.qtpresult1login-test查看測試結(jié)果查看測試結(jié)果SINYEE52確認(rèn)虛擬用戶正確執(zhí)行確認(rèn)虛擬用戶正確執(zhí)行檢查回放時(shí)訪問的 Web 頁面是否正確SINYEE53確認(rèn)虛擬用戶正確執(zhí)行確認(rèn)虛擬用戶正確執(zhí)行v 切換到日切換到日志執(zhí)行窗志執(zhí)行窗口口v 日志順序顯日志順序顯示每一步的示每一步的執(zhí)行和結(jié)果執(zhí)行和結(jié)果 檢查執(zhí)行日志SINYEE54總結(jié)總結(jié)v 用戶所有的業(yè)務(wù)操作都記錄在用戶所有的業(yè)務(wù)操作都記錄在“Action Files”中中 登陸和退出操作可以不包括在“Action Files” 多個(gè)“Action Files”可以由一個(gè)虛擬用戶執(zhí)行v 通過菜單中的通過菜單中

30、的“ Options Settings” 和和“Run-Time Settings ”來控制虛擬用戶的操作。來控制虛擬用戶的操作。v 可以在可以在“執(zhí)行日志執(zhí)行日志”和和“Result File ”中查看回放結(jié)中查看回放結(jié)果果SINYEE創(chuàng)建虛擬用戶: 事務(wù)SINYEE56目標(biāo)目標(biāo)v “action file”的哪些地方需要加入事務(wù)的哪些地方需要加入事務(wù)v 如何執(zhí)行如何執(zhí)行 LoadRunner 事務(wù)事務(wù)v 在在“action file”中使用事務(wù)的重要性中使用事務(wù)的重要性v LoadRunner 中的事務(wù)的含義中的事務(wù)的含義SINYEE57LoadRunner LoadRunner 工作流程

31、工作流程系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能調(diào)優(yōu)分析測試結(jié)果分析測試結(jié)果執(zhí)行場景執(zhí)行場景設(shè)計(jì)場景設(shè)計(jì)場景創(chuàng)建創(chuàng)建Web虛擬虛擬用戶用戶階段 1制定測試方案制定測試方案階段階段 2階段 3階段 4階段 5創(chuàng)建創(chuàng)建Web虛擬用戶虛擬用戶2.1錄制用戶操作錄制用戶操作2.2 增加增加 LoadRunner 事務(wù)事務(wù)2.3參數(shù)化參數(shù)化2.4增加檢查點(diǎn)增加檢查點(diǎn)2.5確認(rèn)正確執(zhí)行確認(rèn)正確執(zhí)行SINYEE58在一個(gè)在一個(gè)action file中可以有一個(gè)或多個(gè)用戶執(zhí)行的中可以有一個(gè)或多個(gè)用戶執(zhí)行的度量單位。度量單位。LoadRunner Transaction關(guān)鍵詞關(guān)鍵詞SINYEE59v “Transactions”

32、是是 LoadRunner 度量系統(tǒng)度量系統(tǒng)性能指標(biāo)的唯一手段性能指標(biāo)的唯一手段v 用于度量高風(fēng)險(xiǎn)業(yè)務(wù)流程的性能指標(biāo)用于度量高風(fēng)險(xiǎn)業(yè)務(wù)流程的性能指標(biāo)v 能夠度量在一組操作中每一步的性能指標(biāo)能夠度量在一組操作中每一步的性能指標(biāo)v 實(shí)現(xiàn)了不同壓力負(fù)載下的性能指標(biāo)對比實(shí)現(xiàn)了不同壓力負(fù)載下的性能指標(biāo)對比v 幫助定位性能瓶頸幫助定位性能瓶頸為什么在為什么在 LoadRunner LoadRunner 中加中加Transactions?Transactions?SINYEE60 Transactions Transactions是度量什么的?是度量什么的?Transaction 3Transaction

33、2 Transaction 1“LoadRunner transaction”用于度量一個(gè)或者多用于度量一個(gè)或者多個(gè)業(yè)務(wù)流程的性能指標(biāo)個(gè)業(yè)務(wù)流程的性能指標(biāo)SINYEE61建立建立 LoadRunner TransactionsLoadRunner Transactions度量登陸度量登陸Transaction 1Transaction 2度量所有登陸后的操度量所有登陸后的操作作Transaction 3度量訂單保存度量訂單保存 一個(gè)基于一個(gè)基于數(shù)據(jù)庫的操作,也是一個(gè)數(shù)據(jù)庫的操作,也是一個(gè)主要的主要的“LoadRunner transaction”例子例子SINYEE62增加 Transacti

34、ons v 點(diǎn)擊工具欄上點(diǎn)擊工具欄上 Start Transaction 圖標(biāo)圖標(biāo)v輸入輸入 Transaction名稱名稱, 點(diǎn)擊點(diǎn)擊OK錄制過程中SINYEE63增加 Transactions v 點(diǎn)擊停止按鈕點(diǎn)擊停止按鈕v 完成需要被度完成需要被度量的業(yè)務(wù)流程量的業(yè)務(wù)流程錄制過程中SINYEE64增加 Transactions v LR_AUTO 自動(dòng)自動(dòng)檢查事務(wù)的狀態(tài)檢查事務(wù)的狀態(tài)v LR_PASS / LR_FAIL 通過通過增加代碼手工檢查增加代碼手工檢查事務(wù)狀態(tài)事務(wù)狀態(tài)選擇事務(wù)狀態(tài)SINYEE65增加 Transactions v 選擇工具欄選擇工具欄上的相應(yīng)按上的相應(yīng)按鈕鈕v

35、增加事務(wù)的步驟增加事務(wù)的步驟和錄制過程中是和錄制過程中是一致的一致的錄制完成后SINYEE66LoadRunner LoadRunner 工作流程工作流程系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能調(diào)優(yōu)分析測試結(jié)果分析測試結(jié)果執(zhí)行場景執(zhí)行場景設(shè)計(jì)場景設(shè)計(jì)場景創(chuàng)建創(chuàng)建Web虛擬虛擬用戶用戶階段 1制定測試方案制定測試方案階段階段 2階段 3階段 4階段 5創(chuàng)建創(chuàng)建Web虛擬用戶虛擬用戶2.1錄制用戶操作錄制用戶操作2.2 增加增加 LoadRunner transactions2.3參數(shù)化參數(shù)化2.4增加檢查點(diǎn)增加檢查點(diǎn)2.5確認(rèn)正確執(zhí)行確認(rèn)正確執(zhí)行SINYEE67確認(rèn)正確執(zhí)行確認(rèn)正確執(zhí)行v 點(diǎn)擊回放點(diǎn)擊回放按鈕按鈕S

36、INYEE68Automatic TransactionsAutomatic Transactions步驟步驟12 sec1 sec9 sec12 sec1 sec21 sec19 sec4 sec交易完成交易完成過程過程總計(jì)總計(jì)1分分19秒秒v比較整個(gè)業(yè)務(wù)流程內(nèi)的各個(gè)步驟的性能指標(biāo)比較整個(gè)業(yè)務(wù)流程內(nèi)的各個(gè)步驟的性能指標(biāo)v度量每一步的性能指標(biāo)度量每一步的性能指標(biāo)v比較各個(gè)步驟之間的性能指標(biāo)比較各個(gè)步驟之間的性能指標(biāo)SINYEE69總結(jié)總結(jié)v使用使用LoadRunner事務(wù)可以度量事務(wù)可以度量: 業(yè)務(wù)流程中每一步所花費(fèi)的時(shí)間 整個(gè)業(yè)務(wù)流程所花費(fèi)的時(shí)間 業(yè)務(wù)流程中每一步的性能指標(biāo)可以自動(dòng)度量 v可

37、以在錄制過程中和錄制完成后增加可以在錄制過程中和錄制完成后增加LoadRunner事務(wù)事務(wù)v利用利用 “automatic LoadRunner transactions” 可以很方便的度量每一步的性能可以很方便的度量每一步的性能指標(biāo)指標(biāo)SINYEE創(chuàng)建虛擬用戶:創(chuàng)建虛擬用戶:參數(shù)化參數(shù)化SINYEE71目標(biāo)目標(biāo)v 參數(shù)化的好處參數(shù)化的好處v 如何進(jìn)行參數(shù)化如何進(jìn)行參數(shù)化v 如何使用數(shù)據(jù)文件如何使用數(shù)據(jù)文件v 腳本回放中可能會(huì)遇到的問題腳本回放中可能會(huì)遇到的問題 SINYEE72問題問題v虛擬用戶回放失敗v由于沒有模擬真實(shí)條件,測試結(jié)果失去意義SINYEE73虛擬用戶輸入相同的數(shù)據(jù)虛擬用戶輸入

38、相同的數(shù)據(jù)數(shù)據(jù)庫里已有數(shù)據(jù)庫里已有訂單訂單 1234 !Server02/14/99 是昨是昨天天!數(shù)據(jù)已經(jīng)在緩存里數(shù)據(jù)已經(jīng)在緩存里!SINYEE74解決方法解決方法參數(shù)化參數(shù)化SINYEE75關(guān)鍵詞關(guān)鍵詞將腳本中錄制下來的特定值用一個(gè)變量來將腳本中錄制下來的特定值用一個(gè)變量來代替,該變量的值是可變的。例如登陸名代替,該變量的值是可變的。例如登陸名和登陸密碼等和登陸密碼等 參數(shù)化參數(shù)化SINYEE76參數(shù)化的目的參數(shù)化的目的腳本代碼腳本代碼Place order for item #A54552(quantitywith credit card)421234993234564Place ord

39、er for item #(quantitywith credit card參數(shù)化參數(shù)化)PLACEHOLDERPLACEHOLDERPLACEHOLDER447475385798345400320230230239409485726280349421234993234564423847495782716412353648765410432165498765421A5455C3401Z1120A0544B0033C8488G999311142106952SINYEE77LoadRunner LoadRunner 工作流程工作流程系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能調(diào)優(yōu) 分析測試結(jié)分析測試結(jié)果果 運(yùn)行場景運(yùn)行場

40、景 場景設(shè)計(jì)場景設(shè)計(jì) 創(chuàng)建創(chuàng)建Web虛擬虛擬用戶用戶階段階段 1 制定測試方案制定測試方案階段 2階段 3階段 4階段 5制定測試方案制定測試方案1.1 獲得系統(tǒng)使用信息獲得系統(tǒng)使用信息 1.2 準(zhǔn)備業(yè)務(wù)流程文檔準(zhǔn)備業(yè)務(wù)流程文檔1.3 確定參數(shù)化字段確定參數(shù)化字段1.4 準(zhǔn)備測試數(shù)據(jù)準(zhǔn)備測試數(shù)據(jù)SINYEE78確定參數(shù)化字段確定參數(shù)化字段v 哪些字段需要一個(gè)當(dāng)前時(shí)間哪些字段需要一個(gè)當(dāng)前時(shí)間?v 哪些字段要求是一個(gè)唯一值哪些字段要求是一個(gè)唯一值?v 哪些字段來自數(shù)據(jù)庫哪些字段來自數(shù)據(jù)庫?v 哪些字段的值受其他字段的約束哪些字段的值受其他字段的約束?SINYEE79違反時(shí)間約束的例子違反時(shí)間約束的

41、例子數(shù)據(jù)庫服數(shù)據(jù)庫服務(wù)器務(wù)器Order date 02/02/2006Web瀏覽器瀏覽器(客戶端)(客戶端)Order date 02/02/2006Order date 02/02/2006O.K.Order date 02/02/2006Expired DateWEB服務(wù)服務(wù)器器1 23457 89 10 11613 14 15 16 171219 20 21 22 231825 26 27 2824February1 23457 89 10 11613 14 15 16 171219 20 21 22 231825 26 27 2824FebruarySINYEE80O.K.時(shí)間的參數(shù)化

42、時(shí)間的參數(shù)化數(shù)據(jù)庫服數(shù)據(jù)庫服務(wù)器務(wù)器Order date 02/02/2006Web瀏覽器瀏覽器(客戶端)(客戶端)Order date 02/15/2006Order date 02/02/2006O.K.Order date 02/15/2006WEB服務(wù)服務(wù)器器1 23457 89 10 11613 14 15 16 171219 20 21 22 231825 26 27 2824February1 23457 89 10 11613 14 15 16 171219 20 21 22 231825 26 27 2824FebruarySINYEE81違反唯一性約束的例子違反唯一性約束的

43、例子數(shù)據(jù)庫服數(shù)據(jù)庫服務(wù)器務(wù)器Web瀏覽器瀏覽器(客戶端)(客戶端)Book order #00115Book order #00115違反唯一性違反唯一性約束約束WEB服務(wù)服務(wù)器器第一次運(yùn)第一次運(yùn)行行這個(gè)訂單號是先前這個(gè)訂單號是先前錄制下來的錄制下來的SINYEE82Book order #00975O.K.對唯一性約束的字段參數(shù)化對唯一性約束的字段參數(shù)化數(shù)據(jù)庫服數(shù)據(jù)庫服務(wù)器務(wù)器Book order #00975Web瀏覽器瀏覽器(客戶端)(客戶端)Book order #00233O.K.Book order #00233WEB服務(wù)服務(wù)器器第一次運(yùn)第一次運(yùn)行行第二次第二次運(yùn)行運(yùn)行SINYEE

44、83使用相同的數(shù)據(jù)將不能給系統(tǒng)施加預(yù)期的壓力使用相同的數(shù)據(jù)將不能給系統(tǒng)施加預(yù)期的壓力數(shù)據(jù)庫服數(shù)據(jù)庫服務(wù)器務(wù)器Find book title The Sun Also RisesWeb瀏覽器瀏覽器(客戶端)(客戶端)Find book title The Sun Also RisesFind book title The Sun Also Rises5 matches foundWEB服務(wù)服務(wù)器器5 matches foundServer not exercised緩存緩存第一次運(yùn)第一次運(yùn)行行第二次第二次運(yùn)行運(yùn)行SINYEE84通過參數(shù)化解決系統(tǒng)壓力問題通過參數(shù)化解決系統(tǒng)壓力問題數(shù)據(jù)庫服數(shù)據(jù)庫服

45、務(wù)器務(wù)器Find book title The Sun Also RisesWeb瀏覽器瀏覽器(客戶端)(客戶端)Find book title The Great GatsbyFind book title The Sun Also Rises5 matches foundWEB服務(wù)服務(wù)器器9 matches foundFind book title The Great Gatsby第二次第二次運(yùn)行運(yùn)行第一次運(yùn)第一次運(yùn)行行SINYEE85數(shù)據(jù)相互約束字段數(shù)據(jù)相互約束字段 未解決時(shí)未解決時(shí)數(shù)據(jù)庫服數(shù)據(jù)庫服務(wù)器務(wù)器Web瀏覽器瀏覽器(客戶端)(客戶端)Find authorShakespeare

46、45 matches foundDisplay match MacBethDisplay MacBethFind author ShakespeareFind author Dickens19 matches foundDisplay match MacBethDisplay MacBethFind author DickensWEB服務(wù)服務(wù)器器OK MacBeth not found第一次運(yùn)第一次運(yùn)行行第二次第二次運(yùn)行運(yùn)行SINYEE86相互約束字段的參數(shù)化相互約束字段的參數(shù)化數(shù)據(jù)庫服數(shù)據(jù)庫服務(wù)器務(wù)器Web瀏覽器瀏覽器(客戶端)(客戶端)Find authorShakespeare45 ma

47、tches foundDisplay match MacBethDisplay MacBethFind author ShakespeareFind author Dickens19 matches foundDisplay match Oliver TwistDisplay Oliver TwistFind author DickensWEB服務(wù)服務(wù)器器OKOK 第二次第二次運(yùn)行運(yùn)行第一次第一次運(yùn)行運(yùn)行SINYEE87參數(shù)化的決策參數(shù)化的決策對于每一個(gè)字段,都要問對于每一個(gè)字段,都要問一下一下 . . .是否需要是否需要當(dāng)前時(shí)間當(dāng)前時(shí)間?是否能從是否能從緩存中獲緩存中獲得得? 參數(shù)化參數(shù)化參

48、數(shù)化參數(shù)化參數(shù)化參數(shù)化是否需要是否需要唯一性約唯一性約束束?是否受其是否受其他字段的他字段的約束約束?參數(shù)化參數(shù)化不需要參數(shù)化不需要參數(shù)化NoYesNoNoNoYesYesYesSINYEE88LoadRunner LoadRunner 工作流程工作流程系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能調(diào)優(yōu)分析測試結(jié)果分析測試結(jié)果運(yùn)行場景運(yùn)行場景場景設(shè)計(jì)場景設(shè)計(jì)創(chuàng)建創(chuàng)建Web虛擬虛擬用戶用戶階段階段 1制定測試方案制定測試方案階段 2階段 3階段 4階段 5制定測試方案制定測試方案1.1獲得系統(tǒng)使用信息獲得系統(tǒng)使用信息 1.2準(zhǔn)備業(yè)務(wù)流程文檔準(zhǔn)備業(yè)務(wù)流程文檔1.3確定參數(shù)化字段確定參數(shù)化字段1.4準(zhǔn)備測試數(shù)據(jù)準(zhǔn)備測試數(shù)據(jù)S

49、INYEE8910/26/1999040498MondayTrueSmith, Wm.$230.59準(zhǔn)備測試數(shù)據(jù)準(zhǔn)備測試數(shù)據(jù)v 獲得主要數(shù)據(jù)獲得主要數(shù)據(jù) 從數(shù)據(jù)庫提取v 創(chuàng)建合法的業(yè)務(wù)流程數(shù)據(jù)創(chuàng)建合法的業(yè)務(wù)流程數(shù)據(jù) 確定數(shù)據(jù)類型 通過業(yè)務(wù)專家獲得SINYEE90數(shù)據(jù)庫服務(wù)器數(shù)據(jù)庫服務(wù)器從數(shù)據(jù)庫提取數(shù)據(jù)從數(shù)據(jù)庫提取數(shù)據(jù)47555333394844923564844440041012221Willamette169.0012/12/99C04410034548449SINYEE91LoadRunner 工作流程工作流程系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能調(diào)優(yōu) 分析測試結(jié)分析測試結(jié)果果 場景運(yùn)行場景運(yùn)行 場景設(shè)計(jì)場

50、景設(shè)計(jì) 創(chuàng)建創(chuàng)建Web虛擬虛擬用戶用戶階段 1 制定測試方案制定測試方案階段階段 2階段 3階段 4階段 5創(chuàng)建創(chuàng)建Web虛擬用戶虛擬用戶2.1錄制用戶操作錄制用戶操作2.2 增加增加 LoadRunner事務(wù)事務(wù)2.3參數(shù)化參數(shù)化2.4增加檢查點(diǎn)增加檢查點(diǎn)2.5確認(rèn)正確執(zhí)行確認(rèn)正確執(zhí)行SINYEE92關(guān)鍵字關(guān)鍵字腳本中錄制下來的動(dòng)態(tài)數(shù)據(jù)被一個(gè)變量替腳本中錄制下來的動(dòng)態(tài)數(shù)據(jù)被一個(gè)變量替代。代。參數(shù)參數(shù)SINYEE93參數(shù)化數(shù)據(jù)參數(shù)化數(shù)據(jù)2. 右鍵單擊該步驟右鍵單擊該步驟1. 定位需要參數(shù)化的數(shù)據(jù)定位需要參數(shù)化的數(shù)據(jù) (在測試方案階段應(yīng)該已經(jīng)在測試方案階段應(yīng)該已經(jīng)完成完成)3. 選擇選擇 “Pr

51、operties”打開需要參數(shù)化的數(shù)據(jù)的屬性對話框SINYEE94參數(shù)化數(shù)據(jù)參數(shù)化數(shù)據(jù)1. 單擊需要參數(shù)化的數(shù)據(jù)單擊需要參數(shù)化的數(shù)據(jù)2. 輸入一個(gè)參數(shù)名稱輸入一個(gè)參數(shù)名稱 (或者從下拉框中選或者從下拉框中選擇擇)3. 確認(rèn)參數(shù)類型為確認(rèn)參數(shù)類型為 File創(chuàng)建一個(gè)參數(shù)SINYEE95參數(shù)化數(shù)據(jù)參數(shù)化數(shù)據(jù)1. 單擊單擊“ Properties”按鈕按鈕2. 單擊單擊“ Create”按鈕并確認(rèn)數(shù)據(jù)文件已經(jīng)被創(chuàng)建按鈕并確認(rèn)數(shù)據(jù)文件已經(jīng)被創(chuàng)建打開參數(shù)化對話框SINYEE96參數(shù)化數(shù)據(jù)參數(shù)化數(shù)據(jù)v 選擇選擇“Edit”按按鈕,文件會(huì)被寫鈕,文件會(huì)被寫字板打開字板打開參數(shù)文件名參數(shù)文件名參數(shù)數(shù)據(jù)文參數(shù)數(shù)

52、據(jù)文件件.datv Parameter.dat 文件回保存在文件回保存在VUser的目錄下的目錄下打開數(shù)據(jù)文件SINYEE97VUSER DESIGN SPECIFICATIONFieldDatamtoyssearch_buttonqueryradishbeetcarrotrhubarbonion參數(shù)化數(shù)據(jù)參數(shù)化數(shù)據(jù)v 在寫字板窗口輸入新數(shù)據(jù)在寫字板窗口輸入新數(shù)據(jù)v 每輸入一行數(shù)據(jù)后都要按每輸入一行數(shù)據(jù)后都要按回車鍵回車鍵DATA參數(shù)名參數(shù)名v 保存數(shù)據(jù)并關(guān)閉寫字板保存數(shù)據(jù)并關(guān)閉寫字板添加數(shù)據(jù)到文件SINYEE98參數(shù)化數(shù)據(jù)參數(shù)化數(shù)據(jù) v 表中的數(shù)據(jù)就是文件中的表中的數(shù)據(jù)就是文件中的數(shù)據(jù)數(shù)據(jù)v

53、 可以顯示同一個(gè)數(shù)據(jù)文件可以顯示同一個(gè)數(shù)據(jù)文件中的多列數(shù)據(jù)中的多列數(shù)據(jù)文件中的數(shù)據(jù)將顯示在參數(shù)化屬性對話框SINYEE99選擇數(shù)據(jù)讀取方式選擇數(shù)據(jù)讀取方式v 順序順序v 隨機(jī)隨機(jī)v 唯一唯一v 同其他行一樣同其他行一樣SINYEE100選擇數(shù)據(jù)更新方式選擇數(shù)據(jù)更新方式v每次循環(huán)時(shí)更新每次循環(huán)時(shí)更新 v每次發(fā)生時(shí)每次發(fā)生時(shí) 更新更新v只更新一次只更新一次SINYEE1011234VuserIterationVuser 1Vuser 2 Vuser 3 Vuser 4數(shù)據(jù)替換方式詳解-SequentialaaaabbbbccccddddabcdabcdabcdabcdEach Iteration

54、Each Occurrence param1Once aaabbbbaeeeeffffhghghghgccccddddSINYEE1021234VuserIterationVuser 1Vuser 2 Vuser 3 Vuser 4數(shù)據(jù)替換方式詳解數(shù)據(jù)替換方式詳解-Unique-UniqueaeimbfjncgkodhlpabcdabcdabcdabcdEach Iteration Each Occurrence param1Once aqyzrjbiemu3fnv4hgpoxw65cks1dlt2SINYEE1031234VuserIterationVuser 1Vuser 2 Vuser

55、3 Vuser 4數(shù)據(jù)替換方式詳解-Randomaeim1f2zcgkodhlpamq1amq1amq1amq1Each Iteration Each Occurrence param1Once aq4zrj5iemu3fnvc1gpbxgqvcks1h7t2SINYEE104LoadRunner LoadRunner 工作流程工作流程系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能調(diào)優(yōu) 分析測試結(jié)分析測試結(jié) 果果 運(yùn)行場景運(yùn)行場景 設(shè)計(jì)場景設(shè)計(jì)場景 創(chuàng)建創(chuàng)建Web虛擬虛擬用戶用戶階段 1 制定測試方案制定測試方案階段階段 2階段 3階段 4階段 5創(chuàng)建創(chuàng)建Web虛擬用戶虛擬用戶2.1錄制用戶操作錄制用戶操作2.2 增加

56、增加LoadRunner 事務(wù)事務(wù)2.3參數(shù)化參數(shù)化2.4增加檢查點(diǎn)增加檢查點(diǎn)2.5確認(rèn)正確執(zhí)行確認(rèn)正確執(zhí)行SINYEE105 確認(rèn)正確執(zhí)行對于順序替換方式對于順序替換方式, 循環(huán)數(shù)應(yīng)該和數(shù)據(jù)行數(shù)相同循環(huán)數(shù)應(yīng)該和數(shù)據(jù)行數(shù)相同 Run-Time Settings - IterationsSINYEE106確認(rèn)正確執(zhí)行Run-Time Settings - Log選擇擴(kuò)展日志選擇擴(kuò)展日志,選中選中 Parameter substitutionSINYEE107確認(rèn)正確執(zhí)行Execution Log參數(shù)化數(shù)據(jù)的參數(shù)化數(shù)據(jù)的替換過程將會(huì)替換過程將會(huì)在執(zhí)行日志中在執(zhí)行日志中顯示顯示SINYEE108總結(jié)

57、總結(jié)v 參數(shù)化的目的參數(shù)化的目的: 解決數(shù)據(jù)唯一性約束 解決當(dāng)前時(shí)間約束 給服務(wù)器施加預(yù)期的壓力 處理數(shù)據(jù)的相互約束v 準(zhǔn)備輸入數(shù)據(jù)準(zhǔn)備輸入數(shù)據(jù): 來自數(shù)據(jù)庫 來自業(yè)務(wù)專家v 通過通過“Run-Time Settings”控制虛擬用戶的執(zhí)行控制虛擬用戶的執(zhí)行 日志 循環(huán)數(shù)SINYEE場景:建立,運(yùn)行和分析測試場景:建立,運(yùn)行和分析測試結(jié)果結(jié)果SINYEE110v 完整壓力測試的組成部分完整壓力測試的組成部分目標(biāo)目標(biāo)v 如何創(chuàng)建和運(yùn)行一個(gè)如何創(chuàng)建和運(yùn)行一個(gè) LoadRunner場景場景v LoadRunner場景的執(zhí)行過程場景的執(zhí)行過程v 如何分析測試結(jié)果如何分析測試結(jié)果SINYEE111關(guān)鍵字

58、關(guān)鍵字一個(gè)完整的壓力測試由下面五個(gè)部分組成一個(gè)完整的壓力測試由下面五個(gè)部分組成: LoadRunner Scenarioscriptsrun-time settingshostmachinesresultslocationvirtual usersDEFINITION SINYEE112Host 1Host 2Scenario Scenario 結(jié)構(gòu)示意圖結(jié)構(gòu)示意圖LoadRunnerControllerServer(s)VusersVusersScriptsScriptsSINYEE113LoadRunner LoadRunner 工作流程工作流程系統(tǒng)性能調(diào)優(yōu)系統(tǒng)性能調(diào)優(yōu) 分析測試結(jié)分析測試

59、結(jié)果果 運(yùn)行場景運(yùn)行場景 設(shè)計(jì)場景設(shè)計(jì)場景創(chuàng)建創(chuàng)建Web虛擬虛擬用戶用戶階段 1 制定測試方案制定測試方案階段 2階段階段 3階段 4階段 5場景設(shè)計(jì)場景設(shè)計(jì)3.1定義測試主機(jī)定義測試主機(jī)3.2 連接測試主機(jī)連接測試主機(jī)3.3定義虛擬用戶腳本定義虛擬用戶腳本3.4添加虛擬用戶添加虛擬用戶SINYEE114LoadRunner ControllerLoadRunner Controllerv 場景執(zhí)行前場景執(zhí)行前 場景設(shè)計(jì) 設(shè)置“ run-time configuration”v 場景執(zhí)行期間場景執(zhí)行期間 運(yùn)行大量并發(fā)用戶 控制每個(gè)虛擬用戶 (初始化, 運(yùn)行, 暫停, 停止) 顯示每個(gè)虛擬用戶的

60、狀態(tài) 顯示每個(gè)虛擬用戶發(fā)出信息 監(jiān)控服務(wù)器資源v 場景執(zhí)行完畢場景執(zhí)行完畢 搜集性能數(shù)據(jù) 運(yùn)行結(jié)果分析工具 協(xié)助系統(tǒng)性能調(diào)優(yōu)SINYEE115Controller Controller 負(fù)責(zé)控制負(fù)責(zé)控制 Vusers Vusers RemoteCommandLauncherInitializeVusersRunStopAgentSINYEE116添加虛擬用戶添加虛擬用戶Vusers Tab of the Controller Vusers Tab of the Controller Initialize/run VuserVuserstatusScriptNamesHostMachinesSINYEE

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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

提交評論