私は次のコードを持っています。これはPOST要求を受け入れて処理します。フラスコのPOSTユニットテストを処理する最良の方法
index.py
@app.route('/route', methods=['POST'])
def route_post():
try:
data = request.get_data()
j = json.loads(data)
except Exception as e:
...
は基本的に、私は()ので、私は値を変更することができrequest.get_dataにアクセスしたいです。私は次のようにテストを呼び出しています。これは簡単ではありません。
route_test.py:
def test_route():
assert(("Bad Request\r\n", 400) == route_post())
しかし、私はrequest.get_dataの値を設定することはできません()。これどうやってするの?
ユニットテストでrequest.get_data()にアクセスしますか? – reptilicus
テストクライアントで必要なデータを投稿しますか?あなたはどんな問題を抱えていますか? – davidism
POSTデータ(本体)を設定する簡単な方法はありません。これはrequest.get_data()によって取得されます。これは、mocks/patchを使用してそのメソッドにパッチを当てて値を設定することを示唆しています。 –