在 Locust 负载测试中,环境任务被定义并被随机调用。但是,如果我想在特定任务之后执行任务。那我该怎么做呢?例如:在每次“X”网址调用后,我希望根据“X”的响应调用“Y”网址。
问问题
7468 次
3 回答
5
根据我的经验,我发现最好将 Locust 任务建模为彼此完全独立,并且每个任务都涵盖用户场景或行为(例如,客户登录、搜索书籍并将其添加到购物车)。这主要是因为这是对用户行为的更接近的模拟。
您是否尝试过在同一个任务上发出多个请求,以及是否/其他基于您的响应?Carl Byström 演讲中的这张幻灯片遵循了上述方法。
于 2013-10-25T22:40:35.510 回答
3
您只需要进行顺序获取或发布。当您定义任务时,请执行以下操作:
@task(10)
def my_task(l):
l.client.get('/X')
l.client.get('/Y')
于 2015-07-28T15:08:11.110 回答
2
有一个选项可以创建从TaskSequence
类继承的自定义任务集。
然后,您应该将seq_task
装饰器添加到所有任务集方法以按顺序运行其任务。
https://docs.locust.io/en/latest/writing-a-locustfile.html#tasksequence-class
于 2019-01-21T10:17:29.520 回答