Djangoのself.client.login(…)は単体テストでは機能しません
ユニットテスト用のユーザーを2つの方法で作成しました。 1)「auth.user」のフィクスチャを次のように作成します。 { "pk": 1, "model": "auth.user", "fields": { "username": "homer", "is_active": 1, "password": "sha1$72cd3$4935449e2cd7efb8b3723fb9958fe3bb100a30f2", ... } } 一見重要でない部分は省略しました。 2)setUp関数で「create_user」を使用します(ただし、すべてをフィクスチャクラスに保持したいのですが): def setUp(self): User.objects.create_user('homer', 'ho...@simpson.net', 'simpson') どちらの場合も、パスワードはシンプソンであることに注意してください。 この情報がテストデータベースに何度も正しく読み込まれていることを確認しました。User.objects.getを使用してUserオブジェクトを取得できます。「check_password」を使用して、パスワードが正しいことを確認できます。ユーザーはアクティブです。 それでも、常に、self.client.login(username = 'homer'、password = 'simpson')は失敗します。理由がわからない。私はこれに関連するすべてのインターネットの議論を読んだと思います。誰か助けてもらえますか? 私の単体テストのログインコードは次のようになります。 login = self.client.login(username='homer', password='simpson') self.assertTrue(login) ありがとう。