class UserBehavior1(TaskSet):
@task
def task1:...
@task
def task2:...
class UserBehavior2(TaskSet):
@task
def task1:...
@task
def task2:...
class User(HttpUser):
wait_time = between(n,m)
host = 'https://example.com'
tasks = [UserBehavior1, UserBehavior2]有没有办法在蝗虫中为TaskSet指定一个比率?我知道@task装饰器接受了一个额外的参数来增加权重,但我不确定它在这种情况下是否可以工作。我希望每个TaskSet中的任务具有相同的权重,但我希望以不同的比率(比方说2:5)执行TaskSet。
发布于 2021-10-01 16:56:08
还可以使用与单个任务相同的@task装饰器对TaskSets进行加权,如TaskSet docs中所述,您可以用这种方式对它们进行加权。或者,文档还解释说,可以将tasks attribute定义为字典而不是列表,您可以为它们赋予权重,即使对于TaskSets也是如此。应用于您的示例代码,它将如下所示:
class User(HttpUser):
wait_time = between(n,m)
host = 'https://example.com'
tasks = {UserBehavior1: 2, UserBehavior2: 5}这将使您的TaskSets在每次产生用户时具有2:5的权重。然后,TaskSets中的各个任务都有自己的权重。
https://stackoverflow.com/questions/69400088
复制相似问题