我正在使用allauth,并且已经开始进行一些功能测试。我已经测试了登录功能,现在想测试其他功能,但是我无法找到一种方法通过预先认证的用户开始功能测试。我尝试使用以下代码,但无法设法使用户自动登录。
def create_pre_authenticated_session(self, username, email):
session_key = create_pre_authenticated_session(username, email)
# to set a cookie we need to first visit the domain
self.browser.get(self.live_server_url + "/")
self.browser.add_cookie(dict(
name=settings.SESSION_COOKIE_NAME,
value=session_key,
path='/',
))
def create_pre_authenticated_session(username, email):
user = User.objects.create(username=username, email=email)
session = SessionStore()
session[SESSION_KEY] = user.pk
session[BACKEND_SESSION_KEY] = settings.AUTHENTICATION_BACKENDS[0]
session.save()
return session.session_key
谢谢。
您可以使用force_login方法登录用户