初识Locust性能测试

作者: 车大侠丶 | 来源:发表于2018-03-09 16:20 被阅读7次

    什么是 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

      图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

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

    测试结果

    图4

    相关文章

      网友评论

        本文标题:初识Locust性能测试

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