初识Locust性能测试

什么是 Locust

Locust官网:https://www.locust.io/

Locust是一个简单易用的分布式负载测试工具,主要用来对网站进行负载压力测试。
特性:

  • 可以通过Python编写模拟用户行为的代码,简单易用
  • 分布式可扩展,能够支持上百万用户
  • 自带Web界面
  • 不仅能测试web系统,也可以测试其它系统

安装Locust

  • GitHub下载安装
    项目地址:https://github.com/locustio/locust/
    clone下来之后,通过Python 执行 setup.py 文件即可安装

  • 使用pip命令安装
    pip install locust

  • 验证是否安装成功
    打开cmd,输入 locust –help

    初识Locust性能测试_第1张图片
    图1

    出现此界面说明安装成功

简单的Locust性能测试

  • 创建 load_test.py 文件
# @Time    : 2018/3/7 15:28
# @Author  : Cr
# @File    : load_test.py
from locust import HttpLocust,TaskSet,task
class Test(TaskSet):

    @task(1)
    def baidu(self):
        self.client.get("/")

class WebsiteUser(HttpLocust):
    task_set = UserBehavior
    min_wait = 3000
    min_wait = 6000

代码解析:

  • 创建Test()类继承TaskSet类
  • 创建baidu() 方法表示一个行为,访问百度首页。client.get()用于指请求的路径“/”,因为是百度首页,所以指定为根路径。
  • 用@task() 装饰该方法为一个任务。1表示一个Locust实例被挑选执行的频率,数值越大,执行频率越高。
  • WebsiteUser()类用于设置性能测试。
  • task_set :指向一个定义了的用户行为类。
  • min_wait :用户执行任务之间等待时间的下界,单位:毫秒。
  • max_wait :用户执行任务之间等待时间的上界,单位:毫秒。

开始性能测试

locust -f load_test.py --host=https://www.baidu.com

  • -f 指定性能测试脚本文件
  • –host 指定被测试应用的URL的地址


    图2

通过浏览器访问:http://localhost:8089

初识Locust性能测试_第2张图片
图3

  • Number of users to simulate 设置模拟用户数。
  • Hatch rate(users spawned/second) 每秒产生(启动)的虚拟用户数。
  • 点击 “Start swarming” 按钮,开始运行性能测试。

测试结果

初识Locust性能测试_第3张图片
图4

你可能感兴趣的:(初识Locust性能测试)