有2個框架 - Django和Flask。 Django使用REST運行項目,而Flask運行Orchestration Layer。嘲笑請求中的字段
現在有一個測試,這應該檢查的CRUD方法之一:
@mock.patch('requests.post')
def test_create(self, request_mock,):
request_mock.return_value = self.response_generator.create()
response = self.client.post(url_for('foo.list', account='bar'),
content_type='application/json',
data=json.dumps({
"name": "Foo",
"type": "baz"
}))
self.assertEqual(response.status_code, 201)
name
和type
均爲必填字段。 name
只是一個字符串。但type
是類型的URL(在REST中),所以當baz
被傳遞時,它使用魔法連接到REST並檢索數據。
問題是,當運行測試與REST的Django脫機時,而測試仍然嘗試連接到它導致超時錯誤。
with ConnectionError: HTTPConnectionPool(host='10.10.10.10', port=8000): Max retries exceeded with url: /rest/accounts/bar/baz/ (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused',))
問題:現在一個人如何模擬只是type
領域,所以它不叫脫機服務器?