22 сентября мы провели Backend United #2: Фарш — встречу, посвященную тестированию бэкенда. Говорили о приемах тестирования бэкенда, его отличиях в разных языках. Обсуждали CDC-подход к тестированию микросервисов — почему в Авито используют нативные тесты, написанные на языках сервисов-потребителей. Рассказали о механике и сложностях внедрения Pact — наборе библиотек, которые реализуют Consumer-Driven Contract подход в тестировании API. И узнали, как в микросервисной архитектуре создать честные и эффективные изоляционные тесты.
Под катом делимся впечатлениями, фото, видео, презентациями со встречи и отзывами слушателей.
Встреча получилась международной — с докладами выступили специалисты из Германии, Эстонии, Беларуси и России.
Доклады
Как начать тестировать и не полысеть
Андрей Скоморохов, Lifland Gaming (Таллин)
Андрей систематизировал основные приемы тестирования бэкенда. В частности, управленческие и технические решения: на чем писать тесты, где их лучше всего запускать и как это делать, — и рассказал об этом на встрече.
Отзывы слушателей
- Лучший доклад, методология, которую возьму на вооружение и буду применять.
- Отличный доклад, отличный спикер. Думаю рассказал все, что нужно, все с чего нужно начать.
- Интересно, доходчиво, полезно.
Реализация Consumer-Driven Contract подхода для тестирования микросервисов в Авито
Фрол Крючков, Авито (Москва)
Фрол Крючков рассказал, как мы в Авито реализовали CDC-подход, чтобы тестировать микросервисы. Если кратко, то мы используем нативные тесты, написанные на языках сервисов-потребителей, которые собираются в docker-образ и запускаются при изменениях в сервисе, от которого они зависят. Кроме того, чего мы ожидали от этого подхода, что получилось хорошо, а над чем еще нужно работать.
Отзывы слушателей
- Понятно разъяснил, зачем нужно CDC-тестирование. Познавательно.
- Интересная тема, рассказывал хорошо, хоть и сильно волновался.
- Интересно было узнать методологию тестирования микросервисов в компании «Авито».
Практическое введение в Pact
Алексей Виноградов, Vinogradov IT-Consulting (Дюссельдорф)
Pact — это набор библиотек, которые реализуют Consumer-Driven Contract подход в тестировании API, а каждая имплементация этого набора может писаться под различные языки программирования: Ruby, Go, PHP, Python, Swift и другие. Алексей рассказал о базовой механике работы Pact и сложностях, возникающих при его внедрении на проектах.
Отзывы слушателей
- Интересно. Отличная подача материала.
- Грамотный материал, доступно для каждого. Хотелось бы чуточку больше примеров. Плюс за ссылку на проект.
- Хороший доклад — обзор инструмента, который можно использовать на практике.
Честные, простые и быстрые изоляционные тесты
Александр Чумакин, Juno (Минск)
Александр раскрыл подходы к тестированию микросервисной архитектуры в Juno, рассказал, как у них получилось создать честные и эффективные изоляционные тесты (и почему именно такие тесты), как поддерживают высоконагруженную и постоянно меняющуюся систему, которая остается при этом полностью протестированной всего за несколько минут. Кроме того, поделился полезным советом, как Juno смогла обеспечить стабильность и отказоустойчивость при непрерывных релизах на продакшн.
Отзывы слушателей
- Тоже хорошая подача, интересные ответы на вопросы.
- Не совсем то чего я ожидал, но все равно доклад был интересный.
- Полезный опыт.
Не докладами едиными
В каждом докладе было много интересного «мяса» (или фарша), и участники встречи задавали немало вопросов. Ответить на все во время своего выступления докладчики иногда не успевали, поэтому в перерывах образовались целые тематические уголки, посвященные тестированию бэкенда.
По классике провели викторину с помощью Kahoot и провели конкурсы для любителей вести техноблоги: лучший репортаж со встречи и лучший конспект. Самый полный лайв со встречи получился у Георгия Поликарпова, а Сергей Колесников (win0err) собрал крайне информативный материал по встрече. Однозначно, это лучший конспект, который мы видели. Посмотрите, как круто вышло:
Кроме того, взяли короткие блиц-интервью у докладчиков и участников «Фарша» и сделали видео.
Спасибо всем участникам Backend United #2: Фарш, как в офлайне, так и в онлайне (вы же смотрели трансляцию или видео докладов, да?). Фотографии со встречи мы, как всегда, выложили на Фейсбук и Вконтакте. А все презентации мы выкладываем на Гитхаб.
Мы часто проводим мероприятия для технических специалистов. Если не хотите пропустить их, подпишитесь на нашу рассылку на Таймпаде. Будем рады, если расскажете в комментариях, доклады на какие темы вы хотите услышать на наших встречах — постараемся учесть ваше мнение при планировании следующих мероприятий.
И да прибуит с вами мясо!