Python 蝗虫多用户登录

Python 蝗虫多用户登录,python,random,locust,Python,Random,Locust,我想允许我的蝗虫应用程序使用多个用户帐户登录 我尝试了random.shuffle(),但仍然只有一个帐户 代码如下: from locust import HttpUser, task, TaskSet, between, exception, events import logging import random paths_in_dict = {"hard_path": "secure/izar.xhtml/",

我想允许我的蝗虫应用程序使用多个用户帐户登录

我尝试了random.shuffle(),但仍然只有一个帐户

代码如下:

from locust import HttpUser, task, TaskSet, between, exception, events
import logging
import random

paths_in_dict = {"hard_path": "secure/izar.xhtml/",
                 "standard_analysis_path": "analysis/STANDARD/",
                 "smart_analysis_path": "analysis/SMART/"}
passwd = 'radio'
logins = [
    'aaa', 'bbb', 'ccc', 'ddd', 'eee'
]
random.shuffle(logins)
login_pass = [(elem, passwd) for elem in logins]

if len(login_pass) > 0:
    user, passwd = login_pass.pop()
    default_headers = {'X-Username': user, 'X-Password': passwd}


class MyUser(HttpUser):
    wait_time = between(5, 9)
    host = "https://localhost:9003/"

    def on_start(self):
        self.client.verify = False
        self.login()

    def on_stop(self):
        pass

    def login(self):
        self.client.request(method="POST", url="login.xhtml", headers=default_headers,
                            name="---ON START---LOGIN")
        logging.info('Login with %s username and %s password', user, passwd)

# ----------------------------------MAIN LINKS/DROPDOWNS----------------------------------------------
    @task
    def dashboard(self):
        dashboard_get_response = self.client.get(paths_in_dict["hard_path"] + "dashboard", name="Dashboard")
        return dashboard_get_response

如何使它与登录列表中的所有元素一起工作?

您在错误的位置执行了login\u pass.pop()。如果在顶层/模块级执行,则只执行一次。将该代码移到on_start或login方法中。

我已经解决了这个问题


刚刚将
random.shuffle(logins)
更改为
random.choice(logins)
,并将其与…pop()一起移动到登录方法。

您的意思是-def login(self):self.client.request(method=“POST”,url=“login.xhtml”,headers=default_headers,name=“---ON START--login”)logging.info('Login with%s username and%s password',user,passwd)passwd='radio'登录=['aaa','bbb','ccc','ddd','eee']随机。shuffle(登录)登录\u pass=[(elem,passwd)用于登录元素]它仍然不起作用。不管我是将这些行放在登录方法中,还是放在启动上。不可能知道正在读什么:)也许你可以更新你的帖子?这最像是一个python问题,而不是蝗虫问题。。。