Evrone News #07: тренды QA и open source
Сегодня в традиционной подборке рассказываем об удачных open source решениях нашей команды: архивном monkey patch и шаблоне чистой архитектуры на Go, а также анализируем тренды 2021 года в QA и тестировании.
QA-тренды
Хорошо настроенное тестирование превратилось в мощное конкурентное преимущество, поскольку гарантирует качество продукта. Надёжная стратегия QA предполагает использование DevOps при поддержке искусственного интеллекта и автоматизации для создания эффективной среды тестирования и более полезных тестовых данных.
Автоматизация тестирования становится одной из важнейших задач при evergreen-менеджменте и QA на проде, да и Agile-команды уже научились с ним дружить. В QA нуждаются и сравнительно новые отрасли, например, IoT и блокчейн, и для них уже есть свои специализированные решения. Примеры инструментов и другие нетривиальные QA-задачи рассматриваем в этой статье.
Шаблон чистой архитектуры для Go
Чистая архитектура — это способ организации кода сложных систем, который, как и большинство хороших сводов архитектурных принципов, способствует строгому разделению ответственности. Программное обеспечение разбивается на независимые функциональные компоненты, которые взаимодействуют друг с другом только определённым надёжным способом, при этом между ними передаётся только то состояние и те ресурсы, которыми необходимо обмениваться для выполнения поставленной задачи. Это помогает минимизировать сложность каждого компонента, снижает вероятность появления ошибок, а если они возникли, облегчает их устранение, так как компонент-нарушитель можно легко идентифицировать.
Go-clean-template — шаблон для проектов на Golang, созданный в Evrone. он основан на принципах чистой архитектуры Роберта («дядюшки Боба») Мартина. Его можно клонировать и использовать в качестве отправной точки для создания приложения на языке Go. Как всё работает, читайте здесь.
Архивное решение проблемы избыточных логов
В 2012 году, мы столкнулись с проблемой избыточных логов при сборке приложений на Rails, используя Asset Pipeline. Всякий раз логи, сгенерированные нашими контроллерами, оказывались завалены запросами на ассеты на каждой странице. Сейчас в Rails Asset Pipeline появился стандартный способ справиться с ситуацией, но тогда нам пришлось искать решение своими силами.
Наша команда придумала monkey patch, который можно было добавить в проект для фильтрации вывода записей лога. А чтобы решение стало удобно использовать широкому кругу разработчиков, сделали quiet_assets gem. О том, как он работал, мы написали здесь.