Алексей рассказал, какие задачи и проблемы стояли перед командой в начале пути, какие технологии используются для автоматизации тестирования, какие проблемы при этом возникают и как решаются, а также поделится достигнутыми результатами.
Алексей Петров, Mail.Ru Group, "Организация конвейера автоматизации тестирова...Mail.ru Group
Доклад о том, с чего начать выстраивать конвейер автоматизации тестирования. Как не утопить автоматизацию в мнимых штампах и стереотипах, построив по-настоящему эффективный процесс автоматизации тестирования.
Поделюсь опытом и расскажу:
- о том, с чего начать автоматизацию тестирования;
- о том, что делает автоматизированные тесты выгодными;
- как научить "зарабатывать" автотесты;
- о том, как превратить точечное написание автоматизирвоанных тестов в стройный конвейер с отлаженными процессами;
- о популярных ошибках и заблуждениях автоматизации тестирования и о том, как их избегать;
- о сопутствующих инструментах и лайфхаках из практики.
Доклад содержит полезные советы, как для тех, кто только думает внедрить автоматизацию тестирования, так и для тех, кто уже вовсю автоматизирует, но сталкивается с проблемами их эффективной работы или желает сделать автотесты еще более полезными.
Наталья Чуфырина, Mail.Ru Group, «Как создать команду по автоматизации тестир...Mail.ru Group
Существует мнение, что от разработчиков системы автоматизированных тестов требуется высокая квалификация в области разработки программного обеспечения и солидный багаж знаний. Обычно таких людей в команде тестирования не много. Но можно начать работы по качественной автоматизации тестирования, даже не имея такого опыта. В докладе речь пойдет о:
отборе рекрутов в программу обучения автоматизации тестирования;
первичном пороге для вхождения в рекруты;
составлении учебной программы;
промежуточном контроле и испытаниях;
начале работы над реальными проектами;
подводных камнях и ошибках, которые можно допустить.
Применение этих знаний на собственном опыте позволило компании получить высокое покрытие проекта тестами и достичь результатов, когда каждый из команды разрабатывает и поддерживает автотесты, а также самостоятельно автоматизирует новые проекты.
В этом докладе вы услышите историю о том, как можно построить процесс автоматизированного тестирования и непрерывной интеграции за короткий период времени. Мы поговорим о точках роста, развития и внедрения автоматизированного тестирования на уже существующем проекте. Вы узнаете, что с чего начинать автоматизированное тестирование и как выбрать "работающую" стратегию. После доклада вы захотите избавиться или значительно сократить ручное тестирование и ручной труд у себя на проекте. Вы откроете для себя целую систему, элементы который можно будет внедрять у себя, и которые будут работать.
Доклад будет интересен всем тестировщикам, разработчикам и менеджерам проектов.
Современный мир ускоряется, и от тестирования требуется быстрые и стабильные тесты. В этом мастер-классе предлагается уйти от UI автоматизации и перейти на уровень ниже "пирамиды тестирования", на уровень WEB API. Не обещаю теорию, но будет много практических кейсов. В качестве примера я возьму популярный веб сайт с открытым API и покажу как за относительно небольшое время можно создавать хорошие тесты! Причем тесты мы будем создавать совместно, и особых навыков программирования от участников здесь не потребуется, достаточно включить логику и желание освоить что-то новое.
Алексей Петров, Mail.Ru Group, "Организация конвейера автоматизации тестирова...Mail.ru Group
Доклад о том, с чего начать выстраивать конвейер автоматизации тестирования. Как не утопить автоматизацию в мнимых штампах и стереотипах, построив по-настоящему эффективный процесс автоматизации тестирования.
Поделюсь опытом и расскажу:
- о том, с чего начать автоматизацию тестирования;
- о том, что делает автоматизированные тесты выгодными;
- как научить "зарабатывать" автотесты;
- о том, как превратить точечное написание автоматизирвоанных тестов в стройный конвейер с отлаженными процессами;
- о популярных ошибках и заблуждениях автоматизации тестирования и о том, как их избегать;
- о сопутствующих инструментах и лайфхаках из практики.
Доклад содержит полезные советы, как для тех, кто только думает внедрить автоматизацию тестирования, так и для тех, кто уже вовсю автоматизирует, но сталкивается с проблемами их эффективной работы или желает сделать автотесты еще более полезными.
Наталья Чуфырина, Mail.Ru Group, «Как создать команду по автоматизации тестир...Mail.ru Group
Существует мнение, что от разработчиков системы автоматизированных тестов требуется высокая квалификация в области разработки программного обеспечения и солидный багаж знаний. Обычно таких людей в команде тестирования не много. Но можно начать работы по качественной автоматизации тестирования, даже не имея такого опыта. В докладе речь пойдет о:
отборе рекрутов в программу обучения автоматизации тестирования;
первичном пороге для вхождения в рекруты;
составлении учебной программы;
промежуточном контроле и испытаниях;
начале работы над реальными проектами;
подводных камнях и ошибках, которые можно допустить.
Применение этих знаний на собственном опыте позволило компании получить высокое покрытие проекта тестами и достичь результатов, когда каждый из команды разрабатывает и поддерживает автотесты, а также самостоятельно автоматизирует новые проекты.
В этом докладе вы услышите историю о том, как можно построить процесс автоматизированного тестирования и непрерывной интеграции за короткий период времени. Мы поговорим о точках роста, развития и внедрения автоматизированного тестирования на уже существующем проекте. Вы узнаете, что с чего начинать автоматизированное тестирование и как выбрать "работающую" стратегию. После доклада вы захотите избавиться или значительно сократить ручное тестирование и ручной труд у себя на проекте. Вы откроете для себя целую систему, элементы который можно будет внедрять у себя, и которые будут работать.
Доклад будет интересен всем тестировщикам, разработчикам и менеджерам проектов.
Современный мир ускоряется, и от тестирования требуется быстрые и стабильные тесты. В этом мастер-классе предлагается уйти от UI автоматизации и перейти на уровень ниже "пирамиды тестирования", на уровень WEB API. Не обещаю теорию, но будет много практических кейсов. В качестве примера я возьму популярный веб сайт с открытым API и покажу как за относительно небольшое время можно создавать хорошие тесты! Причем тесты мы будем создавать совместно, и особых навыков программирования от участников здесь не потребуется, достаточно включить логику и желание освоить что-то новое.
“Можно ли перевернуть пирамиду?” – автоматизируем тестирование с меньшим числ...Igor Khrol
Когда мы говорим об автоматизации тестирования, чаще всего вспоминается Selenium, Microsoft Coded UI, QTP и другие аналогичные инструменты. Мы хотим воспроизводить действия ручного тестирования с максимальной точностью, чтобы можно было с уверенностью сказать, что тот или иной тест-скрипт повторяет какую-то часть сложившихся на проекте тестов. Когда же тестов становится чуть больше, то мы обнаруживаем, что наши тесты запускаются долго, работают нестабильно. После чего мы начинаем говорить о параллелизации, виртуализации, четырёхслойной архитектуре фреймворка и прочих жутко интересных вещах… Это всё очень хорошо, но главная цель где-то остаётся в стороне – контроль качества нашего продукта.
В своём докладе я попытаюсь слегка задать направление другой альтернативе: отойти от автотестов через пользовательский интерфейс в сторону более низкоуровневых, которые значительно быстрее и стабильнее. Если вас также волнует “переворачивание” пирамиды автоматизации тестирования, то приглашаю присоединиться к обсуждению этой сложной и важной темы.
Дело тестера боится: как в опытных руках могут заиграть Java и TestNgIT61
Вячеслав Марков, QA engineer в Weezlabs
Я расскажу о том, как в нашей фирме организовано тестирование бэкенда с помощью тестового фреймворка TestNG и Java. Расскажу о data-driven тестировании и о том, почему его удобно применять. Покажу и опишу разработанную нами структуру типового тестового проекта. Представлю применяемые нами способы сбора и документирования результатов, а так же их анализ в условиях CI.
Кирилл Черятов. Эволюция системы логирования интеграционного ПО. Сокращаем вр...ScrumTrek
Автоматизация бизнес-процессов часто подразумевает интеграцию большого количества IT систем. При производстве такого ПО серьезной проблемой является сбор и анализ логов систем. Эта проблема актуальная и для системы FORIS, которая поддерживает бизнес МТС.
Мы разберем проблемы, которые подтолкнули к разработке системы Central Logging, обозначим решение этих проблем, узнаем, какое отношение имеет игра пинг-понг к разработке программного обеспечения, а так же, как Central Logging помогла нам меньше играть в пинг-понг и больше времени тратить на разработку новых задач для заказчика.
Максим Богуславский, Banki.ru, «Как вырастить в себе автоматизатора и разрабо...Mail.ru Group
Многие тестировщики по той или иной причине задумываются о том, чтобы начать писать автотесты. Доклад ориентирован на тех, кто хочет попробовать изучить автоматизацию, либо пробовал, но не справился. Почему у кого-то получилось, а у кого-то нет? Какие навыки и личные качества могут помочь нам в этом или помешать? Стоит ли пытаться? В своем докладе Максим постарался дать ответ на эти вопросы.
Никита Макаров, Одноклассники, «API, Облака и зачем это все тестировщику»Mail.ru Group
Облачные решения уже около пяти лет находятся в числе горячих тем всей IT-индустрии. В них видят потенциал, равно как и ограничения использования. Спикер рассказал и показал, как облако может приносить пользу тестировщику, а также проговорит об API и публичных сервисах.
“Можно ли перевернуть пирамиду?” – автоматизируем тестирование с меньшим числ...Igor Khrol
Когда мы говорим об автоматизации тестирования, чаще всего вспоминается Selenium, Microsoft Coded UI, QTP и другие аналогичные инструменты. Мы хотим воспроизводить действия ручного тестирования с максимальной точностью, чтобы можно было с уверенностью сказать, что тот или иной тест-скрипт повторяет какую-то часть сложившихся на проекте тестов. Когда же тестов становится чуть больше, то мы обнаруживаем, что наши тесты запускаются долго, работают нестабильно. После чего мы начинаем говорить о параллелизации, виртуализации, четырёхслойной архитектуре фреймворка и прочих жутко интересных вещах… Это всё очень хорошо, но главная цель где-то остаётся в стороне – контроль качества нашего продукта.
В своём докладе я попытаюсь слегка задать направление другой альтернативе: отойти от автотестов через пользовательский интерфейс в сторону более низкоуровневых, которые значительно быстрее и стабильнее. Если вас также волнует “переворачивание” пирамиды автоматизации тестирования, то приглашаю присоединиться к обсуждению этой сложной и важной темы.
Дело тестера боится: как в опытных руках могут заиграть Java и TestNgIT61
Вячеслав Марков, QA engineer в Weezlabs
Я расскажу о том, как в нашей фирме организовано тестирование бэкенда с помощью тестового фреймворка TestNG и Java. Расскажу о data-driven тестировании и о том, почему его удобно применять. Покажу и опишу разработанную нами структуру типового тестового проекта. Представлю применяемые нами способы сбора и документирования результатов, а так же их анализ в условиях CI.
Кирилл Черятов. Эволюция системы логирования интеграционного ПО. Сокращаем вр...ScrumTrek
Автоматизация бизнес-процессов часто подразумевает интеграцию большого количества IT систем. При производстве такого ПО серьезной проблемой является сбор и анализ логов систем. Эта проблема актуальная и для системы FORIS, которая поддерживает бизнес МТС.
Мы разберем проблемы, которые подтолкнули к разработке системы Central Logging, обозначим решение этих проблем, узнаем, какое отношение имеет игра пинг-понг к разработке программного обеспечения, а так же, как Central Logging помогла нам меньше играть в пинг-понг и больше времени тратить на разработку новых задач для заказчика.
Максим Богуславский, Banki.ru, «Как вырастить в себе автоматизатора и разрабо...Mail.ru Group
Многие тестировщики по той или иной причине задумываются о том, чтобы начать писать автотесты. Доклад ориентирован на тех, кто хочет попробовать изучить автоматизацию, либо пробовал, но не справился. Почему у кого-то получилось, а у кого-то нет? Какие навыки и личные качества могут помочь нам в этом или помешать? Стоит ли пытаться? В своем докладе Максим постарался дать ответ на эти вопросы.
Никита Макаров, Одноклассники, «API, Облака и зачем это все тестировщику»Mail.ru Group
Облачные решения уже около пяти лет находятся в числе горячих тем всей IT-индустрии. В них видят потенциал, равно как и ограничения использования. Спикер рассказал и показал, как облако может приносить пользу тестировщику, а также проговорит об API и публичных сервисах.
Aлексей Медведев, Alpari, «Enterprise-инфраструктура менеджмента PHP-пакетов ...Mail.ru Group
В докладе было рассказано, как в Альпари разворачивали локальную систему менеджмента пакетов на базе Composer, Packagist и git-фронтенда Gitweb; а также как работают с приватными пакетами и почему при сборке приложений зависимости никогда не выкачиваются напрямую с GitHub.
Кроме того, будет несколько слов о том, что находится под капотом у Packagist, когда, как и зачем его разворачивать у себя в компании, какие есть альтернативные Composer-репозитории пакетов и в каких случаях их удобно использовать.
Александр Дьяконов, ВМК МГУ, Решение задачи Search Results Relevance (на плат...Mail.ru Group
Разобрана задача по определению релевантности поисковой выдачи, которая решалась на прошлогоднем «Практическом семинаре по АД kaggle». Был описан очень простой алгоритм, который не использует сложных методов анализа текстов, словарей и ансамблей алгоритмов, и который, тем не менее, смог попасть в десятку сильнейших среди более чем 1300 участников.
Михаил Фролов - Конверсия в социальных сетях и продажа эмоций - Fotostrana.ruWG_ Events
Михаил рассказывает об особенностях поведения пользователей в социальных сетях и на сайтах развлекательного характера. Чего они ждут, как общаются, за что готовы платить и как сделать покупку желанной и радостной, а не обременительной.
Точки роста и тренды будущего в таргетированной рекламеHiconversion
Таргетированная реклама за последние несколько лет стала одним из самых динамично развивающихся направлений performance-маркетинга, собрав лучшее от RTB-технологий, профилирования в соцсетях, look-a-like данных и обработки Big Data.
Сейчас мы видим, как можно и важно эффективно использовать CRM-данные клиента, а также прекрасно зарекомендовавший себя ремаркетинг и поисковые запросы из контекстной рекламы.
Мобайл как главный драйвер интернет-рынка смог внести огромные коррективы в распределении рекламных бюджетов на различных площадках. Поведение пользователей в мобайле кардинально отличается от поведения в десктопе: акцент сместился с поиска в интернете на развлечение и общение.
Социальные сети, будучи самыми популярными ресурсами на мобильных устройствах, сосредоточили в себе значительную долю медиапотребления пользователя. Они являются главным фундаментом таргетированной рекламы, и от их развития будет зависеть будущее интернет рынка.
Совсем скоро 14 апреля представители рекламных платформ популярных в России соцсетей (ВКонтакте, Одноклассники, Facebook, Twitter) поделятся своим видением развития рынка таргетированной рекламы.
Кейс ArrowMedia: "Результативность от инструмента к инструменту"ArrowMedia
Мы предложили клиенту поэтапное «инструментальное развитие», в котором подключаем следующий инструмент, только получив нужную результативность предыдущего.
Programmatic Buying на всех этапах воронки продажMaksim Katkov
Реальные кейсы от имиджевой кампании, работающей на максимальный охват с минимальной стоимостью контакта с ЦА - до работы с привычными для екоммерс-проектов KPI в формате CPA.
«Coro. Intro» Евгений Вансевич, программист Почты Mail.RuMail.ru Group
Доклад посвящен Coro, его применению, разбору достоинств и недостатков. Особое внимание спикер уделит применению Coro в асинхронном программировании в связке с AnyEvent и генераторов.
Как построить свой фреймворк для автотестов?Dmitry Buzdin
Мы пройдемся по всем основным блокам построения тестового фреймворка и тому, как они связаны между собой. Вы научитесь собирать свое решение по автоматизации из библиотек с открытым кодом и делать так, чтобы они дополняли друг друга.
Solit 2013, Эволюция тестирования на Selenium, Мычко Алексейsolit
Алексей Мычко, Минск, компания JazzTeam, Software Engineer (test automation)
«Эволюция тестирования на Selenium». Лекция и мастер-класс. Development секция. Для заинтересованных.
Для автоматизации web-приложений самым популярным средством является Selenium. Этот продукт дает возможность создавать как очень простые тесты, так и сложные тестовые фреймворки, позволяющие тестировать системы любой сложности.
В мастер-классе будет наглядно показано создание следующих видов тестов:
- с использование программ, генерирующих тесты по манипуляциям с браузером
- тесты в стиле процедурного программирования
- тесты в стиле объектно-ориентированного программирования
- тесты на DSL (Domain Specific Language) языке
The practical story telling how Devops changed the culture of quality in the Bank. Recently Devops became mainstream topic. But only few people have a deep understanding how to apply it to the process of software quality assurance. Some believe that the Devops kills manual testing.
I will talk about changes it makes to the role of QA engineers themself. The discussion main point is NOT about tools or technologies. It’s NOT about the “silver bullet” for your problems with the quality of products.
Instead, I will show you an integrated approach which we used for quality assurance. It allowed us to significantly reduce the cost of finding and fixing defects. This approach has also accelerated the development and delivery value to our customers and made the whole process more transparent and predictable.
QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQAFest
В своем докладе я расскажу, как мы внедряли devops в банке, а конкретнее какую роль в этом процессе сыграло тестирование. Также расскажу с какими проблемами столкнулись, и как мы их устраняли. И да, каких результатов смогли добиться уже через полгода. А самое интересное, покажу как мы смогли добиться того, чтоб у нас pull request долетал до боя за 3 часа со всеми этапами тестирования.
Доклад будет содержать большое количество лайфхаков и обзоров инструментария, который мы использовали.
Практический доклад о том, как мы внедряли devops в банке, а конкретнее какую роль в этом процессе сыграло тестирование.
В докладе рассмотрены основные проблемы, с которыми команда столкнулась при внедрении и способы их устранения.
Продемонстрированы результаты, которых смогли достичь в течении полугода.
Доклад содержит большое количество лайфхаков и обзоров инструментария, который использовался для достижения цели.
Автоматизация тестирования в iOS-проекте на примере ICQ / Д.Куркин, М.Манаев ...Ontico
РИТ++ 2017, AppsConf
Зал Найроби + Касабланка, 5 июня, 16:00
Тезисы:
http://appsconf.ru/2017/abstracts/2807.html
- Как мы решили связаться с автоматизацией тестирования и что из этого вышло.
- Наша инфраструктура для тестирования. Что тестируем, как тестируем и как следим за результатами.
- Как получать пользу от автоматизации, если продукт сильно меняется минимум раз в год.
- Особенности текущего инструментария. Что стоит учитывать и на что обратить внимание.
Solit 2014, Централизованное управление тестами с помощью TestLink, Зубович В...solit
Зубович Вадим, Минск. Опыт в IT более 5 лет, работает в компании ISSoft, специализация: разработка (.NET C# ASP\MVC, WPF, WinForm, Java) и автоматизация функционального тестирования програмного обеспечения (Web, Desktop, Mobile) и тестирования производительности (Web).
«Сравнительный анализ инструментов для автоматизации тестирования мобильных приложений». Development секция. Отделение тестирования.
Мобильные платформы уже набрали огромную популярность, и продолжают наращивать обороты. Ни один разработчик уже не обходит стороной мобильные приложения и автоматизация тестирования в этой сфере актуальна как никогда.
В настоящем докладе мы рассмотрим наиболее популярные и перспективные инструменты для автоматизации тестирования приложений для мобильных операционных систем iOS, Android и WindowsPhone, проведем анализ их особенностей и возможностей, основываясь на опыте их использования в рамках реальных проектов, а также подведем общий итог с рекоммендациями по выбору того или иного инструмента.
«Централизованное управление тестами с помощью TestLink». Development секция. Отделение тестирования.
Эффективное управление тестами это не только грамотный тим-менеджмент, это еще и правильный учет, контроль результатов и своевременное и централизованное обновление информации о тестах для всех участников процесса и силами всех участников процесса.
Достичь этого невозможно без системы управления тестами, позволяющей эффективно распределить права и обязанности участников и обеспечить постоянное поддержание информации о тестах в актуальном состоянии.
TestLink – бесплатный инструмент, предназначенный именно для выполнения этой задачи.
В рамках доклада мы рассмотрим:
1. Как устроен TestLink
2. Как построить работу с TestLink
3. Как создавать информативные отчеты в TestLink
4. Как наладить связь между автоматизацией и TestLink
Презентация со встречи QA Club Minsk 11 декабря 2013 г., посвященная одному из поппулярнейших инструментов тест-менеджмента Test Link, автор Вадим Зубович
Андрей Сильчук: "Автоматическое тестирование".Hub-IT-School
Выступление Андрея Сильчука об автоматическом тестировании ПО на Hub QA meetup #1.
Больше мероприятий:
https://vk.com/hub.itschool
https://facebook.com/Hub.IT.School
Автоматическое тестирование и с чем его едятMarina Peregud
Agenda
Автоматизация? Какая еще автоматизация? Автоматическое тестирование ПО. Зачем вообще?
Отличие от мануального тестирования ПО, или Ручник vs человек разумный.
Имею желание, но не имею возможности, или какие знания были бы полезны в этой области.
Когда стоит внедрять автоматизацию.
ROI и другие непонятные слова на три буквы.
Similar to Алексей Халайджи, Mail.Ru Group, «Как мы автоматизируем UI-тестирование в iOS Почте Mail.Ru» (20)
Автоматизация без тест-инженеров по автоматизации, Мария Терехина и Владислав...Mail.ru Group
В рамках доклада мы поделимся примерами проектов, на которых есть автоматизация, но нет ни одного специально выделенного инженера для выполнения задач, связанных с автоматизацией тестирования. Затронем такие вопросы как:
что нас привело к такому решению (отказаться от test automation инженеров);
сложности, с которыми мы столкнулись;
бонусы, которые мы в итоге получили.
BDD для фронтенда. Автоматизация тестирования с Cucumber, Cypress и Jenkins, ...Mail.ru Group
Автоматизация тестирования UI — это всегда непростая задача, особенно в условиях активной разработки и постоянного изменения требований. Как мы решали эту проблему в mall.my.com. Как и почему пришли к BDD. Какие инструменты выбрали. И что из этого вышло.
Использование Fiddler и Charles при тестировании фронтенда проекта pulse.mail...Mail.ru Group
Использование Fiddler и Charles при тестировании фронтенда проекта pulse.mail.ru;
Свежий взгляд на Fiddler и его сравнение с Clumsy и Charles;
Небольшой обзор и сравнение функционала Fiddler и Charles.
Управление инцидентами в Почте Mail.ru, Антон ВикторовMail.ru Group
что такое инциденты и почему это важно;
как из непонятного сделать «рутину»;
про автоматизацию: OTRS, Jira, чат-боты;
про диагностику: логирование, как работает Bomgar;
про сообщество: специальная программа тестирования почты для сотрудников.
На сегодняшний день такие популярные анализаторы, как OWASP ZAP и Burp Suite, не всегда хорошо справляются с задачей автоматического сканирования приложений. Нередко они не могут найти какие-то специфические директории, автоматически отправить запрос без участия человека. И чаще данные инструменты запускаются локально. При этом, если в компании хорошо работает команда по автоматизации тестирования, их работу можно взять за основу динамического анализа и фазинга.
Как бонус, обсудим разницу Burp Suite Professional и Burp Suite Enterprise с точки зрения CI/CD и подключения автоматизированных тестов.
Почему вам стоит использовать свой велосипед и почему не стоит Александр Бел...Mail.ru Group
Почему каждый DL-инженер должен написать свою либу для обучения сеток, а потом отказаться от неё.
Расскажу про опыт написания kekas-а, и почему в своей команде мы пользуемся pytorch-lightning как более зрелым решением.
CV в пайплайне распознавания ценников товаров: трюки и хитрости Николай Масл...Mail.ru Group
Расскажу про различные полезные библиотеки и функции Python: от простых и известных, до специфичных и редких. Поделюсь тем, какие технологии мы используем при разработке, обучении и деплое наших моделей: что помогало улучшить качество, а что тормозило разработку.
RAPIDS: ускоряем Pandas и scikit-learn на GPU Павел Клеменков, NVidiaMail.ru Group
Все мы знаем, что наш любимый Pandas исключительно однопоточный, а модели из scikit-learn часто учатся не очень быстро даже в несколько процессов. Поэтому в докладе я расскажу о проекте RAPIDS - наборе библиотек для анализа данных и построения предиктивных моделей с использованием NVIDIA GPU. В докладе я предложу подискутировать о том, что закон Мура больше не выполняется, рассмотрю принципы работы архитектуры CUDA. Разберу библиотеки cuDF и cuML, а также постараюсь предельно честно рассказать о том, ждать ли чуда от перехода на GPU и в каких случаях чудо неизбежно.
WebAuthn в реальной жизни, Анатолий ОстапенкоMail.ru Group
Я расскажу, как мы поддержали вход через WebAuthn в самом крупном почтовом сервисе рунета и какие сложности скрываются за красивыми презентациями о том, какой WebAuthn простой и безопасный:
как сделать WebAuthn понятным и доступным для пользователей;
как поддержать его во всех браузерах и устройствах;
как тестировать WebAuthn, в том числе автоматизированно;
куда двигаться дальше после его запуска и включения.
AMP для электронной почты, Сергей ПешковMail.ru Group
Библиотека AMP — это не только современный инструмент создания богатых функциональностью и производительных web-сайтов, адаптированных для работы на мобильных устройствах. AMP для электронной почты радикально обновляет традиционный формат электронных писем, позволяя создавать более привлекательные и полезные для пользователя рассылки.
В Почте Mail.ru очень вдохновляют новые возможности, которые может предоставить нашим пользователям и партнерам AMP для электронной почты. Этот доклад о том:
почему стандарт для по-настоящему интерактивных электронных писем не получалось создать раньше;
что из себя представляет стандарт AMP4Email, какие новые способы взаимодействия с письмом он дает;
как с его помощью повысить ценность рассылки для пользователя;
как мы реализовали поддержку AMP4Email в своих продуктах и обеспечили его безопасность;
как AMP4Email может повысить конверсию на примере внедрения AMP-рассылок в партнерстве с крупнейшим сервисом электронной коммерции в России.
Кейсы использования PWA для партнерских предложений в Delivery Club, Никита Б...Mail.ru Group
Delivery Club — крупнейшая фудтех-платформа в России, которая объединяет более 12 000 ресторанов разной ценовой категории в более чем 120 городах.
Мы разработали приложение для наших партнеров, в котором они могут управлять заказами, меню, ингредиентами, статистикой в удобном интерфейсе. В докладе пойдет речь о том, как внедрение практик PWA помогло нам улучшить пользовательский опыт, решить вопросы, связанные с работой приложения на разных платформах. И как поддержка offline-режима избавила нас от проблем с вечными перепадами сети у наших партнеров.
Этика искусственного интеллекта, Александр Кармаев (AI Journey)Mail.ru Group
AI Journey — двухдневная конференция с ведущими международными и российскими спикерами — экспертами в области искусственного интеллекта и анализа данных, а также представителями компаний — лидеров по развитию и применению технологий ИИ в бизнес-процессах.
Нейро-машинный перевод в вопросно-ответных системах, Федор Федоренко (AI Jour...Mail.ru Group
AI Journey — двухдневная конференция с ведущими международными и российскими спикерами — экспертами в области искусственного интеллекта и анализа данных, а также представителями компаний — лидеров по развитию и применению технологий ИИ в бизнес-процессах.
Конвергенция технологий как тренд развития искусственного интеллекта, Владими...Mail.ru Group
AI Journey — двухдневная конференция с ведущими международными и российскими спикерами — экспертами в области искусственного интеллекта и анализа данных, а также представителями компаний — лидеров по развитию и применению технологий ИИ в бизнес-процессах.
Обзор трендов рекомендательных систем от Пульса, Андрей Мурашев (AI Journey)Mail.ru Group
AI Journey — двухдневная конференция с ведущими международными и российскими спикерами — экспертами в области искусственного интеллекта и анализа данных, а также представителями компаний — лидеров по развитию и применению технологий ИИ в бизнес-процессах.
Мир глазами нейросетей, Данила Байгушев, Александр Сноркин ()Mail.ru Group
AI Journey — двухдневная конференция с ведущими международными и российскими спикерами — экспертами в области искусственного интеллекта и анализа данных, а также представителями компаний — лидеров по развитию и применению технологий ИИ в бизнес-процессах.
2. О докладчике
• Алексей Халайджи
• Закончил МГТУ им. Н.Э. Баумана (ИУ-6)
• Закончил Технопарк Mail.Ru
• Работаю в Mail.Ru с января 2015 года
• Занимаюсь автоматизацией
UI-тестирования с лета 2015 года
3. Расскажу о…
• Роль автоматизированного тестирования в процессе разработки
• Фреймворк для тестирования
• Первоначальное состояние у истоков автоматизации
• История развития нашей инфраструктуры тестирования
• Проблемы при автоматизации и их решения
• Результаты
5. Роль автоматизированного тестирования
• Снижение нагрузки на команду ручного тестирования
• Проверка всей основной функциональности
приложения после каждого изменения проекта
• Замещение ручного регрессионного тестирования
• Устранение повторяющихся багов
6. Автоматизированное тестирование в
Workflow
• Задачи в jira для обычных задач
• Отдельный Workflow для интеграции с QA-отделом
• Возможные стейты задач:
• TO AUTOMATE – при создании. Присутствует описание тест-кейса. Ожидает
аппрува команды автоматизации тестирования
• WAITING FOR AUTOMATION – аппрув получен, ожидает автоматизации
• IN PROGRESS – ТК находится в процессе автоматизации
• AUTOMATED READY – ТК автоматизирован
• WON’T BE AUTOMATED – ТК не будет автоматизирован
• Связь с обычными задачами через ссылки
• Связь с автоматизированными тестами через ссылки и автоматически
генерируемую документацию
8. Мы используем MonkeyTalk
• Наиболее стабильный
• Возможность доработки функционала
• Нет более подходящих альтернатив
• BDD
• Есть визуальная IDE с возможностью записи
действий пользователя
11. Первоначальное состояние у истоков
автоматизации
• ТК пишет команда QA
• Автоматизация тестов через IDE+record
• Автоматизация разработчиками и отделом QA
• В результате: ~50 UI-тестов, выполняемых за 1.5 часа
13. 1. Общие проблемы
• Мало документации
• Мало примеров
• Все баги и улучшения приходится допиливать самим
• Мало обсуждений на stackoverflow.com
• Нет поддержки с лета 2015 года
”I got a new master now…”
- The Genie
14. Но…
• Мы имеем доступ к открытому коду MonkeyTalk
• Сами можем править баги
• Можем дописывать новый функционал
• Не зависим от других разработчиков
• Быстрая реакция на возникающие проблемы
15. 2. Локализация
• IDE использует надписи на элементах, напр.:
Button “Sign In” Tap
• Не устойчиво к смене языка на симуляторе
• Не устойчиво к смене перевода локализуемой строки
• Изменение перевода ведёт к изменению команды во всех тестах
16. Использование идентификаторов
• Использование accessibilityIdentifier вместо строк, напр.:
Button [signin-button] Tap
• Проверка локализации через хелперы, напр.:
App LocalizationHelper ExecAndReturn localizedText
localizedStringForId sign_in_button_text
Button [signin-button] Verify ${localizedText} .text
18. 3. Нестабильное прохождение тестов
• Нестабильность может быть вызвана:
• Долгая загрузка симулятора
• Долгий старт приложения на симуляторе
• «Тормоза» тестирующей машины
• Долгая загрузка тела письма при прочтении
• Использование хелперов без ожидания
• …
• Много повторов тестов
• Много false-negative результатов
19. Повышение стабильности
• Ручное выставление задержек (не круто!)
• Привязка по возможности к элементам (напр., ProgressHUD)
• Патчинг MonkeyTalk для ожидания элементов при вызове
хелперов, напр.:
App ExecAndReturn result validateView [emails][0]
%waitfor=[folderTitle]
20. 4. Очень долгое выполнение всех тестов
• ~ 100 тестов
• 3 часа на одной машине
21. Снижение времени ожидания
• Разделение на папки по функциональности
(напр., auth, compose, …)
• Примерно одинаковое число тестов в папке
• Упал один тест категории – остальные не запускаем
• Запуск категорий на отдельных машинах
• Система нотификаций:
• Упала категория -> сообщение об ошибке категории
• Все категории прошли -> Сообщение об успехе прохождения тестов
• Результат: параллельное выполнение 5-6 категорий по 20 тестов
за 40 минут
22.
23. 5. Взаимодействие с iOS
• Контроль запуска и очистки симулятора
• Контроль запуска приложения
• Последовательное увеличение таймаута запусков
• Влияние на запуск приложения (например, по пушу)
• Сворачивание и перезапуск приложения
24. Блок описания теста
• В каждом тесте есть блок док. описания. Он состоит из следующих
пунктов:
• Обязательные
• Tasks – списки jira id задач
• Name - название теста
• Сategory – название категории
• Description – краткое описание теста
• Необязательные
• Args – аргументы
• Utils – аргументы для инфраструктуры запуска тестов
• Runtime – версия ОС, на которой нужно запускать тест
• По описанию автоматически может быть сгенерирована документация
• Проверка наличия всех обязательных блоков проводится
автоматически
25. Влияние на запуск приложения
• С помощью аргументов
• В приложении есть хелпер для работы
с аргументами запуска приложения
• В load методах необходимая
функциональность включается/эмулируется
• Так же может быть использован method swizzling
(то есть замена реализации метода для его сигнатуры).
26. Suite
• Отличается от suite в привычном понимании MT – это не
последовательность
• MT Suite – это совокупность тестов, выполняемых последовательно вне
зависимости от результата их выполнения с формированием общего
отчёта
• MT Suite реализован нами в общей инфраструктуре запуска тестов
• Suite – последовательность тестов:
• Требующих перезапуска приложения
• При падении одного теста перезапускается весь suite целиком
• Есть отдельный файл описания docs_suite
• Есть наследование аргументов из docs_suite в тестах suite
• Перезапуск приложения реализован через перезапуск симулятора без его
очистки
27. Перезапуск и сворачивание/разворачивание
приложения
• Перезапуск реализован через suite
• Для сворачивания/разворачивания приложения и ряда других
функций используем private API
• Так как тестовая сборка собирается только локально и никуда не
отправляется, то private API использовать можно
• Патчинг MT, чтобы принимающий сервер библиотеки не
останавливался при сворачивании приложения
• Пример вызовов из тестов:
App MRUITHelper Exec suspendApp
App MRUITHelper Exec wakeApp
28. 6. Повторное использование кода
• Много тестов имеют одинаковые участки кода, например
авторизацию
• MT позволяет запускать отдельные файлы как команду.
Например:
Script Login.mt Run login password
• При иерархической структуре файлов тестов требуется много
симлинков
• Не хватает стандартного механизма запуска отдельных тестов как
команд
30. Использование JS
• Помимо BDD-описания тестов MT позволяет использовать JS
• Возможность создания библиотеки для обработки конкретных
элементов
• Использование Page Object подхода
• Использование возможностей языка: ООП, циклы, функции…
31. 7. Работа с сетью
• Одно из требований к тестам - изолированность
• Тесты не могут влиять на исполнение друг друга
• При работе с сетью меняется состояние на
сервере, напр. прочитанность письма
• Если тест упал, но не вернул состояние сервера, то он влияет на
остальные тесты
• Тесты разных задач выполняются параллельно
на разных машинах
33. Стаббинг сетевых запросов
• Использование NSURLProtocol для перехватывания запросов по
определённым URL
• Работа через IMAP реализована через специальный прокси
• Возможности:
• Добавление обработчиков с помощью хелперов из теста
• Подмена ответов на сетевые запросы
• Проверки наличия запросов и их количества
• Добавление обработчиков с помощью аргументов запуска теста (напр,
для эмуляции отсутствия сети)
• Возможность добавления фильтров на IMAP-запросы в прокси из теста и
через аргументы
34. 8. Запуск тестов для разных почтовых
протоколов
• Задача:
• Есть ~250 тестов
• Они работают по JSON API через NSURLProtocol
• Множество тестов нужно запускать также и на IMAP
• Решение:
• Используется специальный аргумент в док. описании теста alt_args_cases
• Позволяет запускать один и тот же тест с каждым из параметров из
набора
• Эти аргументы совмещаются с args
• Для IMAP-тестов можно добавить аргумент IMAPMode и обрабатывать
его отдельно в хелперах
• Тесты расширить добавлением фильтров для IMAP-прокси
35. 9. Всё равно очень долго
• Категорий около 15
• Машин около 8
• Всего тестов около 300
• Суммарное время тестирования одной
задачи без очередей на машины ~2 часа
36. Распараллеливание запуска тестов на
одной машине
• Для каждого теста с аргументами создаётся свой уникальный id и
симулятор
• Задаётся максимальное количество одновременно запускаемых
симуляторов
• Каждый симулятор запускает MT-сервер на отдельном порту
37. Разбиение тестов по машинам
• Использование вместо папок тегов из док. описания для деления
тестов на группы
• Использование статистики времени выполнения тестов для
разделения тестов на группы, выполняющиеся на разных машинах
• Выполняются все тесты вне зависимости от падения одного в группе
• Новая система нотификаций
• Результаты всех групп объединяются
• Формируется общий отчёт
• Разработчикам приходит нотификация со ссылкой на отчёт
• В результате: 400 тестов за 45 минут
39. • От 50 нестабильных тестов за 90 минут
• До 400 стабильных за 45 минут
• Система нотификаций
• Композитная инфраструктура управления запуском тестов и групп
тестов (suite)
• Статистика выполнения тестов
• Библиотека Page Object-ов и общих JS-функций и ObjC-хелперов
Результаты автоматизации за год