私はちょうどDjangoプロジェクトでモックを使い始めました。私はサブスクリプション要求が本物であることを確認するためにリモートAPIに要求するビューの一部を模倣しようとしています。これを行うにはどのように私は今、何をしたいかPythonモック、djangoとリクエスト
class SubscriptionView(View):
def post(self, request, **kwargs):
remote_url = request.POST.get('remote_url')
if remote_url:
response = requests.get(remote_url, params={'verify': 'hello'})
if response.status_code != 200:
return HttpResponse('Verification of request failed')
は応答を変更するにはrequests.get
コールをモックとモックを使用することですが、私はうまくいかないことができます:私は似ている何
パッチデコレータ。私はあなたが次のようなことをしたと思っていました:
@patch(requests.get)
def test_response_verify(self):
# make a call to the view using self.app.post (WebTest),
# requests.get makes a suitable fake response from the mock object
どうすればいいですか?
モックを使用していますか? django.test.client.RequestFactoryもあります - https://docs.djangoproject.com/en/1.5/topics/testing/advanced/#module-django.test.client – David
将来の視聴者のために、質問者は偽装したかった外部API呼び出しを呼び出します。ビュー自体の呼び出しではありません。モックはそのような状況では非常に賢明なようです。 – aychedee
@aychedeeによると、これは確かに私がこの質問で目指していたものです。 – jvc26