云计算百科
云计算领域专业知识百科平台

【性能测试】3_Locust _locust实现混合业务实现

文章目录

  • 一、执行混合任务的比重
  • 二、特殊方法

一、执行混合任务的比重

1、举例:混合业务场景。500用户并发访问

  • 首页:150
  • 搜索商品:200
  • 注册:20
  • 登录:80
  • 下单:50

2、语法:

在@task后添加( )写入需要设定的比重值即可。

from locust import TaskSet, HttpLocust, task
"""
locust比重:500用户并发送
– 首页:150
– 搜索商品:200
– 注册:20
– 登录:80
– 下单:50
"""

# 1.定义 任务集 和 任务
class TaskClass(TaskSet): # 要继承TaskSet类, TaskClass表示一个任务集
""""定义任务"""

# 访问首页
@task(150)
def index(self):
result = self.client.get("/?=index") # 此行代码相当于requests.Session().get()
print("响应结果:", result.text) # 打印结果

# 搜索
@task(200)
def search(self):
result = self.client.get("/?=search") # 此行代码相当于requests.Session().get()
print("响应结果:", result.text) # 打印结果

# 注册
@task(20)
def register(self):
result = self.client.get("/?=register") # 此行代码相当于requests.Session().get()
print("响应结果:", result.text) # 打印结果

# 登录
@task(80)
def login(self):
result = self.client.get("/?=login") # 此行代码相当于requests.Session().get()
print("响应结果:", result.text) # 打印结果

# 下单
@task(50)
def order(self):
result = self.client.get("/?=order") # 此行代码相当于requests.Session().get()
print("响应结果:", result.text) # 打印结果

# 2.#定义用户类
class User(HttpLocust):
# 绑定任务
task_set = TaskClass # task_set 属性名不能变; 注意:TaskClass 后,没有 ()

# 设置 用户间 最小延迟时间 – 单位 ms
min_wait = 1000

# 设置 用户间 最大延迟时间
max_wait = 3000

# 指定 主机地址
host = "https://www.baidu.com"

二、特殊方法

  • on_start: 前置方法(前置任务),在每个任务执行之前,被自动调用一次。似于setup
  • on_stop: 后置方法(后置任务), 在每个任务执行结束之后,自动被调用一次。类似于teardown

from locust import TaskSet, HttpLocust, task

# 1.定义 任务集 和 任务
class TaskClass(TaskSet): # TaskClass 表示任务集
# 不需要添加装饰器 @task
def on_start(self):
print("——任务开始了!")
# 不需要添加装饰器 @task
def on_stop(self):
print("======任务结束了!")

""""定义任务"""
# 访问首页-任务(会被自动调用)
@task
def index(self):
result = self.client.get("/") # 此行代码相当于requests.Session().get()
# print("响应结果:", result.text) # 打印结果
#

# 2.定义 用户类
class User(HttpLocust):
# 绑定任务
task_set = TaskClass # task_set 属性名不能变; 注意:TaskClass 后,没有 ()

# 设置 用户间 最小延迟时间 – 单位 ms
min_wait = 1000

# 设置 用户间 最大延迟时间
max_wait = 3000

# 指定 主机地址
host = "https://www.baidu.com"

在这里插入图片描述

赞(0)
未经允许不得转载:网硕互联帮助中心 » 【性能测试】3_Locust _locust实现混合业务实现
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!