allure-framework / allure-framework/allure-python

Test Case is missing in report when It failed because of pytest worker crash

Abierto
#825 1 comentario 0 reacciones 0 asignados Ver en GitHub
bug theme:pytest
Lenguaje dominante
Python
Estrellas
814
Forks
260
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

[//]: # (
. Note: for support questions, please use Stackoverflow or Gitter**.
. This repository's issues are reserved for feature requests and bug reports.
.
. In case of any problems with Allure Jenkins plugin** please use the following repository
. to create an issue: https://github.com/jenkinsci/allure-plugin/issues
.
. Make sure you have a clear name for your issue. The name should start with a capital
. letter and no dot is required in the end of the sentence. An example of good issue names:
.
. - The report is broken in IE11
. - Add an ability to disable default plugins
. - Support emoji in test descriptions
)

#### I'm submitting a ...
- [✓] bug report
- [ ] feature request
- [ ] support request => Please do not submit support request here, see note at the top of this template.

#### What is the current behavior?
In my Jenkins CI, we run Selenium automation using pytest with a Selenium Grid. Sometimes, the pytest worker crashes, causing the test case to fail with the status “FAILED”. When a test case fails due to a pytest worker crash, the failed test case is missing from the report

#### If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem

**Python Code to reproduce the Issue:**

import os

def test_simulate_crash():
if os.environ.get("PYTEST_XDIST_WORKER", None):
os._exit(1) # This will crash the worker process
assert True

def test_normal():
assert True

![pytest-worker-crash-console-logs](https://github.com/user-attachments/assets/c60ba7e8-d300-49d5-8516-e48919c08a36)
![pytest-worker-crash-allure-report](https://github.com/user-attachments/assets/731d4cc1-7ec2-4756-9c24-fef9e0020a0f)
![pytest-worker-crash-html-report](https://github.com/user-attachments/assets/60043857-4d42-4e96-a623-0e6b2ae483ef)

#### What is the expected behaviour?

The Failed Test Case ('test_simulate_crash' in the above code) should be shown in the allure report.

For reference, I attached the HTML report where we could see the Failed Test Cases.

#### What is the motivation / use case for changing the behavior?

#### Please tell us about your environment:

- Allure version: 2.29.0
- Test framework: Python 3.9.6
- Allure adaptor: allure-pytest-2.8.40

#### Other information
Related ticket for pytest worker crash
https://github.com/pytest-dev/pytest-xdist/issues/466

[//]: # (
. e.g. detailed explanation, stacktraces, related issues, suggestions
. how to fix, links for us to have more context, eg. Stackoverflow, Gitter etc
)

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Empieza con la reproducción en Python usando pytest y el caso test_simulate_crash; después, compara su salida con los informes adjuntos de Allure y HTML. Usa como contexto el issue relacionado sobre el worker-crash de pytest-xdist; se considera terminado cuando el caso de prueba fallido aparece en el informe de Allure después del worker-crash.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
python
Área
testing
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.