Как развивать библиотеку компонентов, не ломая ее / Артур Удалов (Mail.Ru Group)Ontico
HighLoad++ 2017
Зал «Пекин + Шанхай», 8 ноября, 17:00
Тезисы:
http://www.highload.ru/2017/abstracts/2991.html
Нынче стало модно выделять UI-компоненты в отдельную библиотеку и использовать её в нескольких проектах. Мы в команде почты Mail.ru делаем так же, но столкнулись с проблемой: каждый разработчик, меняя библиотеку под свои нужды, обязательно ломает что-нибудь, что работало у других.
Я расскажу о том, как мы решили эту проблему, и о том, какие инструменты для этого можно использовать. Storybook, BackstopJS, Jest, Webdriver.io, TypeScript - в их числе.
Индустрия меняется прямо на глазах. Технология, еще вчера проходившая по категории "модно, но не нужно", сегодня используется даже бомжами, а завтра выбрасывается на свалку. Что учить, куда смотреть, какие книги читать? Я попробую рассказать свой взгляд на серверное программирование сейчас, в 2016 году.
SECON'2016. Тюменцев Евгений, Разработка надежных параллельных, распределенны...SECON
Набор практических приемов, которые позволяют создавать сложные многопоточные, параллельные, распределенные серверные приложения программистам без опыта сетевого и многопоточного программирования, работы с базами данных.
Как развивать библиотеку компонентов, не ломая ее / Артур Удалов (Mail.Ru Group)Ontico
HighLoad++ 2017
Зал «Пекин + Шанхай», 8 ноября, 17:00
Тезисы:
http://www.highload.ru/2017/abstracts/2991.html
Нынче стало модно выделять UI-компоненты в отдельную библиотеку и использовать её в нескольких проектах. Мы в команде почты Mail.ru делаем так же, но столкнулись с проблемой: каждый разработчик, меняя библиотеку под свои нужды, обязательно ломает что-нибудь, что работало у других.
Я расскажу о том, как мы решили эту проблему, и о том, какие инструменты для этого можно использовать. Storybook, BackstopJS, Jest, Webdriver.io, TypeScript - в их числе.
Индустрия меняется прямо на глазах. Технология, еще вчера проходившая по категории "модно, но не нужно", сегодня используется даже бомжами, а завтра выбрасывается на свалку. Что учить, куда смотреть, какие книги читать? Я попробую рассказать свой взгляд на серверное программирование сейчас, в 2016 году.
SECON'2016. Тюменцев Евгений, Разработка надежных параллельных, распределенны...SECON
Набор практических приемов, которые позволяют создавать сложные многопоточные, параллельные, распределенные серверные приложения программистам без опыта сетевого и многопоточного программирования, работы с базами данных.
Алексей Турчаников и Николай Сидоренко выступят с докладом об опыте внедрения автоматизированного тестирования через интерфейс (Web и десктоп) в их проекте: как проходили через целый лес организационных и технических "граблей" и в конце-концов добились своей цели.
В обзоре: SOAP UI, TestComplete, Ranorex, Cucumber, SpecFlow, Robot Framework + RIDE, Selenium WebDriver (Java & C#), White.А также: как не стоит нанимать тестировщиков-автоматизаторов, какой процент тестировщиков не начнет писать тесты, чем ценны тестировщицы-девушки.
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGDataArt
Дмитрий Лукьяненко, QA Automation рассматривает:
- Selenium IDE;
- Selenium WebDriver;
- Page Obgect Pattern;
- Page Factory Pattern;
- локаторы;
- как построить фреймворк и куда его можно дальше развивать.
AzovDevMeetup 2016 | Выстраивание процесса и применение Best Practices с нуля...JSC “Arcadia Inc”
Представьте себе ситуацию: к вам приходит заказчик, у него уже есть продукт, и вам надо организовать процесс и создать соответствующую инфраструктуру так, чтобы сделать работу над продуктом максимально удобной и эффективной. Какие шаги были сделаны и почему, какие проблемы встретились и как были решены проектной командой в вышеописанной ситуации, к чему всё это привело на данный момент — об этом и будет рассказано в докладе.
Константин Назаров – Распараллеливание сборки Parallels Desktop для Mac404fest
Идея доклада — рассказать об использовании Jenkins как не типичного инструмента для построения распределенной сборки продукта, зарабатывающего миллионы долларов. Мы поделимся секретами его адаптации под сборку билдов сложных систем/продуктов с многими компонентами и ускорения в разы этой задачи.
Наша проблема: линейная сборка продукта занимает 8 часов. А Jenkins «из коробки» не умеет собирать сложные иерархии. При этом писать код самостоятельно не хочется. В итоге мы придумали, как использовать существующий инструмент, пройдясь по нему напильником.
Кому будет интересно: Эти знания могут помочь людям, которые хотят построить эффективный CI, но не хотят тратить много времени на исследования.
Мы выложим наш код и материалы на GitHub. Это будет довольно практично.
Лайфхаки:
Используем Build Flow + Groovy скрипты чтобы оркестрировать сложную иерархию с параллельными ветвями и собирать результаты
Правильное использование префиксов в названиях job-ов помогают автоматизировать группировку по бранчам
Переиспользуем окружения сборки много раз, не удаляя их
Предыдущий пункт в итоге оставляет за собой кучу мусора, которую мы периодически очищаем при помощи системных Groovy скриптов по job префиксу
Группировка большого количества job-ов в проекты и бранчи с использованием Nested View
Дамп и разворачивание job-ов из системы контроля версий по шаблону
Ну и взгляд в будущее: автоматический анализ билд проблем.
http://2014.404fest.ru/reports/jenkins/
Автоматизация тестирования в iOS-проекте на примере ICQ / Д.Куркин, М.Манаев ...Ontico
РИТ++ 2017, AppsConf
Зал Найроби + Касабланка, 5 июня, 16:00
Тезисы:
http://appsconf.ru/2017/abstracts/2807.html
- Как мы решили связаться с автоматизацией тестирования и что из этого вышло.
- Наша инфраструктура для тестирования. Что тестируем, как тестируем и как следим за результатами.
- Как получать пользу от автоматизации, если продукт сильно меняется минимум раз в год.
- Особенности текущего инструментария. Что стоит учитывать и на что обратить внимание.
Быстрое расширение Robot Framework под свои нужды с использованием Pythonautomated-testing.info
Быстрое расширение Robot Framework под свои нужды с использованием Python, Михаил Поляруш
Когда мы начинаем заниматься автоматизацией тестирования ПО, мы редко знаем и понимаем, что нам надо будет делать, а тем более, как это нужно реализовать. Потому, выбираем самые простые решения, которые иногда даже не подразумевают программирования. Вы считаете, что успешная автоматизация может быть без программирования? Я уверен, что НЕТ, и с уверенностью могу сказать, что процесс автоматизации с помощью python и RobotFramework может значительно упростить Вам жизнь. Убедитесь в том, что архитектура RobotFramework очень гибкая, а python – лучший друг автоматизатора. Вас ждет увлекательная теория и много практики в живую.
Когда говорят о машинном обучении, обычно рассматривают его в контексте создания спам-фильтров, рекомендательных систем, распознавания текста, лиц и голоса. В данном докладе машинное обучение будет рассмотрено применительно к фармацевтике, а именно drug discovery. Доклад условно разделён на 3 части. В первой части Андрей на реальном примере рассмотрит реализацию и основные стадии пайплайна, который используется в drug discovery. Во второй части доклада применительно к C++ будут рассмотрены возможности, которые можно использовать для организации параллельных вычислений. В третьей части Андрей расскажет, как можно использовать распределённые вычисления для масштабирования существующего решения, когда нежелательно или невозможно поменять существующую кодовую базу.
Алексей Турчаников и Николай Сидоренко выступят с докладом об опыте внедрения автоматизированного тестирования через интерфейс (Web и десктоп) в их проекте: как проходили через целый лес организационных и технических "граблей" и в конце-концов добились своей цели.
В обзоре: SOAP UI, TestComplete, Ranorex, Cucumber, SpecFlow, Robot Framework + RIDE, Selenium WebDriver (Java & C#), White.А также: как не стоит нанимать тестировщиков-автоматизаторов, какой процент тестировщиков не начнет писать тесты, чем ценны тестировщицы-девушки.
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGDataArt
Дмитрий Лукьяненко, QA Automation рассматривает:
- Selenium IDE;
- Selenium WebDriver;
- Page Obgect Pattern;
- Page Factory Pattern;
- локаторы;
- как построить фреймворк и куда его можно дальше развивать.
AzovDevMeetup 2016 | Выстраивание процесса и применение Best Practices с нуля...JSC “Arcadia Inc”
Представьте себе ситуацию: к вам приходит заказчик, у него уже есть продукт, и вам надо организовать процесс и создать соответствующую инфраструктуру так, чтобы сделать работу над продуктом максимально удобной и эффективной. Какие шаги были сделаны и почему, какие проблемы встретились и как были решены проектной командой в вышеописанной ситуации, к чему всё это привело на данный момент — об этом и будет рассказано в докладе.
Константин Назаров – Распараллеливание сборки Parallels Desktop для Mac404fest
Идея доклада — рассказать об использовании Jenkins как не типичного инструмента для построения распределенной сборки продукта, зарабатывающего миллионы долларов. Мы поделимся секретами его адаптации под сборку билдов сложных систем/продуктов с многими компонентами и ускорения в разы этой задачи.
Наша проблема: линейная сборка продукта занимает 8 часов. А Jenkins «из коробки» не умеет собирать сложные иерархии. При этом писать код самостоятельно не хочется. В итоге мы придумали, как использовать существующий инструмент, пройдясь по нему напильником.
Кому будет интересно: Эти знания могут помочь людям, которые хотят построить эффективный CI, но не хотят тратить много времени на исследования.
Мы выложим наш код и материалы на GitHub. Это будет довольно практично.
Лайфхаки:
Используем Build Flow + Groovy скрипты чтобы оркестрировать сложную иерархию с параллельными ветвями и собирать результаты
Правильное использование префиксов в названиях job-ов помогают автоматизировать группировку по бранчам
Переиспользуем окружения сборки много раз, не удаляя их
Предыдущий пункт в итоге оставляет за собой кучу мусора, которую мы периодически очищаем при помощи системных Groovy скриптов по job префиксу
Группировка большого количества job-ов в проекты и бранчи с использованием Nested View
Дамп и разворачивание job-ов из системы контроля версий по шаблону
Ну и взгляд в будущее: автоматический анализ билд проблем.
http://2014.404fest.ru/reports/jenkins/
Автоматизация тестирования в iOS-проекте на примере ICQ / Д.Куркин, М.Манаев ...Ontico
РИТ++ 2017, AppsConf
Зал Найроби + Касабланка, 5 июня, 16:00
Тезисы:
http://appsconf.ru/2017/abstracts/2807.html
- Как мы решили связаться с автоматизацией тестирования и что из этого вышло.
- Наша инфраструктура для тестирования. Что тестируем, как тестируем и как следим за результатами.
- Как получать пользу от автоматизации, если продукт сильно меняется минимум раз в год.
- Особенности текущего инструментария. Что стоит учитывать и на что обратить внимание.
Быстрое расширение Robot Framework под свои нужды с использованием Pythonautomated-testing.info
Быстрое расширение Robot Framework под свои нужды с использованием Python, Михаил Поляруш
Когда мы начинаем заниматься автоматизацией тестирования ПО, мы редко знаем и понимаем, что нам надо будет делать, а тем более, как это нужно реализовать. Потому, выбираем самые простые решения, которые иногда даже не подразумевают программирования. Вы считаете, что успешная автоматизация может быть без программирования? Я уверен, что НЕТ, и с уверенностью могу сказать, что процесс автоматизации с помощью python и RobotFramework может значительно упростить Вам жизнь. Убедитесь в том, что архитектура RobotFramework очень гибкая, а python – лучший друг автоматизатора. Вас ждет увлекательная теория и много практики в живую.
Когда говорят о машинном обучении, обычно рассматривают его в контексте создания спам-фильтров, рекомендательных систем, распознавания текста, лиц и голоса. В данном докладе машинное обучение будет рассмотрено применительно к фармацевтике, а именно drug discovery. Доклад условно разделён на 3 части. В первой части Андрей на реальном примере рассмотрит реализацию и основные стадии пайплайна, который используется в drug discovery. Во второй части доклада применительно к C++ будут рассмотрены возможности, которые можно использовать для организации параллельных вычислений. В третьей части Андрей расскажет, как можно использовать распределённые вычисления для масштабирования существующего решения, когда нежелательно или невозможно поменять существующую кодовую базу.
Презентация доклада Максима Дроздова, менеджера проектов компании "ИСС Арт" "Контроль над распределенной командой".
Вебинар "Управление удаленной командой разработчиков".
Управление удаленной командой тестировщиковISS Art, LLC
Презентация доклада Константина Фирсанова, руководителя отдела контроля качества разработок компании "ИСС Арт" "Управление удаленной командой тестировщиков".
Вебинар "Управление удаленной командой разработчиков"
Видео: http://www.youtube.com/watch?v=vz0U3jQpHSM
Это обзор опыта применения лучших практик разработки программного обеспечения на разных проектах от госзаказов до видеоконференций в командах от 5 до 50 человек. В докладе будут описаны не только практики, но и то, как они применяются на реальных проектах и какие выгоды они действительно приносят.
Glib Rybalko, GlobalLogic’s Test Lead, consultant and trainer was among 26 known Ukrainian and international experts who took a word on IT Weekend Ukraine 2013. Glib discussed features of automated software testing, benefits and feasibility of using this approach on various projects. During his speech, Glib pointed all necessary steps of automated testing implementation and gave homework for those who were interested in this field and wanted to implement it in their projects.
Как построить свой фреймворк для автотестов?Dmitry Buzdin
Мы пройдемся по всем основным блокам построения тестового фреймворка и тому, как они связаны между собой. Вы научитесь собирать свое решение по автоматизации из библиотек с открытым кодом и делать так, чтобы они дополняли друг друга.
В этом докладе вы услышите историю о том, как можно построить процесс автоматизированного тестирования и непрерывной интеграции за короткий период времени. Мы поговорим о точках роста, развития и внедрения автоматизированного тестирования на уже существующем проекте. Вы узнаете, что с чего начинать автоматизированное тестирование и как выбрать "работающую" стратегию. После доклада вы захотите избавиться или значительно сократить ручное тестирование и ручной труд у себя на проекте. Вы откроете для себя целую систему, элементы который можно будет внедрять у себя, и которые будут работать.
Доклад будет интересен всем тестировщикам, разработчикам и менеджерам проектов.
Алексей Халайджи, Mail.Ru Group, «Как мы автоматизируем UI-тестирование в iOS...Mail.ru Group
Алексей рассказал, какие задачи и проблемы стояли перед командой в начале пути, какие технологии используются для автоматизации тестирования, какие проблемы при этом возникают и как решаются, а также поделится достигнутыми результатами.
Поплоухина Елена, Руководитель отдела тестирования в Usetech
https://vk.com/lena_flower
Расскажу об опыте организации процесса внутреннего тестирования проекта со строго формализованным техническим заданием от момента получения технического задания для тестирования требований до момента передачи релиза на приемочное тестирование.
2. Кто?
• Ира (Кефирка)
• 6 лет как тестировщик
• 1,5 года в роли удалёнщика
• Выступатор на конференциях
• Kefirkin.blogpost.com
• Irka-Kefirka
3. О чѐм говорим?
• Зачем нужно где-то хранить?
• Как выбрать?
• Личный опыт использования
• Живые примеры
• Ну и совушки
4. Повторение – мать
учения
• По википедии - прикладная программа,
разработанная с целью помочь разработчикам
программного обеспечения (программистам,
тестировщикам и др.) учитывать и контролировать
ошибки (баги), найденные в программах, пожелания
пользователей, а также следить за процессом
устранения этих ошибок и выполнения или
невыполнения пожеланий. (с)
• По-человечески – система хранения
багов, фич, тасков и т.д. и т.п.
5. А зачем?
• Можно же сказать лично
• А можно написать в skype
• Или на почту
• А потом разработчик сам скажет,
когда поправит
• Или у него можно будет спросить
6. И что дальше?
• Заводить систему
Зависит от:
свободных денежных средств
размера команды
размеров проекта
7. Нас мало, но мы в
тельняшках
• Google docs
• SkyDrive
• Другие онлайн-сервисы
хранения документов
8. Что можно?
• Хранить список задач
• Явно указывать, кто ответственный
• К задачам добавлять ниже описание
бага (подобие иерархии)
• Оставлять комментарии
14. Какие плюсы?
• Бесплатная
• Можно размещать на
собственном сервере
• Календарь и Диаграмма Ганта
• Интеграция с VCS
• Уведомления
• Workflow
• И ещё много чего
15. Минусы
• Требует обучения
• Очень сложная кастомизация
• Сложное управление правами
доступа
• Нет возможности поменять
Workflow
• Могут быть нестабильные
плагины, приводящие к краху
18. Какие плюсы?
• Проекты на подпроекты
• Сабтаски для Items
• Стабильные плагины
• Workflow для каждого проекта
можно свой
• Настройка оповещений
• Встроенный Work Log
• Интеграция с CVS
• Есть мобильная версия
19. Минусы
• За использование нужно
платить
• Обучение небольшое, но всё
же нужно
• Confluence не очень удобен
24. Какие плюсы?
• Всё в одном месте
• Полностью реализована иерархия
• Для тестировщиков МТМ и
Labcenter
• Создание авто-тестов на основе
имеющихся тест-кейсов
• Создание тест-кейсов на основе
багов
• Привязка багов к тест-кейсам
• Виртуальные среды для
тестирования
• Привязка изменения кода к багам и
задачам
• И куча всяких разностей ещё
25. Минусы
• Дорогая
• Сложность настройки
виртуальных сред для
тестирования
• Бывают проблемы с заливкой
кода на сервер
28. Выводы
• Хранить информацию – надо
• Можно начинать с малого
• Бесплатных систем не бывает
(даже redmine)
• При выборе следует учитывать:
• Интерфейс
• Удобство работы/настройки
• Потребности команды
• Возможность содержания
• Не бояться пробовать новое