接著上一篇 【Loadrunner】學習loadrunner——性能測試基礎篇(一),這邊文章繼續(xù)總結loadrunner用法。
1.loadrunner初識
1.1.loadrunner是什么
LoadRunner是一種適用于許多軟件體系架構的自動負載測試工具,從用戶關注的響應時間、吞吐量,并發(fā)用戶和性能計數(shù)器等方面來衡量系統(tǒng)的性能表現(xiàn),輔助用戶進行系統(tǒng)性能的優(yōu)化。
1.2.loadrunner執(zhí)行原理
loadrunner啟動以后,在任務欄會有一個Agent進程,通過Agent進程,監(jiān)視各種協(xié)議的Client與Server端的通訊,用LR的一套C語言函數(shù)來錄制腳本,所以只要loadrunner支持的協(xié)議,就不會存在錄制不到的,然后loadrunner調用這些腳本向服務器端發(fā)出請求,接受服務器的響應。至于服務器內部如何處理,它不關心。
LoadRunner通過以模擬上千萬用戶實施并發(fā)負載及實時性能監(jiān)測的方式來確認和查找問題,優(yōu)化性能和加速應用系統(tǒng)的發(fā)布周期。
1.3.loadrunner組成
LoadRunner主要包括三個前臺功能組件,分別為Virtual User Generator(虛擬用戶腳本生成器)、Controller(測試控制器)和Analysis(結果分析器)。系統(tǒng)會自動調用后臺功能組件LG(負載生成器)和Proxy(用戶代理)來完成性能測試工作。
- Virtual User Generator(虛擬用戶腳本生成器):是錄制與編寫腳本的地方。通過錄制或編寫腳本來模擬用戶的行為。
- Controller(測試控制器):是執(zhí)行負載測試管理和監(jiān)控的中心。在這里指定具體的性能測試方案,執(zhí)行性能測試,收集測試數(shù)據(jù),監(jiān)控測試指標。監(jiān)控工具將測試過程中收集到的客戶機、服務器和網絡性能指標數(shù)據(jù)顯示在監(jiān)控頁面上,便于測試人員對系統(tǒng)表現(xiàn)進行隨時掌握。(創(chuàng)建、運行、監(jiān)控)
- Analysis(結果分析器):測試完成后,對測試過程中收集到的各種性能數(shù)據(jù)進行計算、匯總和處理,生成各種圖表和報告,為系統(tǒng)性能測試結果分析提供支持。(分析測試結果,得出測試報告)
整個運行過程可總結為:
先用VUG來編寫性能測試腳本,然后用controller來運行性能測試腳本,針對腳本以及具體的場景來設置測試場景,監(jiān)控腳本在執(zhí)行過程中的狀態(tài),最終根據(jù)性能測試結果生成測試報告。
2.Virtual User Generator(VUG)的使用
2.1.使用vug創(chuàng)建性能測試腳本
- 啟動 Visual User Generator 后,選擇新建腳本,因為要測試的是web項目,所以選擇協(xié)議為WebHTTP/HTML,點擊創(chuàng)建后,進入主窗體。
2.2.認識性能測試腳本頁面
創(chuàng)建完成之后,進入如下頁面,使用C語言進行編程,這里如果我們錄制的話,可以將錄制轉化為C語言代碼
2.3.打開WebTours服務
我們在錄制之前,需要先打開WebTours服務,如果沒有打開,我們是錄制不了的。
(1)我們需要找到我們軟件的安裝路徑,找到下圖文件,雙擊打開
(2)打開之后,如下圖:
(3)然后我們在瀏覽器訪問WebTours服務,鏈接為:http://127.0.0.1:1080/WebTours/
2.4.開始錄制
(1)點擊頁面的錄制按鈕
(2)登錄賬號
可先把文件夾改成.txt,查看內容,再改回去
登錄成功:
(3)停止錄制之后,生成以下腳本
編譯:檢查語法是否存在錯誤,如果不想在執(zhí)行過程中出現(xiàn)錯誤,最好先編譯一下
回放:運行腳本,檢查腳本是否存在錯誤
點擊回放按鈕,可以看到如下:
紅框里面會告訴我們很多信息:吞吐量,頭部的字節(jié)等等…
3.腳本的增加(手動編寫)
3.1.為什么要進行腳本的增強
- 錄制的測試腳本達不到預期的測試目的
- 缺乏針對性
3.2.增強腳本需要采取的手段
3.2.1.事務(Transaction)
為了衡量服務器的性能,我們需要定義事務。比如:我們在腳本中有一個數(shù)據(jù)查詢操作,為了衡量服務器執(zhí)行查詢操作的性能,我們把這個操作定義為一個事務,這樣在運行測試腳本時,LoadRunner 運行到該事務的開始點時,LoadRunner 就會開始計時,直到運行到該事務的結束點,計時結束。這個事務的運行時間在結果中會有反映。插入事務操作可以在錄制過程中進行,也可以在錄制結束后進行。LoadRunner 可以在腳本中插入不限數(shù)量的事務。
- 開啟事務:lr_start_transaction(“事務名稱”)
- 結束事務:lr_end_transaction(“開啟事務時取的名稱”,LR_AUTO)
添加事務的兩種方式:
- 直接在代碼中添加
- 使用工具來添加事務函數(shù)
3.2.2.集合點
集合點:LR為了實現(xiàn)真正意義上的并發(fā)而進行的一種機制,讓虛擬用戶進行短暫的集合,在滿足特定的條件情況下開始放行,產生并發(fā)數(shù)。
- 函數(shù):lr_rendezvous(“集合的名稱”)
【注意】
集合點只能放在action中,并且集合應該放在事務之前
【目的】
插入集合點是為了衡量在加重負載的情況下服務器的性能情況。
3.2.3.檢查點
檢查點:相當于junit里面的斷言,在進行壓力測試的時候,檢查服務器是否能夠準確返回指定的測試對象。
函數(shù):web_reg_find(“Text=想要匹配的關鍵詞”,LAST);
【注意】檢查點函數(shù)一般放在頁面請求之前
3.3.4.參數(shù)化
參數(shù)化:如果用戶在錄制腳本過程中,填寫提交了一些數(shù)據(jù),比如說要增加數(shù)據(jù)庫的記錄,這些操作都杯記錄到了腳本中。當多個虛擬用戶運行腳本時,都會提交相同的記錄,這樣不符合實際的運行情況,而且可能引起沖突,為了更加真實的模擬實際環(huán)境,需要各種各樣的輸入。因此參數(shù)化是一種不錯的方法。
選擇NO
如果我們想要為這個變量添加更多的參數(shù)的話,點擊:
在這里添加完用戶參數(shù)之后,我們也是不能在網址上登錄的,我們需要創(chuàng)建文件。復制原來的jojo文件,然后創(chuàng)建ones與twos文件,然后更改里面的內容。
【注意】文件里面的格式不要改,只改名稱就可以了
完成之后,我們就可以登錄進行驗證了:
保存之后,運行,可以看到,確實執(zhí)行了三次
下一篇將分享controller的使用與analysis的使用。最近廣州疫情變得嚴重了,在另一方面,開放的聲音又不斷冒出。我是相信世界是均衡的,無論選擇何種方式去面對,都會有相應的后果,作為普通大眾,我唯一能做的就是跟從大局走。文章來源:http://www.zghlxwxcb.cn/news/detail-452034.html
當一件事情你控制不住它的走向的時候,那么,請你且聽風吟,及時行樂,提升自己,尋找生命的意義…文章來源地址http://www.zghlxwxcb.cn/news/detail-452034.html
到了這里,關于【Loadrunner】學習loadrunner——性能測試基礎篇VUG的使用(二)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!