- 「如何以不同的網路連線速度測試移動應用程式和網站?」
在大多數情況下,移動裝置使用者透過其蜂窩運營商網路訪問網際網路。覆蓋範圍將根據其位置而有所不同,這意味著連線速度將有所不同。確保您的網站或應用程式能夠完全處理移動裝置和平板電腦,即使它們具有不同的網際網路連線速度,也至關重要。
在今天的文章中,將展示如何透過在JMeter負載測試中控制模擬虛擬使用者的頻寬來做到這一點。
預設情況下,JMeter將盡快傳送其取樣器定義的請求。這對於產生負載非常有用,但不是很現實,因為實際使用者不會不停地訪問伺服器,因此他們需要一些時間在兩次操作之間進行人生思考。最重要的是,移動使用者受到網路頻寬的限制,這可能會進一步降低他們的速度。
限制輸出頻寬以模擬不同的網路速度
JMeter確實提供了限制輸出頻寬以模擬不同網路速度的選項。可以透過以下兩個屬性來控制頻寬:
httpclient.socket.http.cps = 0
httpclient.socket.https.cps = 0
這些分別用於HTTP和HTTPS協議,圖解HTTP腦圖。該屬性預設為零,這意味著沒有限制。首字母縮寫cps代表“每秒字元數”。當您將屬性設定為零以上時,頻寬將根據您的設定進行調節。
這是計算“cps”的公式:
「cps=(目標頻寬(以kbps為單位*1024)/8」
例如:為了模擬GPRS蜂窩網路速度(下行速度為171Kbits/秒),相關的CPS值為:21888(171*1024/8)
因此,這是透過這些屬性限制頻寬的方法:
將這兩行新增到user.properties檔案中(可以在JMeter安裝的bin資料夾中找到此行)
httpclient.socket.http.cps = 21888
httpclient.socket.https.cps = 21888
- 重新啟動JMeter來使配置生效
透過-J命令列引數傳遞屬性的值,如下所示:
jmeter -Jhttpclient.socket.http.cps=21888 -Jhttpclient.socket.https.cps=21888 -t /path/to/your/testplan.jmx
- 以下是一些流行的頻寬預設:
頻寬 cps值 GPRS 21888 3G 2688000 4G 19200000 WIFI 802.11a/g 6912000 ADSL 1024000 100 Mb區域網 12800000 千兆網絡卡 128000000