蝗虫测试中用户行为的初始化

2024-06-28 17:54:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我的负载测试中有下一个用户行为类,使用Locust框架:

class UserBehavior(TaskSequence):
    def setup(self):
        '''Calls once on run session'''
        self.settings = load_cfg("config")
        print self, id(self)

    @seq_task(1)
    def something(self):
        self.client.get("/something")

问题是在测试方法something()中没有任何self.settings属性。我用setup()something()方法打印了selfid(self),它们是不同的。我需要创建一些属性(一次)并在我的测试方法中使用它们,但是似乎蝗虫重新创建了对象或其他东西,我不知道它做了什么以及为什么。那么,在UserBehavior实例中创建此类属性的规范方法是什么?我试过了:

def __init__(self, obj):
    self.settings = load_cfg("config")
    TaskSequence.__init__(self, obj)

这似乎是工作,但它是一个正确的方式做它在蝗虫


Tags: 方法selfidconfig属性settingsinitdef