jmeter學習指南之OOM和監聽器使用

testingbang發表於2019-08-23

OOM

在執行壓測的時候,有時候會遇到 OutOfMemoryError 記憶體溢位問題。

可以透過調整 JVM 記憶體引數進行最佳化,是在 jmeter.bat 啟動檔案中配置的。

以文字方式開啟 jmeter.bat,修改以下配置項:


調整堆記憶體 HEAP 的大小:

將預設的 set HEAP=-Xms512m -Xmx512m,調整為 set HEAP=-Xms1024m -Xmx1024m;
調整堆記憶體中新生代 NEW 的大小:

將預設的 set NEW=-XX:NewSize=128m -XX:MaxNewSize=128m,調整為 set NEW=-XX:NewSize=256m -XX:MaxNewSize=256m;
調整堆記憶體中永久代 PERM 的大小:

將預設的 set PERM=-XX:PermSize=64m -XX:MaxPermSize=128m,調整為 set PERM=-XX:PermSize=128m -XX:MaxPermSize=256m;
修改後重啟 jmeter,oom 問題一般可以得到解決(引數的調整不是越大越好,具體根據測試機的硬體配置來決定,循序漸進)。

監聽器的使用
監聽器即 listener ,用來收集 sampler 的結果資料和呈現結果圖形,我們最常用的有察看結果樹、聚合報告等等。

監聽器本身會在每次 sampler 執行完成後執行一次,即一個測試計劃中的監聽器數量越多,執行時帶來的資源消耗就越大(尤其是 察看結果樹 和 用表格察看結果 等)。

因此實際執行測試計劃時,應首先禁用不需要的監聽器,再開始執行;

或者是執行時只啟用一種監聽器, 並將生成的結果寫入檔案中,然後就可以用不同的監聽器展現儲存的結果資料。

但是, 實際在併發量較大時、或者進行穩定性測試時,最好是去掉或禁用所有的監聽器,根據斷言結果來判斷請求是否成功, 測試報告以plugins外掛中的報告形式、或是用文字形式,以此來提高測試結果的準確性。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69942496/viewspace-2654755/,如需轉載,請註明出處,否則將追究法律責任。

相關文章