pytest-recap Test Report

Summary

11 tests ran in 1.481359s
Session Metadata
Warnings (5)
Test Node Id When Category Filename Line Message
demo-tests/test_realistic_minimal.py::test_pass runtest UserWarning /Users/jwr003/coding/pytest-recap/demo-tests/test_realistic_minimal.py 12 fixture warning
demo-tests/test_realistic_minimal.py::test_pass runtest UserWarning /Users/jwr003/coding/pytest-recap/demo-tests/test_realistic_minimal.py 20 passing warning
demo-tests/test_realistic_minimal.py::test_fail runtest UserWarning /Users/jwr003/coding/pytest-recap/demo-tests/test_realistic_minimal.py 12 fixture warning
demo-tests/test_realistic_minimal.py::test_fail runtest UserWarning /Users/jwr003/coding/pytest-recap/demo-tests/test_realistic_minimal.py 27 failing warning
demo-tests/test_realistic_minimal.py::test_warning runtest UserWarning /Users/jwr003/coding/pytest-recap/demo-tests/test_realistic_minimal.py 67 explicit test warning
Errors (1)
Test Node Id When Outcome Message
demo-tests/test_realistic_minimal.py::test_error setup failed @pytest.fixture def error_fixture(): > raise Exception("Error in fixture") E Exception: Error in fixture demo-tests/test_realistic_minimal.py:57: Exception
Rerun Test Groups (1)
Test Node ID # Duration (s) Start Time Stop Time Outcome
demo-tests/test_realistic_minimal.py::test_rerun (2 runs)
demo-tests/test_realistic_minimal.py::test_rerun 1 0.105344 2025-06-04 21:35:09.530000+00:00 2025-06-04 21:35:09.635344+00:00 RERUN
demo-tests/test_realistic_minimal.py::test_rerun 2 0.105125 2025-06-04 21:35:09.638332+00:00 2025-06-04 21:35:09.743457+00:00 PASSED

Test Results

TestOutcomeDurationStartStop
demo-tests/test_realistic_minimal.py::test_error error 0.000191s 2025-06-04T21:35:09.744115+00:00 2025-06-04T21:35:09.744306+00:00
Captured stdout:
(none)
Captured stderr:
(none)
Captured log:
(none)
Error/Traceback:
@pytest.fixture
    def error_fixture():
>       raise Exception("Error in fixture")
E       Exception: Error in fixture

demo-tests/test_realistic_minimal.py:57: Exception
demo-tests/test_realistic_minimal.py::test_fail failed 0.306730s 2025-06-04T21:35:08.885233+00:00 2025-06-04T21:35:09.191963+00:00
Captured stdout:
(none)
Captured stderr:
(none)
Captured log:
(none)
Error/Traceback:
noisy_fixture = None

    def test_fail(noisy_fixture):
        print("failing stdout")
        logger.info("failing log")
        warnings.warn("failing warning", UserWarning)
        time.sleep(0.3)
>       assert False, "Intentional failure"
E       AssertionError: Intentional failure
E       assert False

demo-tests/test_realistic_minimal.py:29: AssertionError
demo-tests/test_realistic_minimal.py::test_pass passed 0.204486s 2025-06-04T21:35:08.678943+00:00 2025-06-04T21:35:08.883429+00:00
Captured stdout:
(none)
Captured stderr:
(none)
Captured log:
(none)
Error/Traceback:
(none)
demo-tests/test_realistic_minimal.py::test_rerun passed 0.105125s 2025-06-04T21:35:09.638332+00:00 2025-06-04T21:35:09.743457+00:00
Captured stdout:
(none)
Captured stderr:
(none)
Captured log:
(none)
Error/Traceback:
(none)
demo-tests/test_realistic_minimal.py::test_warning passed 0.100586s 2025-06-04T21:35:09.747461+00:00 2025-06-04T21:35:09.848047+00:00
Captured stdout:
(none)
Captured stderr:
(none)
Captured log:
(none)
Error/Traceback:
(none)
demo-tests/test_realistic_minimal.py::test_long_output passed 0.203785s 2025-06-04T21:35:09.848905+00:00 2025-06-04T21:35:10.052690+00:00
Captured stdout:
(none)
Captured stderr:
(none)
Captured log:
WARNING  demo:test_realistic_minimal.py:71 Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...Long output the second...
Error/Traceback:
(none)
demo-tests/test_realistic_minimal.py::test_stdout_stderr passed 0.104607s 2025-06-04T21:35:10.055695+00:00 2025-06-04T21:35:10.160302+00:00
Captured stdout:
(none)
Captured stderr:
(none)
Captured log:
(none)
Error/Traceback:
(none)
demo-tests/test_realistic_minimal.py::test_rerun rerun 0.105344s 2025-06-04T21:35:09.530000+00:00 2025-06-04T21:35:09.635344+00:00
Captured stdout:
(none)
Captured stderr:
(none)
Captured log:
(none)
Error/Traceback:
@pytest.mark.flaky(reruns=1)
    def test_rerun():
        # Fails first, passes second
        if not hasattr(test_rerun, "called"):
            test_rerun.called = True
            time.sleep(0.1)
>           assert False, "fail for rerun"
E           AssertionError: fail for rerun
E           assert False

demo-tests/test_realistic_minimal.py:51: AssertionError
demo-tests/test_realistic_minimal.py::test_skip skipped 0.000133s 2025-06-04T21:35:09.210618+00:00 2025-06-04T21:35:09.210751+00:00
Captured stdout:
(none)
Captured stderr:
(none)
Captured log:
(none)
Error/Traceback:
('/Users/jwr003/coding/pytest-recap/demo-tests/test_realistic_minimal.py', 31, 'Skipped: demonstrate skip')
demo-tests/test_realistic_minimal.py::test_xfail xfailed 0.155583s 2025-06-04T21:35:09.211422+00:00 2025-06-04T21:35:09.367005+00:00
Captured stdout:
(none)
Captured stderr:
(none)
Captured log:
(none)
Error/Traceback:
@pytest.mark.xfail(reason="expected fail", strict=True)
    def test_xfail():
        time.sleep(0.15)
>       assert False
E       assert False

demo-tests/test_realistic_minimal.py:38: AssertionError
demo-tests/test_realistic_minimal.py::test_xpass xpassed 0.152843s 2025-06-04T21:35:09.375671+00:00 2025-06-04T21:35:09.528514+00:00
Captured stdout:
(none)
Captured stderr:
(none)
Captured log:
(none)
Error/Traceback:
(none)