如何终止蝗虫负载测试中的特定线程

how can I terminate a specific thread in locust load-test

我是 Locust 的新手,我正在测试不同用户的网站。 如何结束用户任务?

不确定结束 任务是什么意思,您使用 task 装饰器指定您的任务,仅此而已:

class MyBehavior(TaskSet):

    def __init__(self, parent):
        super(MyBehavior, self).__init__(parent)
        # E.g. set headers here
        self.headers = {}

    @task(1)
    def mytask(self):
        # Task starts
        self.client.get("/...", headers=self.headers)
        # Task ends

我不确定你到底在找什么,但你可以通过 raise StopLocust()

来停止 user/locust

如果您使用的是网页版的locust,那么要停止locust,您需要手动点击停止按钮。或者您可以致电 on_stop 所需数量的用户后蝗虫中的方法。

如果你使用的是非web选项,那么你可以在locust命令中使用timeout选项:

locust -f --no-web -c 1000 -r 100 --run-time 1h30m

蝗虫会在指定的时间后停止