如何使顺序Http从蝗虫中获取调用

时间:2013-09-19 07:15:34

标签: locust

在Locust负载测试中定义环境任务并随机调用。 但是,如果我想在特定任务之后执行任务。那怎么办呢? 例如:在每次“X”网址调用后,我希望根据“X”的响应调用“Y”网址。

3 个答案:

答案 0 :(得分:4)

根据我的经验,我发现最好将Locust任务建模为完全独立于彼此,并且每个任务都涵盖用户场景或行为(例如,客户登录,搜索书籍并将其添加到购物车中) )。这主要是因为这是对用户行为的更接近的模拟。

您是否尝试过对同一任务发出多个请求,并且/或者是否基于您的回复?卡尔·比斯特罗姆的演讲This slide遵循上述方法。

答案 1 :(得分:3)

您只需要进行顺序获取或发布。定义任务时,请执行以下操作:

@task(10)
def my_task(l):
    l.client.get('/X')
    l.client.get('/Y')

答案 2 :(得分:1)

有一个选项可以创建从TaskSequence类继承的自定义任务集。

然后,您应该向所有任务集方法添加seq_task装饰器,以按顺序运行其任务。

https://docs.locust.io/en/latest/writing-a-locustfile.html#tasksequence-class