前言:主流的性能测试工具有jmeter跟loadrunner,那我们为啥还要选择locust来进行性能测试?
LoadRunner 和 Jmeter 这类采用进程和线程的测试工具,都很难在单机上模拟出较高的并发压力。Locust 的并发机制摒弃了进程和线程,采用协程(gevent)的机制。协程避免了系统级资源调度,由此可以大幅提高单机的并发能力。另外学习新的工具或测试方法,也可以帮助我们更加深刻的了解性能测试。
1、locust的安装及注意事项
python版本最好是3.7或者3.8的,直接在命令行使用pip install locustio==0.14.6进行安装,安装完成后输入locusts -V 可以查看安装的locust版本
踩坑记录:如果安装失败,提示下面的错误,那么就检查下电脑的控制面板Microsoft Visual C++ 版本是不是大于14.0的,我试验过本机14.3的版本,安装还是会报错,最终经过尝试,我将Microsoft Visual C++升级到了17+,再次安装locust成功,这个Microsoft Visual C++文件有点大,我附上安装器,有需要可以自行下载安装
2、locust框架介绍及简单demo编写
locust框架主要有TaskSet、task、HttpLocust,分别对应接口用例,用户行为修饰器,性能测试配置。
简单demo如下:
from locust import HttpLocust, TaskSet, task
class TestDemo(TaskSet):
def on_start(self):
self.login()
def on_stop(self):
self.l