首页 > 编程语言 >【python】locust模块_性能测试

【python】locust模块_性能测试

时间:2022-11-29 16:58:43浏览次数:64  
标签:web no python Locust py locust -- 模块

简介

  Locust是一款易于使用的分布式负载测试工具,完全基于事件,即一个locust节点也可以在一个进程中支持数千并发用户,不使用回调,通过gevent使用轻量级过程(即在自己的进程内运行)

 

安装

pip install locust
# pip install locustio

 

查看是否安装成功/版本

locust -v 

 

 

编写测试用例

1 创建==locust.HttpUser== 之类
2 为待测试用例添加@locust.task 装饰器
3 使用self.client 发送请求
4 指定 wait_time 属性

 

 

 

命令行启动

locust -f locustfile.py --headless -u 500 -r 10  --host 123  -t 1h5m

 

框架是通过命令locust运行的,常用参数有:

-H:指定测试的主机地址(注:会覆盖Locust类指定的主机地址)
-f:指定测试脚本地址(注:脚本中必须包含一个Locust的衍生类)
--no-web:不启动web网页,而是直接开始运行测试,需提供属性-c和-r
-u:并发的用户数,与--no-web一起使用
-r:每秒启动的用户数,与--no-web一起使用
-t:运行时间(单位:秒),与--no-web一起使用
-L:日志级别,默认为INFO 调试命令: locust -f **.py --no-web -u 1 -t 1 

 

 

执行

# 命令行运行
locust -f xxx.py

 

访问地址:http://localhost:8089/

 

启动Locust
要使用上述Locust文件运行Locust,如果该文件名为locustfile.py且位于当前工作目录中,则可以运行:
$ locust
如果Locust文件位于与locustfile.py在不同的子目录/或者文件名不一样,则使用参数-f+文件名:
$ locust -f locust_files/my_locust_file.py

要在多个进程中运行Locust,我们可以通过指定--master:
$ locust -f locust_files/my_locust_file.py --master
然后我们将启动任意数量的从属进程:
$ locust -f locust_files/my_locust_file.py --slave
如果要在多台机器上运行Locust,则在启动从属服务器时还必须指定主服务器主机(在单台计算机上运行Locust时不需要,因为主服务器主机默认为127.0.0.1):
$ locust -f locust_files/my_locust_file.py --slave --master-host=192.168.0.100
还可以在配置文件(locust.conf或~/.locust.conf)或以LOCUST_前缀的env vars中设置参数
例如:(这将与上一个命令执行相同的操作)
$ LOCUST_MASTER_HOST=192.168.0.100 locust

注意:要查看所有可用选项,请键入:locust—help

 

 

 

 

 

 

 

 


错误提示 

提示:ModuleNotFoundError: No module named“xxx”

将xxx所在文件路径添加到sys.path

如模块demo路径:E://pycode/demo

sys.path.append(os.path.abspath(".."))
print(os.path.abspath(".."))

<Tips:即将E://pycode路径添加到sys.path中>

 

locust官方文档参考:https://cloud.tencent.com/developer/article/1594240

入门详解参考:https://blog.csdn.net/sugela8/article/details/125362026

标签:web,no,python,Locust,py,locust,--,模块
From: https://www.cnblogs.com/phoenixy/p/16880464.html

相关文章

  • pythonfloat优雅的四舍五入
    开发中经常会有float四舍五入转int的需求,先看看浮点数直接转int的情形:无论如何float直接转int都不会四舍五入,而是直接抹去小数点。这个需求很简单,实现也很简单,看过网友的......
  • python一键去PDF水印,只需十行代码,超级简单...
    弟弟最近要考试,临时抱佛脚在网上找了一堆学习资料复习,这不刚就来找我了,说PDF上有水印,影响阅读效果,到时候考不好就怪资料不行,气的我差点当场想把他揍一顿!算了,弟弟长......
  • python-面向对象- 实例方法,类方法,静态方法, 类属性
    名称定义方法权限调用方法实例方法第一个参数必须是示例,一般命名为self可以访问实例的属性和方法,也可以访问类的实例和方法一般通过示例调用,类也可以调用类方法......
  • Python工具箱系列(十六)
    前面介绍了对称加密算法,本文将介绍密码学中另一类重要应用:消息摘要(Digest),什么是消息摘要?简单的定义是:对一份数据,进行一个单向的Hash函数,生成一个固定长度的Hash值,这个值......
  • 拓端tecdat|Python代写中用PyTorch机器学习分类预测银行客户流失模型
    Python中用PyTorch机器学习分类预测银行客户流失模型  分类问题属于机器学习问题的类别,其中给定一组功能,任务是预测离散值。分类问题的一些常见......
  • python中time模块的常用方法的转换关系图
      获取当前的时间戳  把时间戳转换成了时间的格式  获取时间  把时间格式数据转换为易识别的字符串 获取到表示时间的字符串,再转换为时间数据。 ......
  • python的几种字符串分割方法(partition)
    split最常用的方法re.splitsplitlines按行进行分割partition#使用split进行分割是,若分割符合不存在,会返回一个列表,含有一个元素'abc'.split('d')#['abc']#......
  • 机器学习之Python-numpy(where函数)
    1.numpy中的where函数是一个具有条件的真假语句(有点类似if三元表达)。简单讲,就是判断条件是否为真,为真执行一个条件,为假执行一个条件。where函数相关官网:https://......
  • python,进程线程
    一、什么是进程/线程https://blog.csdn.net/qq_69447411/article/details/1263134261、引论众所周知,CPU是计算机的核心,它承担了所有的计算任务。而操作系统是计算机......
  • nmon+python 基于AIX系统数据分析
    ​​https://sourceforge.net/projects/pynmongraph/​​ github:​​https://github.com/madmaze/pyNmonAnalyzer​​  nmon sourceforge:​​https://sourceforge.......