allure-framework / allure-framework/allure-python

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

Open
#825 1 comment 0 reactions 0 assignees View on GitHub
bug theme:pytest
Dominant language
Python
Stars
814
Forks
260
PR merge metrics
No merged PRs in 30d

Description

[//]: # (
. 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
)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.