Готовим тестовое окружение, переходим из pytest в Go
Привет, друзья!
Профессиональная конференция для Go-разработчиков, GolangConf 2023, состоится 27 и 28 ноября в Москве в рамках HighLoad++ 2023. Не пропустите самое важное мероприятие года, возможность пообщаться с экспертами, узнать, чем занимаются коллеги по отрасли и узнать о последних трендах Golang-разработки.
Забронировать билет на GolangConf 2023
Сегодня мы начнём знакомить вас с программой и спикерами конференции.
Но для начала хотим напомнить о важных дедлайнах. До 15 октября у вас есть возможность проголосовать за номинантов Премии HighLoad++ 2023. Подробнее о Премии — по ссылке.
Проголосовать за номинантов
До 22 октября мы ждём заявки на участие в опенсорс-трибуне, где вы сможете рассказать IT-сообществу о своем решении с открытым кодом. Мероприятие пройдёт при поддержке Яндекса.
Среди поданных заявок экспертное жюри выберет 10 наиболее интересных решений, их авторы выступят с презентациями своих проектов и смогут получить обратную связь от IT-сообщества. У каждого выступающего будет 15 минут: 10 минут на презентацию и 5 минут на ответы.
Все участники опенсорс-трибуны получат бесплатный билет на конференцию.
Подать заявку
А теперь перейдем к знакомству со спикерами и докладами предстоящей GolangConf. Сегодняшняя тема — тестирование. Разберёмся, как перенести тестовое окружение с pytest в Go без головной боли и как лучше тестировать код на Go с базой данных.
Доклады GolangConf
Тимофей Кулин (Яндекс, YDB) в своём докладе расскажет, как перенёс идеологию фикстур из pytest в Go. Фикстуры позволяют писать очень лаконичные тесты и не отвлекаться на подготовку окружения.
Вместе с Тимофеем обсудим:
- фикстура как инструмент для получения окружения «без подготовки»;
- фикстуры в pytest и go;
- какие задачи возникали, как их решали.
Когда кодовая база меняется с большим трудом, а моки в тестах требуют изменения на каждое изменение кода, развитие проекта сильно осложняется и для возвращения гибкости изменений и улучшения гарантий, предоставляемых тестами, можно применить интеграционное тестирование.
Василий Василюк (Тинькофф) поделится опытом запуска интеграционных тестов на Go с базой данных на примере PostgreSQL. Вместе с Василием разберёмся, как ускорить тесты в два раза и не думать над тем, «как удалить мусор из базы данных», а удалить её со всем мусором. Узнаем, какие инструменты хороши для запуска и подключения к базе данных при работе в команде.