CFMTech / pytest-monitor

Pytest plugin for analyzing resource usage during test sessions
MIT License
173 stars 16 forks source link

Missing metrics for failed tests #65

Open husmen opened 1 year ago

husmen commented 1 year ago

Describe the bug Monitoring results for failed tests are missing from .pymon.

To Reproduce

  1. Create some tests:
    
    # test.py

def test_1(): assert 1 == 1

def test_2(): assert 1 == 2


2. Run pytest: `pytest test.py`
3. `.pymon` has only 1 entry for `test_1` in `TEST_METRICS` table.

**Expected behavior**
Unless I missed something in the documentation, I expect metrics to be reported for failed tests as well.

**Desktop (please complete the following information):**
 - OS: Linux (Ubuntu 20.04), Windows 10
 - Python version: 3.8, 3.11
 - Pytest version: 6.x, 7.x
 - pytest-monitor version: 1.6.5
michelfurrer commented 1 year ago

Same issue here. In my current setup it would be especially intressting to see metrics in tests that fail.

js-dieu commented 1 year ago

Hello

Thanks for submitting. Failed tests are filtered out on purpose (primarily designed that way to get consistent metrics). However, the subject has been previously raised in #27 and at that time decision has been taken to postpone it.

I think it may be time for that improvement. Now the question game:

Diego-Hernandez-Moodys commented 1 year ago

@js-dieu It's useful because I expect to use this to test for memory leaks. To answer your questions

Veritogen commented 9 months ago

I'd also like to see the results of failed tests in the database by default.

@js-dieu If you can point me to where changes are needed to accomplish that and if its not too much of implementation effort, my employer allows me to implement this kind of stuff during my work time.

js-dieu commented 9 months ago

Hi @Veritogen / @Diego-Hernandez-Moodys

Sorry for the long delay. I have reworked the plugin a bit to be able to support this feature without having everything break. I expect to deliver it by end of week. I need to solve a bias in memory snapshot first but I don't expect it to be very long.

Veritogen commented 9 months ago

@js-dieu awesome, thats great to hear. Let me know if there's something you could need help with. I also made a prove of concept for a DBHandler that can handle postgres for persisting the test results. Should I raise a PR for that?

lhpt2 commented 4 months ago

Is there any progress on that? The feature would be quite handy.

lhpt2 commented 4 months ago

As the discussion froze and @js-dieu seems to be busy, I decided to do my own changes locally. I'm gonna summarize my insights below so in case this feature will be implemented in the future.

Of course I would be open to make a PR if you want, but I'm not sure if I did it the way it was intended by you.

lhpt2 commented 2 months ago

For anyone interested in using this feature: As long as it hasn't been merged upstream yet, there is a soft fork available here: https://github.com/einhundert/pytest-monitor/ (We are only providing support for features and changes made by us, don't request anything not related to these)