locust的安装和运行的demo

    最近开始学习locust,从最初的安装到运行一个简单的demo。
    lcoust官网上有介绍安装和使用:https://docs.locust.io/en/stable/installation.html
    locust 需要的python环境,首先要安装python。
    因为本人已经安装了python以及python所使用的开发环境pycharm。在pycharm 上安装lcoust。

一、在pycharm的终端安装:

pip3 install locust   # 安装locust

locust -V    # 查看locust安装的版本

二、locust脚本的demo

1. 直接在HttpUser中定义任务,将“登录”这个任务直接写在HttpUser类中

from locust import HttpUser, constant, task, TaskSet, between

class TestUser(HttpUser):
    host = "https://test.powerview.teplore.com/"   # 设置网站的根地址
    wait_time = between(1, 3)   # 每次请求的停顿时间(思考时间)

    # 直接在HttpUser中定义任务
    @task
    def login(self):
        self.client.get(url='/login', data=data, name='登录')  # 登录接口是get请求

2. 另外一种是写在任务集TaskSet,或SequentialTaskSet中。注意:TaskSet里的任务是并发执行,SequentialTaskSet里的任务是按顺序执行。

import json

from locust import HttpUser, constant, task, TaskSet, SequentialTaskSet, between

# 单独写在任务集taskset中, 多个任务时是并发执行,没有先后顺序
class TestTasks(TaskSet):
    @task
    def login(self):
        self.client.get(url='/login', name='登录')

    @task
    def task2(self):
        print("这是第二个任务!")

# 单独写在任务集SequentialTaskSet中, 多个任务是顺序执行,并且可以设置task重复执行的次数
class TestSeqTasks(SequentialTaskSet):
    @task(1)   # 执行一次
    def login(self):
        data = {'name':'test', 'password':'test'}

        with self.client.get(url='/login', data=data, name='登录') as response:
            print(response.text)
            # 获取登录接口返回的token值
            res = json.loads(response.text)
            token = res.get('data').get('token')
            self.token = token

    @task(10)   # 执行10次
    def task2(self):
        print("这是第二个任务:需要用到登录返回的token值:{}".format(self.token))

class TestUser(HttpUser):
    host = "https://test.powerview.teplore.com/"   # 设置网站的根地址
    wait_time = between(1, 3)   # 每次请求的停顿时间(思考时间)
    tasks = [TestTasks, TestSeqTasks]

三、 在pycharm 的终端运行,进入到对应的目录下,执行启动语句

locust -f locust_demo.py

在浏览器中打开终端给出的网址: http://0.0.0.0:8089 。在页面设置用户并发数以及启动时间;

一个小的demo,就运行起来了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值