Junior — Middle
75
Quelles sont les outils ou fonctions spéciales que vous avez utilisées pour envelopper et étendre les fonctions de test dans vos projets?
Réponse de l'IA
sobes.tech IA
В Python для оборачивания и расширения тестовых функций часто используют декораторы. Они позволяют добавлять дополнительную логику до и после выполнения теста, например, настройку окружения, логирование, измерение времени выполнения или повторный запуск при неудаче.
Пример простого декоратора для измерения времени выполнения теста:
import time
def timing_decorator(func):
def wrapper(*args, **kwargs):
start = time.time()
result = func(*args, **kwargs)
end = time.time()
print(f"Время выполнения {func.__name__}: {end - start:.4f} секунд")
return result
return wrapper
@timing_decorator
def test_example():
# тестовый код
time.sleep(1)
# Запуск теста
test_example()
Также в популярных тестовых фреймворках, таких как pytest, есть встроенные фикстуры, которые позволяют расширять тесты, управлять ресурсами и параметризовать тесты без изменения их кода.