Locust的使用一详解编程语言

Locust 是一个开源负载测试工具,使用 Python 代码定义用户行为

安装

pip install locust

查看是否安装成功

locust -V

Locust的使用一详解编程语言

测试locustfile.py

import time 
from locust import HttpUser, task, between 
 
class QuickstartUser(HttpUser): 
    wait_time = between(1, 2.5) 
 
    @task 
    def hello_world(self): 
        self.client.get("/hello") self.client.get("/world") def on_start(self): self.client.post("/login", json={"username":"foo", "password":"bar"})

说明:

  为模拟的用户定义一个类。它继承自HttpUser,为每个用户提供了一个 client 属性,该属性是HttpSession的一个实例。可用于向负载测试的目标系统发出 HTTP 请求

  为它每个虚拟用户创建一个此类的实例,并且每个虚拟用户会在自己的 gevent 线程中运行这些实例

  on_start() 方法是在虚拟用户启动(启动事件)时会触发的方法

  只有通过 @task 装饰的方法才会在 Locust 虚拟用户运行过程中被调用

启动

locust -f locustfile.py  --web-host="127.0.0.1"

Locust的使用一详解编程语言

启动 Locust 后,会在本地开启一个服务

浏览器打开web监控页面 ,http://127.0.0.1:8089/

 Locust的使用一详解编程语言

说明:

Number of users to simulate:模拟的总虚拟用户数

Hatch rate (users spawned/second):每秒启动的虚拟用户数

HOST:测试的地址

输入参数点击Start swarming,开始运行性能测试

Statistics聚合报告

Locust的使用一详解编程语言

 说明

Type:请求类型 
Name:请求名称 
requests:当前已完成的请求数量 
fails:当前失败的数量 
Median:响应时间的中间值,单位为毫秒 
90%ile:根据正态分布,90%的响应时间在正态分布平均值下方 
Average:平均响应时间,单位为毫秒 
Min:最小响应时间,单位为毫秒 
Max:最大响应时间,单位为毫秒 
average Size:平均每个请求的数据量,单位为字节 
current RPS(requests per second):每秒钟处理请求的数量,即RPS

Charts曲线展示

Locust的使用一详解编程语言

Failures失败请求的展示

Locust的使用一详解编程语言

Exceptions异常请求的展示

Locust的使用一详解编程语言

Download Data测试数据下载模块

 Locust的使用一详解编程语言

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/20431.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论