Cette erreur s'est produite lors du test automatisé d'un projet python sur le serveur CI à l'aide de pytest
. J'utilise pytest==4.0.2
. Cette erreur ne fait que commencer à se produire, les pipelines précédents semblent bien fonctionner.
L'erreur complète:
File "/usr/local/lib/python3.7/site-packages/_pytest/tmpdir.py", line 35, in TempPathFactory
lambda p: Path(os.path.abspath(six.text_type(p)))
TypeError: attrib() got an unexpected keyword argument 'convert'
Réponses:
pytest
semble avoir le packageattrs
comme une dépendance.attrs==19.2.0
a été libéré autour2019-10-01 17:00 UTC
. Cela semble provoquer le problème ci-dessus.Revenir à
attrs==19.1.0
résout le problème. Procédez simplement comme suit:REMARQUE : je m'attends à ce que le problème soit résolu par
attrs
oupytest
bientôt en publiant une nouvelle version. Cette correction ne doit donc être que temporaire.MISE À JOUR : Déplacer le commentaire dans la réponse. Cette erreur ne se produit pas sur les versions les plus récentes de pytest ie
pytest==5.2.0
la source
pytest
à jour vers une version plus récente.=
signe manquant dans l'épinglage de la version. Cela devrait êtrepip install --upgrade attrs==19.1.0
pytest corrigé à l'aide du mot-clé obsolète
convert
à 3.6.3 ( https://docs.pytest.org/en/latest/changelog.html#pytest-3-6-3-2018-07-04 ). À la version 4.0.1, pytest a fusionné le code à l'aide deconvert
( https://github.com/pytest-dev/pytest/pull/4427 ). Ce code a été corrigé sur 5.2.0 ( https://github.com/pytest-dev/pytest/pull/4795 ).la source
pytest version 5.3.1 avec attrs La version 19.3.0 fonctionne très bien pour moi. [Pour vérifier la version pytest et la version attrs, lancez la commande suivante:]
J'ai résolu le même problème en mettant à niveau le module pytest via la commande pip:
la source