当负载测试开始时,将为每个模拟用户创建一个User类的实例,他们将开始在自己的绿色线程中运行。当这些用户运行时,他们选择他们执行的任务,休眠一段时间,然后选择一个新任务。
这些任务时普通的python可调用文件——如果我们正在对拍卖网站进行负载测试——他们可执行诸如“加载起始页”,“搜索某些产品”,”出价“等操作。
@task 装饰器
为用户添加任务的最简单方法时使用task装饰器
@task装饰器的权重
@task采用可选的权重参数,可用于指定任务的执行比率。
在以下示例中,task2被选中的可能性时task1的2倍
- from locust import User,task,between
-
- class MyUser(User):
- wait_time = between(5,15)
-
- @task(3)
- def task1():
- pass
-
- @task(6)
- def task2():
- pass
task【任务属性】
定义用户任务的另一种方法时设置tasks属性
tasks属性可以是任务列表,也可是字典