Si j'essaie d'exécuter des tests à l'aide de pytest
avec Python 3.10, j'ai obtenu l'erreur suivante:
TypeError: required field "lineno" missing from alias
Google dit que c'est un problème connu, mais je n'ai trouvé aucun moyen pour le résoudre.
Les tests commencent bien si je les lance avec 3,9
2 Réponses :
Ce problème semble être résolu dans pytest version 6.2.5 .
Veuillez voir: Correction de la réécriture de l'affirmation sur Python 3.10
J'utilise Pytest version 7.1.2 et j'ai toujours le même problème, comment puis-je résoudre ce problème localement?
@John J'ai pu résoudre ce problème en mettant à niveau PyTest vers la version 7.1.2
.
Des trucs étranges qui se passent mec
Cela a résolu le problème pour moi. J'ai exécuté poésie ajouter --dev pytest @ dernier
as poésie new
contrainte pytest
à ^ 5.2
par défaut.
Mettez à jour le pytest
pYPI:
pip install -U pytest
J'ai toujours le même problème, est-ce une sortie normale après cet appel? - $ pip install -u pytest défautant à l'installation des utilisateurs parce que les packages de sites normaux ne sont pas inscrits, d'autres sont que l'exigence est déjà satisfaite
@John Je suppose que votre problème est lié au pip
lui-même. Essayez de mettre à jour le pip
via python -m pip install -u pip
ou installez le pytest
via python -m pip install -u pytest
Je pense que c'est la bonne réponse (que la solution consiste à mettre à jour PyTest) mais la commande à exécuter peut être améliorée. Puisque nous utilisons de la poésie pour gérer les dépendances de notre projet, y compris ses dépendances de développement, nous devons exécuter la poésie supprime - dev pytest && poés au projet lors de sa création, puis ajoutez la dernière version. Pour moi, cela signifiait passer de
5.4.3
à 7.1.2
. Ce processus a également supprimé les anciennes dépendances transitives de PYTEST, puis a ajouté les nouvelles dépendances transitives pour la nouvelle version.
Lorsque j'ai fait les étapes ci-dessus, puis j'ai exécuté la poésie exécute pytest
, cela a fonctionné pour moi. Comme il s'agissait d'un tout nouveau projet sans code source encore, et juste le test initial, créé automatiquement, ma sortie a déclaré: 1 a passé dans 0.01s