3-使用@task设置测试用例执行的权重
多个测试链路压测使测试任务按预想的比例执行
locust的@task装饰器提供了入参weight
,locust执行测试任务时,会根据weight
的比例进行分配用户数
from locust import task, HttpUser
class MyTestUser(HttpUser):
# test_01 : test_02 = 3 : 1
@task(3)
def weight_test_task_01(self):
# name参数可自定义该请求在测试报告中的名称
self.client.get(url='/', name='test_01')
@task(1)
def weight_test_task_02(self):
self.client.get(url='/', name='test_02')
运行看看测试结果
小结
- task测试任务是随机执行的(除非使用SequantialTaskSet来编写任务集,后面再介绍),可以通过设置其权重值,将并发用户数量按比例分配到对应的任务中执行测试
- 代码中
self.client.get
的name参数可以自定义测试报告中请求名称