pytest-dev / pytest-repeat

pytest plugin for repeating test execution
https://pypi.python.org/pypi/pytest-repeat/
Other
172 stars 27 forks source link

Any way to access the current iteration count? #52

Open acohen716 opened 3 years ago

acohen716 commented 3 years ago

If I'd like to use/display the current iteration count, is there any way to do that from within the Python test code?

acohen716 commented 3 years ago

I've found this but it doesn't seem like the correct approach to handling this...

joeyshelton commented 2 years ago

I came here wondering the same thing. This would be a small feature addition and it would be very helpful. Although, the creators of pytest-repeat may want to avoid the ability for a test's behavior to be dependent on iteration number.

acohen716 commented 2 years ago

I personally decided to use the same logic as in the stackoverflow post in our conftest.py in order to log the current test and iteration as follows:

import logging
import pytest

log = logging.getLogger(__name__)

@pytest.fixture(scope="function", autouse=True)
def log_test_function_start(request):
    """Logs test name at start of test, helps identify currently running test and iteration"""
    log.info("#################################################################")
    log.info("Starting execution of test: %s", request.node.name)
    log.info("##################################################################")