使用@tag 任务 disabled/enabled 时空闲用户

Idle user when tasks are disabled/enabled with @tag

我有 2 个用户,每个用户都分配了一组特定的任务集。当我 运行 带有 --tag 选项的蝗虫只选择了 1 个任务集时,第二个用户将没有任何任务要 运行。它会引发错误 Exception: No tasks defined on AdminUser... 请参阅下面的示例代码:

@tag('AdminPage1')
class AdminPage1(SequentialTaskSet):
    @task
    def admin_task1(self):
        ...
    ...

@tag('UserPage1')
class UserPage1(SequentialTaskSet):
    @task
    def admin_task1(self):
        ...
    ...
    
class AdminUser(HttpUser):
    tasks = [AdminPage1]
  
class EndUser(HttpUser):
    tasks = [UserPage1]

$ locust --users 2 --tag UserPage1

还有其他方法可以使用标签功能吗?我需要的是能够选择在执行时执行哪些任务。我可以看到消除错误的一种方法是对所有任务集仅使用 1 个用户 class。

当 Locust 检测到 Locust User class 中没有定义任务 属性 时会抛出该错误,但在这种情况下,我认为这是因为 TaskSet 标签被指定的标签过滤了在命令行参数上,也没有检查用户和 TaskSet

没有可用于 运行 的标签

从我的 PoV 来看,这是一个错误,最好在 https://github.com/locustio/locust/issues

报告