मान लीजिए मैं (http://flask-restful-cn.readthedocs.io/en/0.3.5/quickstart.html#a-minimal-api से) निम्नलिखित बोतल एपीआई परीक्षण करना चाहते हैं परीक्षण करने के लिए:कैसे इकाई एक फ्लास्क RESTful API
import flask
import flask_restful
app = flask.Flask(__name__)
api = flask_restful.Api(app)
class HelloWorld(flask_restful.Resource):
def get(self):
return {'hello': 'world'}
api.add_resource(HelloWorld, '/')
if __name__ == "__main__":
app.run(debug=True)
समान निर्देशिका मैं चलाने में flaskapi.py
के रूप में इस बचाया और इसे चलाने के बाद, स्क्रिप्ट test_flaskapi.py
:
import unittest
import flaskapi
import requests
class TestFlaskApiUsingRequests(unittest.TestCase):
def test_hello_world(self):
response = requests.get('http://localhost:5000')
self.assertEqual(response.json(), {'hello': 'world'})
class TestFlaskApi(unittest.TestCase):
def setUp(self):
self.app = flaskapi.app.test_client()
def test_hello_world(self):
response = self.app.get('/')
if __name__ == "__main__":
unittest.main()
दोनों परीक्षण पास है, लेकिन दूसरे टेस्ट वर्ग (TestFlaskApi
में परिभाषित) के लिए मैं अभी तक पता लगा नहीं किया है पर जोर करने के लिए कैसे है कि JSON प्रतिक्रिया की उम्मीद के रूप में है (यानी, {'hello': 'world'}
)। ऐसा इसलिए है क्योंकि यह flask.wrappers.Response
का एक उदाहरण है (जो शायद अनिवार्य रूप से वर्कज़ुग रिस्पांस ऑब्जेक्ट (सीएफ http://werkzeug.pocoo.org/docs/0.11/wrappers/) है), और requests
'Response ऑब्जेक्ट के लिए json()
विधि के बराबर नहीं मिला है।
मैं दूसरे response
की JSON सामग्री पर दावा कैसे कर सकता हूं?
"स्थिति: फ्लास्क एपीआई वर्तमान में सक्रिय विकास में नहीं है।" https://github.com/flask-api/flask-api – TheGrimmScientist