Locust —— Python 开发的负载测试工具

Locust 是一个开源负载测试工具。使用 Python 代码定义用户行为,也可以仿真百万个用户。

Locust 是非常简单易用,分布式,用户负载测试工具。Locust 主要为网站或者其他系统进行负载测试,能测试出一个系统可以并发处理多少用户。

Locust 是完全基于时间的,因此单个机器支持几千个并发用户。相比其他许多事件驱动的应用,Locust 不使用回调,而是使用轻量级的处理方式 gevent。

特性

使用纯 Python 代码编写用户测试场景;不需要 UIs 或者 XML

分布式&可伸缩 - 支持成千上万的用户

基于 Web 的 UI

可以测试任意系统;虽然 Locust 是面向 Web 的,但是也可以测试其他任意的系统

安装:

>pip install locustio

示例代码:

from locust import HttpLocust, TaskSet, task

class WebsiteTasks(TaskSet):

def on_start(self):

self.client.post("/login", {

"username": "test_user",

"password": ""

})

@task

def index(self):

self.client.get("/")

@task

def about(self):

self.client.get("/about/")

class WebsiteUser(HttpLocust):

task_set = WebsiteTasks

min_wait = 5000

max_wait = 15000

;