我想伪造用于单元测试的请求参数。如何在Flask中实现这一目标?
你可以使用以下内容:
self.app.post('/path-to-request', data=dict(var1='data1', var2='data2', ...)) self.app.get('/path-to-request', query_string=dict(arg1='data1', arg2='data2', ...))
Flask的当前开发版本还包括对测试JSON API的支持:
from flask import request, jsonify @app.route('/jsonapi') def auth(): json_data = request.get_json() attribute = json_data['attr'] return jsonify(resp=generate_response(attribute)) with app.test_client() as c: rv = c.post('/jsonapi', json={ 'attr': 'value', 'other': 'data' }) json_data = rv.get_json() assert generate_response(email, json_data['resp'])