首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在蝗虫中如何给不同的用户分配不同的行为

在蝗虫中如何给不同的用户分配不同的行为
EN

Stack Overflow用户
提问于 2020-07-30 05:15:02
回答 2查看 757关注 0票数 2

我想模拟两个用户同时运行不同的任务。如何使用locust性能测试框架做到这一点?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-07-30 17:41:19

只需定义多个用户类:

代码语言:javascript
运行
复制
class User1(HttpUser):
    @task
    def task1(self):
    ...

class User2(HttpUser):
    @task
    def task2(self):
    ...

如果您希望用户类型之间的分布为50-50,则还需要使用偶数个用户启动Locust。

票数 3
EN

Stack Overflow用户

发布于 2020-07-30 10:40:07

您的蝗虫任务是随机的,根据它们的权重。因此,每个用户将以不同的顺序执行任务。

如果您希望用户执行不同的任务,您可以根据用户角色或其他逻辑来决定调用哪些函数。

代码语言:javascript
运行
复制
class Main(TaskSet):
    def setup(self):
        # Login
        # Get user role and decide which function to call
        if user.role == 'admin':
            self.admin_actions()
        else:
            self.other_user_actions()

        def admin_actions():
            # Do some admin stuff

        def other_user_actions():
            # Do some other stuff
    @task
    def random_task(self):
        # Some random task that everyone does

class MyLocust(HttpLocust):
    task_set = Main
    wait_time = between(5, 10)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63162526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档