Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

pytest-html version 3.1.1 bug- Internal error in pytest_runtest_makereport causes test to show as Passed in HTML report

Ouverte
#1,027 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
55/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Calme
Stack technique
html, python
Domaine
testing-qa

Piste de recherche

Commencez par reproduire le problème avec pytest-html 3.1.1, pytest, --html=report.html et une exception ou une interruption clavier dans le hook pytest_runtest_makereport. Suivez la manière dont le résultat du hook atteint le rapport HTML et assurez-vous que le test concerné n’est pas affiché comme Passed ; le choix prévu entre ERROR et FAILED doit encore être déterminé.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Description

When an internal error occurs inside the pytest_runtest_makereport hook,
pytest-html 3.1.1 does not receive a valid report outcome and silently
defaults to displaying the test as Passed in the HTML report.

Environment

  • pytest-html: 3.1.1
  • pytest: 7.1.2 or 9.0.3
  • Python: 3.13.7
  • OS: Windows

Expected Behavior

Test should be marked as ERROR in the HTML report.

Actual Behavior

Test is marked as Passed in the HTML report, giving a false green result.

Steps to Reproduce

  1. Trigger an exception inside pytest_runtest_makereport hook for eg raise RuntimeError("BOOM")
  2. Run pytest with --html=report.html
  3. Open the HTML report
  4. Observe the affected test shows as Passed

Additional Notes

pytest-html 4.2.0 handles this differently — the report is empty instead
of showing a false Passed — but neither behavior is correct.
the correct expected outcome is debatable:
ERROR — represents a framework/fixture level problem, not a test assertion failure. This is probably the most accurate.
FAILED — could argue this since something clearly went wrong.
At minimum — not Passed, since that's factually wrong.
-In case of keyboard interrupt too same issue

Langage dominant
Python
Étoiles
781
Forks
260
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de pytest-dev/pytest-html

Toutes les issues de pytest-dev/pytest-html

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.