在Locust子类中创建用户凭据,然后传递给TaskSet

时间:2018-09-11 14:44:40

标签: locust

我想在蝗虫运行时提供用户的凭据,然后将这些凭据传递给任务。

这个想法是在蝗虫产生每个用户(客户端)时为其提供一个用户,然后在蝗虫停止时为用户取消配置。

可以在后端系统中配置/取消配置用户,从文件或数据库表中读取用户等。

有没有办法做到这一点?

1 个答案:

答案 0 :(得分:0)

我找到了一种方法。

  1. 在TaskSet子类中,实现on_start和on_stop。将实例变量(self.whatever)设置为为“用户”设置的值(例如,用户名和密码)。

  2. 使用装饰器方法定义任务。这使方法成为TaskSet子类的一部分,因此您可以使用提供的值引用实例变量。

例如,

class MyTaskSet(TaskSet):
    def on_start(self):
        self.username = <however you want to get it>

    @task(1)
    def MyTask(self):
        <wherever you need it> = self.username