¿En qué llamada py.test puedo encontrar los datos del 'elemento' y del 'informe'?
pytest_runtest_makereport () obtiene dos argumentos, elemento y llamada. Desde el elemento, puedo encontrar el funcarg que creé para esta prueba, y desde la llamada, puedo encontrar la información de la excepción (si corresponde):
def pytest_runtest_makereport (item, call):
my_funcarg = item.funcargs['name']
my_funcarg.excinfo = call.excinfo
Desafortunadamente, el código de información se llena tanto para fallas como para saltos. Para distinguir, necesito mirar el argumento del informe a pytest_report_teststatus ():
def pytest_report_teststatus (report):
if report.when == 'call':
if report.failed:
failed = True
elif report.skipped:
skipped = True
else:
passed = True
Esa es una gran información, pero no puedo correlacionarla con el funcarg que creé para la prueba. He mirado el argumento del informe (un informe TestReport) y no puedo encontrar ninguna manera de volver al elemento pasado a pytest_runtest_makereport (), o al funcarg que creé.
¿Dónde puedo acceder a ambos?