日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

pythonlocust使用方法_使用python的locust库进行性能测试

發布時間:2023/12/10 python 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pythonlocust使用方法_使用python的locust库进行性能测试 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Locust(俗稱 蝗蟲), 一個輕量級的開源壓測工具,用Python編寫。

安裝

pip3 install locust

Python編寫性能測試腳本

import json

from locust import HttpLocust, TaskSet, task

"""

創建后臺管理站點壓測類,需要繼承TaskSet

可以添加多個測試任務

"""

class AdminLoadTest(TaskSet):

# 用戶執行task前調用

def on_start(self):

pass

# 用戶執行task后調用

def on_stop(self):

pass

@task(1)

def download(self):

header = {"Content-Type": "application/json"}

data = {

"staff_id": 94

}

data = json.dumps(data)

self.client.post('/get_know_list', data=data, headers=header)

@task(2)

def body(self):

header = {"Content-Type": "application/json"}

data = {

"staff_id": 94

}

data = json.dumps(data)

self.client.post('/get_answer_list', data=data, headers=header)

class RunLoadTests(HttpLocust):

"""

創建運行壓測類

"""

task_set = AdminLoadTest

min_wait = 1000

max_wait = 50000

weight = 1

if __name__ == "__main__":

import os

os.system("locust -f test_download.py --host=http://127.0.0.1:5000")

AdminLoadTest類繼承TaskSet類,用以描述用戶行為:

使用@task裝飾的方法為一個事務,方法的參數用于指定該行為的執行權重,參數越大每次被用戶執行的概率越高,默認為1(事務blogs()被執行的概率是bky_index()的2倍);

on_start():每個locust用戶執行測試事務之前執行一次,用于做初始化的工作,如登錄;

on_stop(): 每次執行完測試事務之后執行一次。

RunLoadTests類用于設置性能測試屬性:

task_set:指向定義的一個用戶行為類;

min_wait:模擬用戶在執行每個任務之間等待的最小時間,單位為毫秒;

max_wait:模擬用戶在執行每個任務之間等待的最大時間,單位為毫秒(min_wait和max_wait默認值為1000,因此,如果沒有聲明min_wait和max_wait,則locust將在每個任務之間始終等待1秒。);

weight:一個文件中有多個locust用戶類時,指定用戶類的權重(默認新增locust用戶時會隨機選擇一個用戶類);

啟動

終端進入代碼目錄,輸入 locust -f start.py --host=http://localhost:5000

使用os.system在代碼里面寫入啟動命令

各個參數的含義

-f : 指定要運行的測試腳本文件

--host : 要加載主機的URL前綴,不指定時,讀取WebsiteUser類中定義的host;

--master : 單臺機器不能模擬更多用戶時,分布式模式,通過--master指定主進程;

打開Locust的web界面

使用上面的命令行啟動Locust之后,應該打開瀏覽器并將其指向http://localhost:8089/(如果您在本地運行Locust)。

Number of total users to simulate : 設置模擬用戶數;

Hatch rate(users spawned/second) : 每秒產生(啟動)的虛擬用戶數;

設置好模擬用戶后,點擊Start swarming開始測試,測試結果如下:

Type   :請求的類型,如GET/POST;

Name :請求的路徑;

request :已發出請求數量;

fails :請求失敗的數量;

Median :響應時間的中間值(單位:毫秒);

Average :平均響應時間(單位:毫秒);

Min :請求的最小響應時間(單位:毫秒);

Max :請求的最大響應時間(單位:毫秒);

Content Size:單個請求的大小(單位:字節);

reqs/sec:每秒鐘請求的個數;

其他

總結

以上是生活随笔為你收集整理的pythonlocust使用方法_使用python的locust库进行性能测试的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。