目录
前言
- 本系列文章基于locust 1.4.3版本
入门脚本
# -*- coding: utf-8 -*-
# @Time : 2021/3/31
# @Author : 大海
import os
from locust import HttpUser, task, between
# 模拟用户行为的类
class QuickstartUser(HttpUser):
# 每个任务执行后随机等待1~2.5s后执行下一个任务
wait_time = between(1, 2.5)
# task装饰器,声明任务,也就是模拟用户的行为
@task
def baidu_index(self):
self.client.get("/")
# 执行查询该任务的权重为3,大约是上面任务数的3倍,
@task(3)
def search_locust(self):
self.client.get("?wd=locust")
if __name__ == '__main__':
file_path = os.path.abspath(__file__)
os.system(f'locust -f {file_path} --web-host=127.0.0.1')
启动页面介绍
- Number of users to simulate :设置模拟用户数
- Hatch rate(users spawned/second): 每秒产生(启动)的虚拟用户数
- Host:被测网址的域名
- 点击 “Start swarming” 按钮,开始运行性能测试
性能测试参数
- Type: 请求的类型,例如GET/POST。
- Name:请求的路径。这里为百度首页,即:https://www.baidu.com/
- request:当前请求的数量。
- fails:当前请求失败的数量。
- 90%ile (ms):90%的请求的时间值,90%的服务器响应时间低于该值,10%高于该值。
- Median:中间值,单位毫秒,一半的服务器响应时间低于该值,而另一半高于该值。
- Average:平均值,单位毫秒,所有请求的平均响应时间。
- Min:请求的最小服务器响应时间,单位毫秒。
- Max:请求的最大服务器响应时间,单位毫秒。
- Average size (bytes):平均请求的大小,单位字节。
- Current RPS:当前每秒钟请求的个数。RPS=并发数/响应时间
- Current Failures/s:当前失败数