以前的性能测试工作中,都是JMeter,近期接触了python开源的性能测试框架locust,边查资料边学习的过程中也出现一些环境的状况,这里简单介绍下locust的使用方法,以及我搭环境时踩过的那些坑。
官方文档:https://docs.locust.io/en/stable/index.html
需要编写脚本,不过脚本比较简单
支持分布式测试,跨平台、易扩展
提供简单的UI用户界面,可以快捷操作和下载报告
将两个工具做了简单对比:
工具 |
JMeter |
locust |
比较 |
环境 |
Java + JMeter |
Python + Locust |
JMeter环境简单 |
脚本 |
需要在JMeter 的 UI界面上编写 |
不限制,Python IDE即可 |
JMeter比Locust编写简单 |
负载 |
单台负载机可模拟的负载数(线程)有限,需要多台机器设置分布式 |
通过编写代码完成分布式配置,单台负载机可模拟的负载数超过JMeter
|
Locust优于JMeter |
平台 |
Windows、linux、Mac |
Windows、linux、Mac |
|
界面 |
复杂 |
简洁 |
|
报告 |
详细的报表、出参入参信息 |
简单结果和报表 |
JMeter优于Locust |
可移植性 |
通过导出导入JMX脚本的方式 |
Python脚本 |
不相上下吧 |
安装Locust
1、支持的python版本:2.7、3.X;
2、安装locust,以Mac为例,命令行直接通过 pip install locustio 命令安装
提示successed,就表示安装成功了
3、安装成功后命令行输入 pip show locust 命令查看是否安装成功,或者通过 locust -help 命令查看帮助信息。
安装过程中遇到的问题:
1、安装时提示不成功,失败提示并未看出来异常,解决方案时:手动安装pyzmq、gevent和greenlet等依赖包,即使用pip install 依赖包
2、我有两台电脑,其中一台命令行输入locust --help,直接就显示帮助内容了。另一台显示locust:command not found,应该是python环境问题,但是一直没找到解决方案。这种需要进到/python/bin目录启动locust