运行 locustfile 时未找到 Locust class

No Locust class found when running locustfile

我刚刚开始使用 Locust。这是我的 locustfile.py

from locust import HttpLocust, TaskSet, between, TaskSequence

def select_user(l):
    pass

def get_company(l, company):

    target = "https://URL"
    print(f"Company: {company} URL: {target}")

    response = l.client.get(target, {"name": company })

    return response

class UserBehavior(TaskSequence):

    def on_start(self):
        response = get_company(self, "LoadTest")
        print(response)

    # @seq_task(1)
    # def first_task(self):
    #     pass

class User(HttpLocust):
    tasks = [UserBehavior]
    wait_time = between(5, 60)

当我 运行 locust 在与 locustfile.py 相同的目录中时,我得到错误:

% locust
[2020-05-15 20:43:08,131] host/ERROR/locust.main: No Locust class found!

我不清楚我哪里做错了。我正在使用 TaskSequence,因为一旦我开始工作,我将添加必须按特定顺序执行的任务。

此外,如果我取消对 @seq_task(1) 装饰器的注释,我会收到一条错误消息,指出 seq_task 未定义。

这是在

% locust --version
locust 0.14.4

错误消息实际上应该是 "No Locust class with tasks found!"。

只需取消注释您的任务即可正确找到它。

对于你的其他问题,你只需要导入它:from locust import seq_task

查找 Locust 类 到 运行 在 Locust 1.0 中做的有点不同,其中 Locust 类(现在实际上称为 User)被显式标记为抽象(1.0 将发布很快,甚至可能是本周,所以可能没有必要澄清它:)

seq_task 也重做了