Автоматизированное тестирование — неотъемлемая часть процесса программирования в профессиональной среде. Тесты — единственный надёжный способ убедиться в работоспособности кода. Они не избавляют от багов, но позволяют держать их количество на приемлемом уровне. Тесты дают уверенность, что изменения в одной части системы не сломали другие части.
В этом курсе изучаются как общие принципы написания эффективных тестов, так и современный инструментарий для тестирования кода на Python.
Программа курса
Введение
- Зачем и как писать тесты?
- Утверждения (Asserts)
- Pytest
- Модульные тесты
- Подготовка данных
- Плохие и хорошие практики тестирования
- Тесты через документацию (Doctest)
- Покрытие кода тестами (Code Coverage)
- Разработка через тестирование (TDD)
- Непрерывная интеграция (CI)