テストコードは次のとおりです:
しかしブラウザでURLを閲覧すると普通に200が返ってくるのですが何か設定が間違っているのでしょうか?
エラーは 404 のようです。これは、/data/datamsg/ にアクセスするときに URL が見つからなかったことを意味します。これは、/data/datamsg の構成に応じて、その後の / を削除してください。 http://localhost などを追加してください
ブラウザで URL を閲覧できるとのことですがブラウザで URL にアクセスすると、ブラウザは GET リクエストを送信しますが、テストでは POST リクエストを使用しました。
つまり、ブラウザが正常であることとテストに合格するかどうかの間に何の関係もないとしても
404 が表示されます。1L が言ったとおり、URL (ホスト部分) を完成させる必要があります。ブラウザ経由でリクエストする場合、ページ内の URL は / で始まり、ブラウザによってホストが自動的に追加されるため、単体テストの場合は完全な URL を自分で記述する必要があります。 302 が表示されたら、次のことを確認する必要があります: 302 はどの URL にジャンプしますか?どこに制限/検証条件を追加しましたか?たとえば、「login_required」を追加すると、システムがログインがないことを確認すると、自動的に 302 でログイン ページにジャンプしますか? 別の可能性もあります。これは 403 であるはずです。POST リクエストが偽造されており、Django にはデフォルトで CSRF 検証が備わっています。
エラーは 404 のようです。これは、/data/datamsg/ にアクセスするときに URL が見つからなかったことを意味します。これは、/data/datamsg の構成に応じて、その後の / を削除してください。 http://localhost などを追加してください
ブラウザで URL を閲覧できるとのことですが
ブラウザで URL にアクセスすると、ブラウザは GET リクエスト
を送信しますが、テストでは POST リクエストを使用しました。
つまり、ブラウザが正常であることとテストに合格するかどうかの間に何の関係もないとしても
404 が表示されます。1L が言ったとおり、URL (ホスト部分) を完成させる必要があります。ブラウザ経由でリクエストする場合、ページ内の URL は / で始まり、ブラウザによってホストが自動的に追加されるため、単体テストの場合は完全な URL を自分で記述する必要があります。
302 が表示されたら、次のことを確認する必要があります: 302 はどの URL にジャンプしますか?どこに制限/検証条件を追加しましたか?たとえば、「login_required」を追加すると、システムがログインがないことを確認すると、自動的に 302 でログイン ページにジャンプしますか?
別の可能性もあります。これは 403 であるはずです。POST リクエストが偽造されており、Django にはデフォルトで CSRF 検証が備わっています。