您好,登錄后才能下訂單哦!
這篇文章主要講解了“JMeter使用技巧有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“JMeter使用技巧有哪些”吧!
如何使用英文界面的JMeter
Jmeter啟動時會自動判斷操作系統的locale 并選擇合適的語言啟動,所以,我們啟動jmeter后,其會出現一個倍感親切的中文界面。但由于jmeter本身的漢化工作做得不好,你會看到有未被漢化的選項及元件的參數。而且部分翻譯并不準確,因此對于英文比較好的牛人來說更喜歡純正的英文界面。
強制以英文方式啟動jmeter的方法如下:
在windows環境下,打開jmeter解壓目錄,bin目錄下的jmeter.bat文件,也就是jmeter程序的啟動文件,選擇記事本方式打開。做以下修改:
.................
set HEAP=-Xms512m -Xmx512m
set NEW=-XX:NewSize=128m -XX:MaxNewSize=128m
set SURVIVOR=-XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=50%
set TENURING=-XX:MaxTenuringThreshold=2
set RMIGC=-Dsun.rmi.dgc.client.gcInterval=600000 -Dsun.rmi.dgc.server.gcInterval=600000
set PERM=-XX:PermSize=64m -XX:MaxPermSize=64m
set LOCALE=-Duser.language=en -Duser.region=rem
set DEBUG=-verbose:gc -XX:+PrintTenuringDistribution
.........
rem Server mode
rem Collect the settings defined above
set ARGS=%DUMP% %HEAP% %NEW% %SURVIVOR% %TENURING% %RMIGC% %PERM% %DDRAW% %LOCALE%
.............
暈死,當我上面介紹了那么多后,在最新的2.8版本,我無意中發現了這個功能。
如何使用鏡像服務器
在調試和修改測試計劃的過程中,通常會為采樣器增加一些額外的設置,例何設置額外的HTTP頭、cookie管理器或認證管理器等,但當設置了這些內容后,sampler發出的請求是否就與預期的完全一支呢?
當然用戶可以通過添加監聽器來看查采樣器發出的HTTP請求,但如果調試過程中并不想真正地把請求發送給被測應用,如何解決這個問題呢?
Jmeter 提供了一個名叫HTTP Mirror Server的組件,HTTP Mirror Server可以啟動一個鏡像的服務器,該服務器把所有接收到的請求原封不動地返回,這樣就可以看到發出請求的具體內容了。
添加HTTP Mirror Server的方式:
右鍵點擊“工作臺”--->非測試元件--->HTTP Mirror Server
如果有必要的話需要修改端口號,點擊“啟動”按鈕來啟動Server 。
接下來修改采樣器,使其將HTTP請求 發送到localhost:8081(也就是Mirror Server啟動的位置)
JMeter分布式測試
Jmeter 是java 應用,對于CPU和內存的消耗比較大,因此,當需要模擬數以千計的并發用戶時,使用單臺機器模擬所有的并發用戶就有些力不從心,甚至會引起JAVA內存溢出錯誤。為了讓jmeter工具提供更大的負載能力,jmeter短小精悍一有了使用多臺機器同時產生負載的機制。
那么,是如何實現多臺負載機同時運行的呢?當然不會多個人坐在多臺負載機面前,一喊開始,大家同時啟動jmeter。這種方式很笨,也很難達到真正的同步。其實,我們通過單個jmeter 客戶端就可以控制多個遠程的jmeter服務器,使它們同步的對服務器進行壓力測試。
啟動Debug 日志記錄
大多數測試元件都支持Debug 日志記錄。如果通過 GUI 運行測試計劃,那么在選中測試元件后,可以通過“幫助”菜單enable debug或者disable debug。在“幫助”菜單 中有一個選項“What’s this node? ”,
通過它可以查看GUI 和測試元件的類名,如圖 11 -7 所示。通過它們,測試人員可以決定修改哪一項JMeter 屬性,以便修改日志級別。
例如:我們可以點擊一個HTTP請求,選擇菜單欄“幫助”--->what's this node ?
線程之間傳遞變量
JMeter 變量作用域局限于所屬線程。這樣設計是經過深思熟慮的,目的是讓測試線程能夠獨立運轉。有時候用戶可能需要在不同線程間(可能屬于同一個線程組,也可能不屬于同一個線程組)傳遞變量。
其中一種方法就是使用屬性。屬性為所有 JMeter 線程所共享,因此當某個線程設置一個屬性后,其他線程就可以讀取更新后的值。
如果存在大量數據需要在線程間傳遞,那么可以考慮使用文件。例如,測試人員可以在一個線程中使用監聽器,保存響應到文件(Save Responses to a file )或者 BeanShell PostProcessor 。而在另外一個線程中使用HTTP 采樣器的“file: ”協議來讀取文件,接著使用一個后置處理器或者BeanShell 測試元件提取信息。
如果在測試啟動前測試人員就能獲得測試數據,那么最好將數據保存到文件中,使用CSV Dataset讀取。
感謝各位的閱讀,以上就是“JMeter使用技巧有哪些”的內容了,經過本文的學習后,相信大家對JMeter使用技巧有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。