Django テスト フレームワークがこれを行うため、何を求めているのかわかりません。
フォームを持つ Django アプリをテストしますか?
- その場合、最初の GET を実行する必要があります
- 結果の POST が続きます
別のサイトにフォームを送信する Django アプリを作成 (およびテスト) しますか?
フォームを使用して Django アプリをテストする方法を次に示します。
class Test_HTML_Change_User( django.test.TestCase ):
fixtures = [ 'auth.json', 'someApp.json' ]
def test_chg_user_1( self ):
self.client.login( username='this', password='this' )
response= self.client.get( "/support/html/user/2/change/" )
self.assertEquals( 200, response.status_code )
self.assertTemplateUsed( response, "someApp/user.html")
def test_chg_user( self ):
self.client.login( username='this', password='this' )
# The truly fussy would redo the test_chg_user_1 test here
response= self.client.post(
"/support/html/user/2/change/",
{'web_services': 'P',
'username':'olduser',
'first_name':'asdf',
'last_name':'asdf',
'email':'asdf@asdf.com',
'password1':'passw0rd',
'password2':'passw0rd',} )
self.assertRedirects(response, "/support/html/user/2/" )
response= self.client.get( "/support/html/user/2/" )
self.assertContains( response, "<h2>Users: Details for", status_code=200 )
self.assertContains( response, "olduser" )
self.assertTemplateUsed( response, "someApp/user_detail.html")
注 - HTML を詳細に解析するわけではありません。適切なテンプレートと適切な応答文字列があれば、それは正しくなければなりません。