tgoop.com/dsproglib/6806
Create:
Last Update:
Last Update:
pytest — это популярный фреймворк для тестирования Python-кода. Он прост в использовании, но при этом мощный.
💡 В дата-сайенсе pytest особенно полезен для проверки функций, NumPy-массивов и pandas DataFrame.
Лучший способ — заранее определить ожидаемое поведение функции в разных сценариях и проверить, что она ему соответствует.
Например, тестирование функции для извлечения сентимента текста:
# sentiment.py
def test_extract_sentiment_positive():
text = "I think today will be a great day"
sentiment = extract_sentiment(text)
assert sentiment > 0
def test_extract_sentiment_negative():
text = "I do not think this will turn out well"
sentiment = extract_sentiment(text)
assert sentiment < 0
Такой подход:
— выявляет крайние случаи,
— позволяет безопасно заменять код улучшенными версиями, не ломая весь пайплайн,
— помогает коллегам быстрее понять, как должна работать функция.
В этом гайде:
— написание простых и читаемых тестов,
— параметризация,
— фикстуры,
— мокинг.
📌 Всё, чтобы сделать дата-сайенс-воркфлоу надёжнее и ближе к продакшену.
#буст