JMeter性能測試:JMeter多用戶並發模擬及壓測結果分析


JMeter多用戶並發模擬

JMeter設置

多用戶並發數的多少與計算機內存有關,設置 jmeter.bat (Windows) 或者 jmeter.sh (Linux):
Windows設置:編輯jmeter.bat文件,設置HEAP

Linux設置:編輯jmeter.sh文件,設置變量,JVM_ARGS="-Xms1g-Xmx2g"

以Windows為例,設置set HEAP=-Xms1g -Xmx2g -XX:MaxMetaspaceSize=256m ,重新開啟JMeter,打開Java監控工具Jconsole:

參數設置生效。

JMeter線程組

JMeter性能測試任務都是基於線程組的,是性能測試的資源調度池,控制性能測試的運行調度、虛擬用戶數(並發數)、執行策略。JMeter線程組主要有三類:

  • setUp Thread Group:普通線程組執行之前執行,相當於pytest測試框架的setup方法。
  • Thread Group:普通線程
  • tearDown Thread Group:普通線程組之后執行。

JMeter壓測實例

首先使用python開啟一個http服務:

(base) C:\Users\10287>python -m http.server 80
Serving HTTP on 0.0.0.0 port 80 (http://0.0.0.0:80/) ...

新建線程組,設置線程數,點擊運行

View Results Tree

Thread Group -> Add -> Listenter -> View Results Tree

支持各種測試器:正則表達式、CSS選擇器、XPath測試、JSON Tester等

Aggregate Report

查看Aggregate Report,聚合報告
Thread Group -> Add -> Listenter -> Aggregate Report

參數:

  • Average:平均響應時間,所有請求的平均響應時間。
  • Median:中位數,50%的用戶響應時間不超過這個值。
  • 99%line:99%的用戶響應時間不超過這個值。
  • Error%:異常百分比。(錯誤請求的數量/請求的總數)
  • Throughput:吞吐量,默認情況下每秒完成的請求數。
  • Received KB/sec:接收數據。

命令行方式執行壓測

使用圖形界面會消耗部分內存,可以直接使用命令行方式運行。

先保存壓測腳本為test_http.jmx,執行如下命令:
jmeter.bat -n -t test_http.jmx -l test_result.jtl

D:\testing_tools\apache-jmeter-5.3\bin>jmeter.bat -n -t D:/ProgramWorkspace/TestingDemo/test_jmeter/test_http.jmx -l result.jtl
Creating summariser <summary>
Created the tree successfully using D:/ProgramWorkspace/TestingDemo/test_jmeter/test_http.jmx
Starting standalone test @ Sun Jan 24 17:48:59 CST 2021 (1611481739136)
Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445
summary +     23 in 00:00:01 =   43.6/s Avg:    35 Min:    11 Max:    91 Err:     0 (0.00%) Active: 3 Started: 25 Finished: 22
summary +     27 in 00:00:01 =   52.7/s Avg:    68 Min:     9 Max:   612 Err:     0 (0.00%) Active: 0 Started: 50 Finished: 50
summary =     50 in 00:00:01 =   47.9/s Avg:    53 Min:     9 Max:   612 Err:     0 (0.00%)
Tidying up ...    @ Sun Jan 24 17:49:00 CST 2021 (1611481740529)
... end of run

jtl文件解析

解析命令行方式運行腳本生成的 jtl文件:

jmeter.bat -g result.jtl -e -o D:/resultReport

打開index.html文件,可以查看性能報告:

--THE END--

文章標題:JMeter性能測試:JMeter多用戶並發模擬及壓測結果分析
本文作者:hiyo
本文鏈接:https://www.cnblogs.com/hiyong/p/14406651.html
歡迎關注公眾號:「測試開發小記」及時接收最新技術文章!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM