pytest-django 客户端用户登录



我想知道是否有人可以帮助弄清楚为什么我的用户似乎没有登录。

import pytest
from mixer.backend.django import mixer

@pytest.fixture
def strong_pass():
return "Str#410-P@55"

@pytest.fixture
def create_test_user(db, strong_pass):
return mixer.blend('auth.User', username="JohnnyTest", password=strong_pass)

@pytest.fixture
def logged_in_client(client, create_test_user, strong_pass):
test_user = create_test_user
if test_user is not None:
client.login(username=test_user.username, password=strong_pass)
return client, test_user

它使用户很好,并且可以在其他测试中引用他,但客户端似乎不喜欢登录。

我试图将client.login中的值替换为确切的字符串,但它仍然不起作用。我也试过force_login但仍然不起作用

任何帮助将不胜感激

发现主要问题是由于混音器而发生的。

一旦我按照普通文档登录pytest-django文档,我就可以工作了。

https://pytest-django.readthedocs.io/en/latest/helpers.html#client-django-test-client

最新更新