[解決済み] Django の Forms のテストはどのように書くべきですか?
2022-05-16 14:51:18
質問
テストを書いているときに、Django のビューへのリクエストをシミュレートしたいです。これは主にフォームをテストするためです。ここに簡単なテストリクエストのスニペットがあります。
from django.tests import TestCase
class MyTests(TestCase):
def test_forms(self):
response = self.client.post("/my/form/", {'something':'something'})
self.assertEqual(response.status_code, 200) # we get our page back with an error
このページはフォームエラーがあろうとなかろうと常に200のレスポンスを返します。どうすれば、フォームが失敗し、特定のフィールド(
soemthing
)にエラーがあったことを確認するにはどうしたらよいでしょうか?
どのように解決しますか?
フォームをテストしたいだけなら、フォームをテストするだけで、フォームがレンダリングされるビューはテストしないほうがいいと思います。アイデアを得るための例。
from django.test import TestCase
from myapp.forms import MyForm
class MyTests(TestCase):
def test_forms(self):
form_data = {'something': 'something'}
form = MyForm(data=form_data)
self.assertTrue(form.is_valid())
... # other tests relating forms, for example checking the form data
関連
-
[解決済み】Djangoのクエリセットフィルタリングでnot equalを行うにはどうすればよいですか?
-
[解決済み] JSONデータをファイルに書き込むにはどうしたらいいですか?
-
[解決済み] NaN値をチェックするにはどうすればよいですか?
-
[解決済み] Djangoのバージョンを確認する方法
-
[解決済み] googletransがエラー 'NoneType' オブジェクトに 'group' 属性がない、と言って動かなくなった。
-
[解決済み] Spyderを仮想環境で動作させるには?
-
[解決済み] 巨大なテキストファイルから特定の行にジャンプするには?
-
[解決済み] タプルの代わりにリストで出力するZip
-
[解決済み] re.sub置換パターンにおけるキャプチャグループの後方参照への対応
-
[解決済み] リストスライスの割り当てはどのように行われるのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 2つの線分が交差しているかどうかを確認するにはどうすればよいですか?
-
[解決済み] 2つの弦をインターリーブさせる最もピトニックな方法
-
[解決済み] Matplotlibのレジェンドが動作しない
-
[解決済み] 条件を満たした場合にNumpyの要素を置き換える
-
[解決済み] 標準のjsonモジュールでfloatをフォーマットする
-
[解決済み] Seleniumから要素の属性を取得するには?
-
[解決済み] ne__は__eq__の否定として実装されるべきか?
-
[解決済み] sqlalchemy の declarative ORM 拡張機能で複数カラムのインデックスを使用する場合
-
[解決済み] 2ウェイ/リバースマップ[重複]について
-
[解決済み] リストの各要素に数値を乗じるには?