locust_01_官网快速启动示例

# _*_coding:utf-8_*_

# @Time   : 2021/1/22 13:27
# @Author : CarpLi
# @File   : first.py
# @Desc   : locust快速启动第一个程序

from loguru import logger
from locust import HttpUser, task, between


class LoadApiUser(HttpUser):
    # 1、指定host和用户访问接口的休眠时间
    host = "https://www.baidu.com"
    wait_time = between(3, 5)

    # 2、@task装饰器指定权重
    @task(2)
    def user_info(self):
        logger.info("访问 ---> /user")
        # 3、使用requests模块发送http请求,name可以设置别名
        self.client.get("/user", name="获取用户信息")

    @task(1)
    def app_list(self):
        logger.info("访问 ---> /app")
        self.client.get("/app", name="获取应用列表")

    # 4、每个虚拟用户启动时,调用
    def on_start(self):
        self.login()
        logger.info("压测开始")

    # 5、每个虚拟用户停止时,调用
    def on_stop(self):
        logger.info("压测结束")

    def login(self):
        logger.info("模拟用户登陆")
        self.client.post("/login", name="登陆-获取Token")


if __name__ == '__main__':
    # 6、指定web的host和port
    """ locust -f first.py --web-port 8082 --web-host=127.0.0.1 """
    # 7、命令行执行的基本参数
    # -u 总人数 -r 每秒启动的人数 -t 持续时间 --headless 无界面模式启动
    """" locust -f first.py -u 10 -r 1 -t 10 --headless """
    pass

原文地址:https://www.cnblogs.com/carp-li/p/14313181.html