def pytest_runtest_call(item):
item._obj = check_wrapper(item._obj)
def check_wrapper(func):
def func_wrapper(*args, **kwargs):
try:
func(*args, **kwargs) # Add return if you need return values
except AssertionError as ae:
logger.error(f"Assertion failed: {str(ae)}")
raise
except Exception as e:
logger.exception(str(e))
logger.error(f"Unknown error: {str(e)}")
raise
update_wrapper(func_wrapper, func)
return func_wrapper