Mientras estoy probando mi API, recientemente comencé a recibir el siguiente error.
if request is None: > builder = EnvironBuilder(*args, **kwargs) E TypeError: __init__() got an unexpected keyword argument 'as_tuple' /usr/local/lib/python3.7/site-packages/werkzeug/test.py:1081: TypeError Como leí en la documentación de la versión más reciente de Werkzeug , se eliminó el parámetro as_tuple .
Parte de mi código de prueba es
from flask.testing import FlaskClient @pytest.fixture(name='test_client') def _test_client() -> FlaskClient: app = create_app() return app.test_client() class TestPeerscoutAPI: def test_should_have_access_for_status_page(self, test_client: FlaskClient): response = test_client.get('/api/status') assert _get_ok_json(response) == {"status": "OK"}A partir de la versión 2.1.0, werkzeug eliminó el argumento as_tuple de Client . Dado que Flask envuelve werkzeug y está utilizando una versión que aún pasa este argumento, fallará. Vea el cambio exacto en GitHub PR aquí .
Puede tomar uno de los dos caminos para resolver esto:
matraz de actualización
Fija tu versión werkzeug
# in requirements.txt werkzeug==2.0.3Agregando a la respuesta de Christian Di Lorenzo
# in requirements.txt Flask==2.1.1 # in requirements.txt werkzeug==2.0.3