と機能のためのDjangoのユニットテストを書く:私は</strong>キーはJSONデータである<strong>テレビ放送は、(私のviews.pyで)この機能で返されるかどうかを確認するためにユニットテストを書いているのHttpResponse
def my_function(request, date1='', date2='', date3='', date4=''):
::some other functions...::
return HttpResponse(data, content_type='application/json')
見ての通り、私は確認したいJSONをフロントエンドで受信し、このJSONデータは、同様に構成されている変数データ
としてはHttpResponseを経由して送信されます。
{"records": [ {"program": "WWE ENTERTAINMENT", "telecasts": 201,...}, {..} ]
これは、私はユニットテストを書くことをしようとしている方法ですが、私はそれを実行すると、私はエラーを取得しています:
def my_test(self):
"""Data returned has telecasts key"""
request = self.client.get(
'/apps/myapp/2014-08-01/2015-06-10/2016-01-13/2016-03-23/',
{dictionary of optional parameters}
)
force_authenticate(request, user=self.user)
response = my_function(
request,
'2014-08-01',
'2015-06-10',
'2016-01-13',
'2016-03-23'
)
telecasts_check = response['records'][0]['telecasts']
self.assertRaises(KeyError, lambda: telecasts_check)
を。リクエストを作成していないので、テストクライアント経由で実際のビュー*を呼び出しています。だから、もしあなたがそれを使っているなら、あなたのように直接関数を呼び出すことによって '応答'を得る必要はありません。 –