• 【Locust】 Locust 基础运行


    前言

    Locust 是python语言编写的一款快速测试api性能的工具,方便上手,本文给出一些基础知识,可执行的。

    简单Demo

    1. Locust 版本大于1.0    查看版本:  locust -V

    2. 设置tasks还可以这样
    tasks = {index: 2, about: 1}
    from locust import TaskSet, task, HttpUser, tag
    from gevent._semaphore import Semaphore
    from locust.contrib.fasthttp import FastHttpUser
    import time
    from locust.exception import RescheduleTask
    
    
    class TestList(TaskSet):
        def on_start(self):
            """ on_start is called when a Locust start before any task is scheduled
                所有压测的task执行之前等待登录完成
            """
    
    
        def on_stop(self):
            pass
    
        @task(5)
        def product_list(self):
            # 查询域名
            api = '***'
            params = "?Id=123" 
            url = api + params
            print(1, self.header1)
            with self.client.get(url=url, headers=header, catch_response=True,
                                 name="product_list") as res:
                print(res)
                if res.status_code != 200:
                    res.failure("Case Failed")
    
        @tag('tag1')
        @task(5)
        def list_domain(self):
            api = '/***/**'
            params = "?Id=123" 
            url = api + params
          
            with self.client.get(url=url, headers=header, catch_response=True,
                                 name="list_domain") as res:
                print(res)
                if res.status_code != 200:
                    res.failure("Case Failed")  # 如果该条用例的状态不是200,将该条用例标记为失败
    
    
    
    class WebsiteUser(HttpUser):
        def setup(self):
            print('locust setup')
    
        def teardown(self):
            print('locust teardown')
    
    
        tasks = [TestList]
       min_wait
    = 200 # 毫秒 max_wait = 6000 # 毫秒 # stop_timeout = 60 # 单位秒,运行时间 host = 'http://**.**'

    执行Locust

    windows 本地: 

    • WEB模式: locust -f ***.py 然后在本机的浏览器输入: http://localhost:8089
    • NO WEB模式: locust -f ***.py --headless --csv=example -u 2 -r 2 -t 30s

     

    linux系统:

    [locust 主从模式]
    locust -f my_locustfile.py --worker --master-host=192.168.0.14 --master-port=5557
    locust -f my_locustfile.py --master --master-bind-host=192.168.0.14 --master-bind-port=5557


    Locust基础执行参数

     
    
    
    




  • 相关阅读:
    cookie和session
    ViewState与Session 的重要区别
    C#.Net 中ArrayList 与 Array的区别
    c#如何把文件夹压缩打包然后下载
    关于并发的处理
    const和readonly的区别
    计算某列的字符串相加sql语句
    MS SQL Server存储过程批量修改用户表所有者
    已有打开的与此命令相关联的DataReader,必须首先将它关闭
    XML与数据库
  • 原文地址:https://www.cnblogs.com/Ronaldo-HD/p/14538536.html
Copyright © 2020-2023  润新知