Locust 是一個輕量化的壓力測試工具,可以用來對API做簡單的壓力測試,並提供界面展示響應時間,平均請求時間等相關信息
安裝locust#
具體相關文檔可以查看 locust
<code>python3 -m pip install locustio/<code>
編寫測試用例#
<code># execute/># locust -f benchmark.py --host=http://localhost:8000
#
from locust import HttpLocust, TaskSet, task
class UserBehavior(TaskSet):
def on_start(self):
""" on_start is called when a Locust start before any task is scheduled """
print('start benchmark test')
def on_stop(self):
""" on_stop is called when the TaskSet is stopping """
print('end benchmark test')
@task(1)
def profile(self):
self.client.request(method="POST", url="/company/get", headers={"Content-Type": "application/x-www-form-urlencoded"}, data={"code":"300049.SZ"})
class WebsiteUser(HttpLocust):
task_set = UserBehavior
min_wait = 5000
max_wait = 9000/<code>
測試結果#
在測試腳本目錄下執行如下腳本可以啟動locust dashboard, 需要指定腳本和測試服務器
平均響應時間
閱讀更多 JetQin90 的文章