美文网首页
locust性能测试:安装与使用(二)

locust性能测试:安装与使用(二)

作者: HC2 | 来源:发表于2021-09-26 19:12 被阅读0次
    1. 安装 locust

      pip install locust

    1. 查看是否安装成功,查看版本号

安装成功会输出版本号

(pressure_env) lxdeMacBook-Pro-2:api_pressure lx$ locust -V
locust 2.2.1
  • 3 更新最新版本号

    pip install -U --pre locust
    
  • 4 简单的接口压测例子:

from locust import HttpUser,TaskSet,between,task
import os

headers = {"Content-Type": "application/json", "app_id": "101"}

class UserBehavior(TaskSet):

    @task
    def test_baidu(self):
        '''查询全部'''

        url = '/widget?id=LocalNews&ajax=json&t=1632650885696'
        param = {
            "limit":8,
            "offset":0,
        }
        with self.client.get(url,params=param,headers={},catch_response = True) as response:
            print("=====", response.json())

class WebsiteUser(HttpUser):
    host = 'http://news.baidu.com'
    tasks = [UserBehavior]

    wait_time = between(1, 2)

if __name__ == '__main__':
    os.system("locust -f bb.py")
image.png image.png

参数解析:

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

执行结果:

image.png

脚本解析:

1、 @task装饰器装饰的函数表示是要被测试的一个任务
2、 wait_time = between(1, 3)
来模拟用户的真实操作,例如用户在实际操作中,从上一步到下一步的操作,中间可能存在思考时间 ,between(1, 3) 表示用户思考的时间,随机为1到3秒

host = 'http://news.baidu.com' 为要测试的域名

也可以写为:

class WebsiteUser(HttpUser):
    # host = 'http://news.baidu.com'
    tasks = [UserBehavior]

    wait_time = between(1, 2)

if __name__ == '__main__':
    os.system("locust -f bb.py --host=http://news.baidu.com")

当两处都写时,以#2为主

class WebsiteUser(HttpUser):
    host = 'http://news.baidu.com222'   #1
    tasks = [UserBehavior]

    wait_time = between(1, 2)

if __name__ == '__main__':
    os.system("locust -f bb.py --host=http://news.baidu.com")  #2

***旧版本写法有点不同:

from locust import HttpLocust, TaskSet, task,events
class UserBehavior(TaskSet):

    @task
    def test_baidu(self):
        '''查询全部'''

        url = '/widget?id=LocalNews&ajax=json&t=1632650885696'
        param = {
            "limit":8,
            "offset":0,
        }
        with self.client.get(url,params=param,headers={},catch_response = True) as response:
            print("=====", response.json())


class WebsiteUser(HttpLocust):
    host = 'http://news.baidu.com/'
    task_set = UserBehavior
    min_wait = 1000
    max_wait = 1000

相关文章

  • 性能测试工具Locust使用指南(三)

    前文目录:性能测试工具Locust使用指南(一)性能测试工具Locust使用指南(二) 分布式运行Locust 如...

  • locust库浅谈

    locust是python的性能测试库。 1、安装locust:pip install locust; 2、安装成...

  • locust性能测试:安装与使用(二)

    安装 locustpip install locust 查看是否安装成功,查看版本号 安装成功会输出版本号 3 更...

  • 2019-01-11

    Locust性能测试1-环境准备与基本使用 前言 提到性能测试,大部分小伙伴想到的就是LR和jmeter这种工具,...

  • Locust-python 压测工具初始及记一次测试记录

    第一部分 Python3中性能测试工具Locust安装使用 概述 Locust寓意蝗虫,蝗虫过境,寸草不生;而Lo...

  • 性能测试之locust

    今天,让我们来谈谈如何使用locust做复杂场景的性能测试。

  • 初识locust

    什么是locust locust是一种易于使用、可编写脚本且可扩展的性能测试工具。locust具备5大特点:1.用...

  • locust学习(一)

    最近需要做性能测试,着手使用locust写性能测试脚本,下面记录一下学习过程 使用的开发工具是:pycharm,安...

  • 利用python-locust实现接口自动化压测

    Locust简介 Locust[https://locust.io/]为一款通过编写python脚本来执行性能测试...

  • 性能测试工具Locust

    性能测试工具Locust | iCourt技术 Locust介绍 性能测试工具市面上有很多,除了我们耳熟能详的Lo...

网友评论

      本文标题:locust性能测试:安装与使用(二)

      本文链接:https://www.haomeiwen.com/subject/femkgltx.html