
Trinity
Администратор
- Регистрация
- 10.07.21
- Сообщения
- 41.310
- Реакции
- 662.956
Последние темы автора:
[Егор Пыриков] Менторство [Тариф Зритель] (2024)
[Марк Расмус] Базовые энергии внутренних боевых искусств (2023)
[creative.clay, Кристина Кочесок] МК по лепке милейших совят (2021)
[Сумочный Рай, Светлана Костина] Имитация внутреннего фермуара (2025)
[Умскул, Вероника Соколовская] Предбанник по Географии ЕГЭ (2025)
[Марк Расмус] Базовые энергии внутренних боевых искусств (2023)
[creative.clay, Кристина Кочесок] МК по лепке милейших совят (2021)
[Сумочный Рай, Светлана Костина] Имитация внутреннего фермуара (2025)
[Умскул, Вероника Соколовская] Предбанник по Географии ЕГЭ (2025)
Автор: Thinknetica
Название: Профилирование и оптимизация тестов Rails-приложений (2024)
Описание:
Воркшоп для Ruby и Rails разработчиков, которые хотят значительно сократить время ожидания выполнения тестов на CI и/или локально и тем самым ускорить цикл обратной связи при разработке, минимизировать задержку между публикацией изменений и их выкаткой, а также снизить расходы на CI-инфраструктуру.
Что будет:
День 1. Проблема медленных тестов. Профилирование тестов как обычного Ruby-кода
На старте обсудим, почему медленные тесты влияют на процесс разработки. Рассмотрим различные способы ускорения тестов, не требующие профилирования и оптимизаций кода тестов.
Затем попробуем стандартные способы поиска узких мест в Ruby-коде для оптимизации тестов. Узнаем, какие классы проблем в тестах они способны диагностировать и как эти проблемы устранять.
В результаты вы:
Познакомитесь с инструментами профилирования, входящими в TestProf, которые позволяют сузить область рефакторинга тестов для минимизации отношения трудозатрат к полученному ускорению:
сможете определить небольшой набор тестов, оптимизация которых, с одной стороны, даст значительный прирост скорости, а с другой — позволит сформировать набор техник рефакторинга, специфичный для приложения.
День 3. Оптимизация тестов с помощью переиспользования данных. Автоматизация профилирования и рефакторинга
В завершающей части мы перейдём к оптимизации конкретных файлов и познакомимся с инструментами TestProf для переиспользования данных в тестах:
сформируете подходы к рефакторингу тестов, характерных для своего проекта, которые смогут быть применены к тестовым файлам для достижения желаемого ускорения.
В завершение обсудим возможности автоматизации, предоставляемые TestProf, в частности TestProf Autopilot.
Автор
Владимир Дементьев
разработчик в Злых марсианах, автор TestProf, контрибьютор в Rails, лауреат Ruby Hero Russia 2017
Название: Профилирование и оптимизация тестов Rails-приложений (2024)
Описание:
Воркшоп для Ruby и Rails разработчиков, которые хотят значительно сократить время ожидания выполнения тестов на CI и/или локально и тем самым ускорить цикл обратной связи при разработке, минимизировать задержку между публикацией изменений и их выкаткой, а также снизить расходы на CI-инфраструктуру.
Что будет:
- Подходы
На воркшопе рассмотрим разные подходы для профилирования и оптимизации тестов, следующие принципу «максимум выгоды при минимуме изменений» (ведь никто не будет переписывать тесты или менять архитектуру приложения лишь для того, чтобы ускорить тесты). - Инструменты
Освоим такие общие инструменты для профилирования Ruby-приложений как Stackprof и Vernier, а также подробно познакомимся со специализированным пакетом TestProf. - Навыки
Полученные навыки вы сразу же сможете применить на своих проектах. И не удивляйтесь, если всего за несколько часов вы сможете ускорить ваши тесты в несколько раз!
День 1. Проблема медленных тестов. Профилирование тестов как обычного Ruby-кода
На старте обсудим, почему медленные тесты влияют на процесс разработки. Рассмотрим различные способы ускорения тестов, не требующие профилирования и оптимизаций кода тестов.
Затем попробуем стандартные способы поиска узких мест в Ruby-коде для оптимизации тестов. Узнаем, какие классы проблем в тестах они способны диагностировать и как эти проблемы устранять.
В результаты вы:
- узнаете об альтернативных, внешних (не требующих профилирования и рефакторинга) способах ускорения тестов и их ограничениях;
- попробуете на практике такие инструменты профилирования, как StackProf, RubyProf, Vernier;
- научитесь читать флеймграфы;
- узнаете о типичных проблемах конфигурации тестов, которые значительно влияют на скорость выполнения.
Познакомитесь с инструментами профилирования, входящими в TestProf, которые позволяют сузить область рефакторинга тестов для минимизации отношения трудозатрат к полученному ускорению:
- научитесь выделять медленные типы с помощью TagProf;
- сможете оценивать влияние определённых методов или событий в коде на скорость выполнения с помощью EventProf;
- разберетесь как профилировать использование фабрик с помощью FactoryProf.
сможете определить небольшой набор тестов, оптимизация которых, с одной стороны, даст значительный прирост скорости, а с другой — позволит сформировать набор техник рефакторинга, специфичный для приложения.
День 3. Оптимизация тестов с помощью переиспользования данных. Автоматизация профилирования и рефакторинга
В завершающей части мы перейдём к оптимизации конкретных файлов и познакомимся с инструментами TestProf для переиспользования данных в тестах:
- before_all / let_it_be для переиспользования данных в рамках контекста RSpec (локальные фикстуры);
- AnyFixture для глобальных программно генерируемых фикстур.
сформируете подходы к рефакторингу тестов, характерных для своего проекта, которые смогут быть применены к тестовым файлам для достижения желаемого ускорения.
В завершение обсудим возможности автоматизации, предоставляемые TestProf, в частности TestProf Autopilot.
Автор
Владимир Дементьев
разработчик в Злых марсианах, автор TestProf, контрибьютор в Rails, лауреат Ruby Hero Russia 2017
- RoR-разработчик с 15-ти летним стажем.
- Разработчик в EvilMartians
- Кроме RoR, знает и применяет Erlang, Python, ActionScript, С++, Java
- Коммитер в Rails, aвтор гемов AnyCable и LiteCable
- Регулярно выступает на международных Ruby-конференциях на одной сцене с DHH и Матцем
Скачать:![]()
Воркшоп - Профилирование и оптимизация тестов Rails-приложений
3х дневный Online-Воркшоп - Профилирование и оптимизация тестов Rails-приложенийthinknetica.com
Для просмотра скрытого содержимого вы должны войти или зарегистрироваться.