Я створив користувачів для своїх модульних тестів двома способами:
1) Створіть прилад для "auth.user", який виглядає приблизно так:
{
"pk": 1,
"model": "auth.user",
"fields": {
"username": "homer",
"is_active": 1,
"password":
"sha1$72cd3$4935449e2cd7efb8b3723fb9958fe3bb100a30f2",
...
}
}
Я залишив, здавалося б, неважливі частини.
2) Використовуйте 'create_user' у функції setUp (хоча я волів би зберегти все у своєму класі світильників):
def setUp(self):
User.objects.create_user('homer', 'ho...@simpson.net', 'simpson')
Зверніть увагу, що в обох випадках паролем є Simpson.
Я переконався, що ця інформація раз за разом правильно завантажується в тестову базу даних. Я можу захопити об'єкт User за допомогою User.objects.get. Я можу перевірити правильність пароля, використовуючи "check_password". Користувач активний.
Проте незмінно self.client.login (ім'я користувача = 'homer', password = 'simpson') ПОМИЛЯЄ. Мене бентежить, чому. Здається, я прочитав кожну окрему дискусію, яка стосується цього. Хто-небудь може допомогти?
Код входу в моєму модульному тесті виглядає так:
login = self.client.login(username='homer', password='simpson')
self.assertTrue(login)
Дякую.