diff options
Diffstat (limited to 'indoteknik_custom/models/performance_test.py')
| -rw-r--r-- | indoteknik_custom/models/performance_test.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/indoteknik_custom/models/performance_test.py b/indoteknik_custom/models/performance_test.py new file mode 100644 index 00000000..1782eb9d --- /dev/null +++ b/indoteknik_custom/models/performance_test.py @@ -0,0 +1,20 @@ +import time, logging + +_logger = logging.getLogger(__name__) + +def performance_test(num_tests): + def decorator(func): + def wrapper(*args, **kwargs): + total_time = 0 + for _ in range(num_tests): + start_time = time.time() + result = func(*args, **kwargs) + end_time = time.time() + total_time += end_time - start_time + + average_time = total_time / num_tests + _logger.info(f"Average execution time over {num_tests} tests: {average_time:.6f} seconds") + return result + + return wrapper + return decorator |
