JMeter進行一次簡單的壓力測試


測試目的:10個用戶並發打開百度首頁(https://www.baidu.com/),百度能否正常響應。

操作步驟

 

一、打開JMeter

打開后的界面如下:

 

二、右擊“測試計划”,添加線程組

 

三、設置線程組的線程數

 

JMeter中的線程組,類似於LoadRunner中的虛擬用戶組,因為我們要測試10個用戶並發的情況,所以這里的線程數,要設置為10

 

Ramp-Up Period(in seconds)”的含義是達到最大線程數(這里設置的是10)所需要的時間(單位是秒)。

 

如果我們把Ramp-Up Period設置為100秒,那么JMeter就會在100秒內啟動所有10個線程,並讓它們運轉起來,每隔10秒啟動一個新線程。這里我們把Ramp-Up Period設置為1秒。

 

四、右擊“線程組”,添加“HTTP請求”

 

五、設置“HTTP請求”

 

服務器名稱或IP:www.baidu.com

  • 協議:https

  • 方法:GET

  • 路徑:/

 

六、添加“察看結果樹”

 

“察看結果樹”是用來看測試結果的。

 

至此,測試腳本已經設置完了,我們可以執行一下了,看看當有10個用戶並發訪問百度首頁時,百度能否正常響應。

 

點擊“啟動”,執行測試腳本,如下:

 

執行完畢后,在“察看結果樹”里面會出現結果,如下:

在這里面,我們可以看到每個請求的請求數據和響應數據。

 

每個請求都有正確的響應,如下:

 

說明,在10個用戶在1秒內並發訪問的情況下,百度首頁仍然能正確響應。

 

但是在這里,我們會發現,每個請求的響應數據是亂碼的,如下:

 

這里,我們可以這么設置,如下:

 

右擊剛添加的“HTTP請求”,添加后置處理器

 

在腳本里面輸入:

prev.setDataEncoding("UTF-8");如下

 

再次執行腳本,響應數據就不會亂碼了,如下:

對於需要登錄才能使用的接口,有兩種方法可以測試:

1. 靜態token:通過抓捕工具fiddler或者其它工具,登錄用戶獲取token值,添加http信息頭管理器,添加參數:名稱(token名稱),值(獲取到的token值);

2.添加Http Cookie管理器,參數填寫登錄信息里的sessionID的key和key值,[域]/[路徑]這兩項可填可不填,如果填寫則填寫登錄的域和路徑。

第二種方法也可以什么參數都不填,但在線程組加上登錄請求,並且post請求勾選跟隨重定向,其他請求不勾選。

關於JMeter學習,這里給大家推薦一本書《零成本實現Web性能測試:基於Apache JMeter和Gatling》,大家看一下JMeter的那部分就可以了,需要電子版的可以留言郵箱


免責聲明!

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



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