为了测试目的,有没有办法在 test_request_context
中传递无效的 JSON?
# test_example.py
from app import app
from example import get_param # the method I am interested in unit testing
import flask
bad_json = # some bad JSON
def test_get_param_aborts(app):
with app.test_request_context('/', data=flask.json.dumps(bad_json), content_type='application/json'):
# assert output based on a request with a bad json
最佳答案
json.dumps
永远不会生成无效的 JSON 文档(它会引发异常,从而破坏您的测试),但手动创建无效的 JSON 应该不会有任何问题:
# test_example.py
from app import app
from example import get_param
def test_get_param_aborts(app):
with app.test_request_context('/', data='abc', content_type='application/json'):
# assert output based on a request with a bad json
注意:'abc'
不是有效的 JSON,而 '"abc"'
则是有效的 JSON。
关于json - 使用 test_request_context (Flask) 中传递的无效 JSON 进行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58684718/