JMeter在linux下運行

只需一行命令:sh jmeter.sh -n -t http.jmx -lresult_*.jtl

步驟:

安裝jmeter

1 把你筆記本的jmeter添加到壓縮包 jmeter.zip

2 上傳jmeter.ziplinux服務器:我用rz方式上傳到了/opt/soft

3 解壓,進入路徑/opt/soft/jmeter/bin

4 查看jmeter.sh是否能夠執行,若不能未其添加執行權限,我直接  chmod 777jmeter.sh,可用  sh jmeter.sh -v 來檢測命令是否可用。

編寫測試計劃

1 GUI模式下,新建一個測試計劃,保存並上傳到linux機器對應目錄jmeter /bin,可在測試計劃裏添加對應的定時器,聚合報告等。

2 linux目錄下找到你的測試計劃,vim打開進行編輯

<stringPropname="ThreadGroup.num_threads">200</stringProp>   線程數

<stringPropname="ConstantTimer.delay">100</stringProp> 固定定時器的時間間隔

添加過的元器件其對應參數都可以在裏面找到,進行參數調整時只要在這裏編輯就ok了。

結果文件

結果文件即之前保存過的result.jtl格式文件

該文件可以使用 GUI 模式下的聚合報告查看,可以打開 JMeter GUI 界面 -> 測試計劃 -> 添加線程組 -> 添加聚合報告 -> 點擊 "瀏覽..." 按鈕找到你剛生成的 jtl 文件打開即可統計結果進行分析。


 這裏是我們使用非 GUI 模式運行測試腳本時可以使用的一些命令:

·        -h 幫助 -> 打印出有用的信息並退出

·        -n GUI 模式 -> 在非 GUI 模式下運行 JMeter

·        -t 測試文件 -> 要運行的 JMeter 測試腳本文件

·        -l 日誌文件 -> 記錄結果的文件

·        -r 遠程執行 -> 啓動遠程服務

·        -H 代理主機 -> 設置 JMeter 使用的代理主機

·        -P 代理端口 -> 設置 JMeter 使用的代理主機的端口號

        例如:jmeter -n -ttest1.jmx -l logfile1.jtl -H 192.168.1.1 -P 8080

問題

1Error in NonGUIDriverjava.lang.NullPointerException

產生該錯誤的原因,目前有兩種情況:

情況1,低版本的JMeter運行高版本的測試計劃(測試計劃是在高版本的JMeter上編制的)。解決方法:使用相同或更高版本JMeter運行該計劃。

情況2,使用第三方插件生成的測試計劃,運行在沒有該第三方插件的JMeter上。解決方法:在JMeter上安裝插件或重新生成不包含插件的測試計劃。

2)寫了一個scf壓測jar包,因爲網絡通信的關係,放到同臺服務器上運行。

運行沒多久看到一個進程cpu飆到了600%(8)load到了50多。服務端已經不怎麼能處理了。以爲服務不行了

仔細看了下,cpu 600多的進程是我的jmeter執行命令,因爲我沒在jmeter端進行限制,所以發請求發瘋了。後來加了定時器,限制其每秒發的請求數,服務可正常運行了。


發佈了9 篇原創文章 · 獲贊 47 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章