locust压测

由于jmeter压测会有各种各样的bug,特此来用一下python的locust

1.安装locust

pip install locust

2.新建locustfile.py文件

# coding=utf-8
from locust import TaskSet, HttpUser, task, between

#2.定义任务集(用户行为):相当于Jmeter中定义一个事务,事务中包含多个接口请求
class UserBehavior(TaskSet):

    def on_start(self):
        print("开始的时候执行")

    def on_stop(self):
        print("结束的时候执行")
	#1.定义任务(接口请求):相当于Jmeter中的HTTP请求取样器
    @task()
    def baidu(self):
        data = {
            "params": '{"paperSubjectIds": [], "questionIds": [] }',
            "TOKEN": "123456789",
        }
        response = self.client.post('/list', data=data) //进行post请求
        print("Response json:", response.json())
		response = self.client.get('/list', params=data) //进行get请求
        print("Response json:", response.json())

#3.定义Locust类(用户):相当于Jmeter中的线程组(用户),控制事务执行
class WebsiteUser(HttpUser):
    tasks = [UserBehavior]
    wait_time = between(1, 2)
    host = "http://www.baidu.com"

3.启动locust,有三种方式

  • 直接命令行执行locust
    在这里插入图片描述
  • locust -f locustfile.py
    在这里插入图片描述
  • locust --headless --users 10 --spawn-rate 1 -H http://your-server.com
    在这里插入图片描述
    4.在浏览器以UI模式打开报告:当用前两种方式运行时
  • 首先改一下源码:找到你的python安装目录下的 \Lib\site-packages\locust\argument_parser.py
  • 然后搜索bind,找到如下default,改成127.0.0.1
    在这里插入图片描述
  • 打开浏览器,进入http://127.0.0.1:8089/
    在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值