大叔最近通讀了一下Jmeter官方手冊,并且對google翻譯版本進行了校對整理,對于手冊中提到的Jmeter最新實踐,整理分享給大家。
01
—
Jmeter最佳實踐

1、始終使用最新版本的 JMeter
JMeter 的性能在不斷改進,因此強烈建議用戶使用最新版本。
2、使用正確的線程數(shù)
您的硬件功能以及測試計劃設(shè)計都會影響您可以使用 JMeter 有效運 行的線程數(shù)。該數(shù)字還將取決于您的服務(wù)器的速度
3、減少資源需求
使用 CLI 模式(不適用圖形模式)
盡可能少地使用監(jiān)聽器
不要在負載測試期間使用“查看結(jié)果樹”或“用表格查看結(jié)果”監(jiān)聽 器,僅在腳本編寫階段使用它們來調(diào)試您的腳本。
與其使用大量相似的采樣器,不如在循環(huán)中使用相同的采樣器,并使用變量(CSV 數(shù)據(jù)集)來改變樣本。
不要使用功能模式
使用 CSV 輸出而不是 XML
只保存您需要的數(shù)據(jù)
盡可能少地使用斷言
使用性能最好的腳本語言(參見 JSR223 部分,官網(wǎng)手冊推薦的是groovy)
4、BeanShell 腳本
從 JMeter 3.1 開始,我們建議從 BeanShell 切換到 JSR223 測試元 素(有關(guān)更多詳細信息,請參閱下面的 JSR223 部分),并從 __Beanshell 函數(shù)切換到__groovy 函數(shù)。
5、用 Groovy 或 Jexl3 等開發(fā)腳本函數(shù)
編寫和測試作為函數(shù)的腳本是非常困難的。但是,JMeter 具有 JSR223 采樣器,它可以與任何支持它的語言一起使用。我們建議使 用 ApacheGroovy 或任何支持 JSR223 的Compilable 接口的語 言。假設(shè) Groovy 腳本存儲在變量 RANDOM_NAME 中。然后可以將函數(shù)調(diào)用編碼為${__groovy(${RANDOM_NAME})}。不需要在腳本中轉(zhuǎn)義任何逗 號,因為在插入變量值之前解析函數(shù)調(diào)用。
6、JSR223 元素
對于密集的負載測試,推薦的腳本語言是一種其 ScriptingEngine 實現(xiàn) Compilable 接口的語言。Groovy 腳本引擎實現(xiàn) Compilable。然而,在 JMeter 3.1 的發(fā)布日期,Beanshell 和 Javascript 都沒有 這樣做,因此建議避免使用它們進行密集的負載測試。
7、在線程和線程組之間共享變量
變量是線程的局部變量;在一個線程中設(shè)置的變量不能在另一個線程 中讀取。這是設(shè)計使然。有關(guān)可以在測試開始之前確定的變量,請參閱 參數(shù)化測試(上文)。如果在測試開始之前不知道該值,則有多種 選擇:? 將變量存儲為屬性 - 屬性對于 JMeter 實例是全局的 ? 將變量寫入文件并重新讀取它們。還有兩種不常見,這里不介紹了。
8、過時的元素
建議不要使用已棄用的元素(在更改列表和組件參考中標記為此類),并在可用或執(zhí)行相同操作的新方法時遷移到新的建議元素。不推薦使用的元素從版本 N 的菜單中刪除。
想要獲取Jmeter中文手冊的同學(xué),關(guān)注公眾號:軟件測試大叔,發(fā)送“手冊”,即可獲取。
注:以上內(nèi)容為筆者經(jīng)驗總結(jié),不足之處,歡迎指導(dǎo)交流。