Основные ошибки внедрения ATDD, BDD, CI, CD на проектах, Резчиков Алексей
Каждый новый проект, к которому Алексей подключается в качестве консультанта, уже имеет свою историю внедрения автоматизации тестирования, CI и CD. Истории очень разные, каждая интересна по-своему, каждая рассказывает об ошибках. О самых распространенных из них, а также о том, как их не допустить, Алексей расскажет в своем докладе.
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живыхautomated-testing.info
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живых, Андрей Ребров
Сейчас, когда интерес к автоматизации более чем велик, многие команды задумываются над вопросом – нужна ли автоматизация им самим? Нужно ли TDD? Какой CI сервер поставить? Какую автоматизацию применить? Да и вообще, какой первый шаг сделать?
В своем докладе я постараюсь рассказать основные приемы внедрения автоматизации:
- постановка цели автоматизации
- первые шаги
- анализ и метрики
- коммуникации
Конечной темой доклада будет переход к DevOps.
“Обезьянье тестирование” в мобильных проектах, Роман Подолян
Хотите уйти от проторённых путей, проверить приложение самыми разнообразными, случайными последовательностями действий? Задать ему встряску чтобы проверить его на выносливость? Сделать с ним то, что даже не собирались? Отдайте его “обезьяне”.
Проблемы автоматизации крупных проектов: TestComplete, Дмитрий Марков
Дмитрий в своем докладе рассмотрит следующие вопросы:
Инструмент TestComplete. В чем сила?
Чем отличается автоматизация мелкого, среднего, крупного проекта?
Нужно ли что-то дополнительно делать при автоматизации крупного проекта?
Ошибки на начальных стадиях автоматизации
Раз говорим об ошибках, то также поговорим о том, как можно построить все так, чтобы этих ошибок избежать
Практические набитые шишки автоматизатора
Совершенный тестовый фреймворк, Андрей Иваровский
Идеальный тестовый фреймворк – миф или реальность? Поиск “философского камня”.
Расширяемость – как впихнуть “невпихуемое” и объять необъятное?
Кейворд-дривен, дата-дривен – извращения или путь к совершенству?
Многопоточность – мультиплексор или “каждой твари по паре”?
Обо всем этом, а также о кое-чем еще я расскажу в своем докладе.
Фреймворк для регрессионного тестирования на основе WebDriver, Бордюг Иван
В этом докладе слушатели услышат об идее автоматизации для людей с разным уровнем знаний в этой области. Также слушатель увидит, как быстро могут создавать тестовые сценарии по технологии BDD, которые в будущем станут тестами для регрессионного тестирования. Доклад будет построен на уже существующей разработке докладчика, будут высветлены все позитивные и негативные стороны данного подхода, а также проблемы, которые удалось решить в процессе автоматизации и проблемы, с которыми столкнулась команда в процессе использования данного подхода.
За пределами PageObject, Дмитрий Жарий
Есть ли необходимость в использовании объектно-ориентированного подхода в автоматизации тестирования? Нужно ли нам экономить исходный код, или лучше скопировать, вставить и подправить? Что лучше, “сложное” ООП или простые “дубовые” тесты. Ответ зависит от Вашего проекта автоматизации и от дальнейших планов его развития. Если Вы планируете остановится на десятке тестов, то в таком случае в “более сложных практиках” необходимости нет. Если же Вы планируете долгосрочное развитие фреймворка автоматизации, то задуматься о правильной архитекторе и будущем росте необходимо уже прямо сейчас.
В своем докладе Дмитрий расскажет, как очень несложные практики ООП помогут сделать код еще проще и понятней. И поверьте, в хорошем коде может разобраться любой человек, а горы “вечно падающего копи-паста” будут просто ненавидеть. Также Дмитрий расскажет о том, как Автоматизация может тестировать сама себя при помощи легких UI тестов перед тем, как запустить более тяжелые функциональные тесты и сценарии. Он покажет, как написав код тестового набора всего лишь один раз, применить его для каждой страницы отдельно. Примеры кода к докладу будут на C#/.NET. Но, любую такую практику можно реализовать на любом общеизвестном и популярном языке программирования.
Keyword-driven testing, Геннадий Алпаев
Keyword-driven подход к автоматизации тестирования был описан в литературе более 10ти лет назад, однако в русскоязычных источниках по этой теме информации довольно мало. В докладе Геннадий расскажет о том, в чем заключается подход, когда применяется, его достоинства и недостатки, а также покажет пример практической реализации Keyword-driven подхода для простого тестируемого приложения с помощью TestComplete и SilkTest.
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живыхautomated-testing.info
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живых, Андрей Ребров
Сейчас, когда интерес к автоматизации более чем велик, многие команды задумываются над вопросом – нужна ли автоматизация им самим? Нужно ли TDD? Какой CI сервер поставить? Какую автоматизацию применить? Да и вообще, какой первый шаг сделать?
В своем докладе я постараюсь рассказать основные приемы внедрения автоматизации:
- постановка цели автоматизации
- первые шаги
- анализ и метрики
- коммуникации
Конечной темой доклада будет переход к DevOps.
“Обезьянье тестирование” в мобильных проектах, Роман Подолян
Хотите уйти от проторённых путей, проверить приложение самыми разнообразными, случайными последовательностями действий? Задать ему встряску чтобы проверить его на выносливость? Сделать с ним то, что даже не собирались? Отдайте его “обезьяне”.
Проблемы автоматизации крупных проектов: TestComplete, Дмитрий Марков
Дмитрий в своем докладе рассмотрит следующие вопросы:
Инструмент TestComplete. В чем сила?
Чем отличается автоматизация мелкого, среднего, крупного проекта?
Нужно ли что-то дополнительно делать при автоматизации крупного проекта?
Ошибки на начальных стадиях автоматизации
Раз говорим об ошибках, то также поговорим о том, как можно построить все так, чтобы этих ошибок избежать
Практические набитые шишки автоматизатора
Совершенный тестовый фреймворк, Андрей Иваровский
Идеальный тестовый фреймворк – миф или реальность? Поиск “философского камня”.
Расширяемость – как впихнуть “невпихуемое” и объять необъятное?
Кейворд-дривен, дата-дривен – извращения или путь к совершенству?
Многопоточность – мультиплексор или “каждой твари по паре”?
Обо всем этом, а также о кое-чем еще я расскажу в своем докладе.
Фреймворк для регрессионного тестирования на основе WebDriver, Бордюг Иван
В этом докладе слушатели услышат об идее автоматизации для людей с разным уровнем знаний в этой области. Также слушатель увидит, как быстро могут создавать тестовые сценарии по технологии BDD, которые в будущем станут тестами для регрессионного тестирования. Доклад будет построен на уже существующей разработке докладчика, будут высветлены все позитивные и негативные стороны данного подхода, а также проблемы, которые удалось решить в процессе автоматизации и проблемы, с которыми столкнулась команда в процессе использования данного подхода.
За пределами PageObject, Дмитрий Жарий
Есть ли необходимость в использовании объектно-ориентированного подхода в автоматизации тестирования? Нужно ли нам экономить исходный код, или лучше скопировать, вставить и подправить? Что лучше, “сложное” ООП или простые “дубовые” тесты. Ответ зависит от Вашего проекта автоматизации и от дальнейших планов его развития. Если Вы планируете остановится на десятке тестов, то в таком случае в “более сложных практиках” необходимости нет. Если же Вы планируете долгосрочное развитие фреймворка автоматизации, то задуматься о правильной архитекторе и будущем росте необходимо уже прямо сейчас.
В своем докладе Дмитрий расскажет, как очень несложные практики ООП помогут сделать код еще проще и понятней. И поверьте, в хорошем коде может разобраться любой человек, а горы “вечно падающего копи-паста” будут просто ненавидеть. Также Дмитрий расскажет о том, как Автоматизация может тестировать сама себя при помощи легких UI тестов перед тем, как запустить более тяжелые функциональные тесты и сценарии. Он покажет, как написав код тестового набора всего лишь один раз, применить его для каждой страницы отдельно. Примеры кода к докладу будут на C#/.NET. Но, любую такую практику можно реализовать на любом общеизвестном и популярном языке программирования.
Keyword-driven testing, Геннадий Алпаев
Keyword-driven подход к автоматизации тестирования был описан в литературе более 10ти лет назад, однако в русскоязычных источниках по этой теме информации довольно мало. В докладе Геннадий расскажет о том, в чем заключается подход, когда применяется, его достоинства и недостатки, а также покажет пример практической реализации Keyword-driven подхода для простого тестируемого приложения с помощью TestComplete и SilkTest.
* Рассказы о том, как построить свою систему для управления своим процессом тестирования из своих подручных материалов для своих профессиональных нужд.
* Инструкция по сбору стихов из различного сора.
* Перекладывание творческих позывов на производственные рельсы.
* Способ стать незаметным и незаменимым в процессе разработки.
* Делаем процесс тестирования наглядным и предсказуемым.
* Создаем условия, при которых все заинтересованные лица в проекте сидят с довольными лицами.
Евгений Джамалов. Agile в условиях мульти-вендорности и распределённых команд.ScrumTrek
Мы запустили 12 команд за 9 месяцев. У нас дружат 7 вендоров. Разрабатываем 4 больших продукта. Люди разбросаны по 7-ми локациям. В команде может быть до 4 представителей вендоров. Как минимум, по 1 человеку от другого вендора в команде. Сказка? Этот доклад о том, как мы их "дружили" и синхронизировали. Мой опыт и доклад интересны тем, что я столкнулся с проблемой, которой не было найдено никакого решения в свободном доступе. Мне хотелось бы в формате сказки, поделится с вами тем, как именно мы строили нашу работу и отношения для достижения результата, а так же рассказать, как и почему мы оказались в такой ситуации. К сожалению, много придётся оставить за кадром... так что - спрашивайте!
Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 1...ScrumTrek
В компании «1С-Битрикс более 10 лет успешно используется плеяда Agile методологий как для управления продуктом, так и для развития технологической платформы: от XP до Model Storming и Story Mappings, от глубокого проникновения всех «бойцов» общими командными целями и интенсивных визуальных коммуникаций без ТЗ, до выполнения топ-менеджерами компании интегрирующих ролей Scrum Master/ProductOwner, вплоть до парного программирования с генеральным директором. Самобытное и глубокое проникновение в культуру команды принципов Agile Manifesto, уважение клиента, возведенное в культ, с искренним желанием решить его технологические задачи, практическое стремление к техническому совершенству. Мы расскажем об этом, поделимся собственным опытом и инструментами, расскажем что работает лучше и когда, а что не взлетает ни при каких условиях. Особое внимание уделим особенностям применения Agile к задачам, требующим глубокого системного анализа и проектирования.
Картинки к моему рассказу о том, что не всегда круто спешить и бежать впереди паровоза при оптимизации и внедрении новых модных решений. Тезисы тут: http://junior.highload.ru/2016/abstracts/2221.html
- почему PHP программисты снискали дурную славу;
- что делать, чтобы стать хорошим программистом;
- как писать идеальный код;
- что такое командная разработка проекта;
- учет позиции бизнеса при разработке проекта;
- основные задачи, который должен решать программист;
Картинки к моему рассказу о том, что такое фреймворки и с чем их едят, что лучше не есть и как выбрать приправы для приготовления. Тезисы тут: http://backendconf.ru/2016/abstracts/2123.html
Картинки к моему рассказу о том, как мы делаем Банки.ру. Некоторые слайды очень неоднозначны без текста. Тезисы тут: http://nastachku.ru/lectures?lecture_id=630#lecture_630
Видео тут https://www.youtube.com/watch?v=m5QuiTZwMrU
Быстрое расширение Robot Framework под свои нужды с использованием Pythonautomated-testing.info
Быстрое расширение Robot Framework под свои нужды с использованием Python, Михаил Поляруш
Когда мы начинаем заниматься автоматизацией тестирования ПО, мы редко знаем и понимаем, что нам надо будет делать, а тем более, как это нужно реализовать. Потому, выбираем самые простые решения, которые иногда даже не подразумевают программирования. Вы считаете, что успешная автоматизация может быть без программирования? Я уверен, что НЕТ, и с уверенностью могу сказать, что процесс автоматизации с помощью python и RobotFramework может значительно упростить Вам жизнь. Убедитесь в том, что архитектура RobotFramework очень гибкая, а python – лучший друг автоматизатора. Вас ждет увлекательная теория и много практики в живую.
Автоматизация тестирования как сервис, Павел Сташевский
Все мы хотим получать качественные сервисы. Мы хотим, чтобы обслуживание было быстрым, качественным и недорогим. Нам важно получить удовольствие от сервиса, будь то парикмахерская или бронирование авиабилетов. Автоматизация тестирования в этом плане практически не отличается от других сервисов, особенно, если она развивается в крупной компании. При этом нужно учесть стек технологий и уровень развития проекта и при этом не наступить на те грабли, что мы собрали при автоматизации тестирования других продуктов. Как строить такой сервис, как его адаптировать под различные команды и получать предсказуемый результат, именно про эти вопросы Павел расскажет в своем докладе. И все это на примерах из 2ГИС.
* Рассказы о том, как построить свою систему для управления своим процессом тестирования из своих подручных материалов для своих профессиональных нужд.
* Инструкция по сбору стихов из различного сора.
* Перекладывание творческих позывов на производственные рельсы.
* Способ стать незаметным и незаменимым в процессе разработки.
* Делаем процесс тестирования наглядным и предсказуемым.
* Создаем условия, при которых все заинтересованные лица в проекте сидят с довольными лицами.
Евгений Джамалов. Agile в условиях мульти-вендорности и распределённых команд.ScrumTrek
Мы запустили 12 команд за 9 месяцев. У нас дружат 7 вендоров. Разрабатываем 4 больших продукта. Люди разбросаны по 7-ми локациям. В команде может быть до 4 представителей вендоров. Как минимум, по 1 человеку от другого вендора в команде. Сказка? Этот доклад о том, как мы их "дружили" и синхронизировали. Мой опыт и доклад интересны тем, что я столкнулся с проблемой, которой не было найдено никакого решения в свободном доступе. Мне хотелось бы в формате сказки, поделится с вами тем, как именно мы строили нашу работу и отношения для достижения результата, а так же рассказать, как и почему мы оказались в такой ситуации. К сожалению, много придётся оставить за кадром... так что - спрашивайте!
Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 1...ScrumTrek
В компании «1С-Битрикс более 10 лет успешно используется плеяда Agile методологий как для управления продуктом, так и для развития технологической платформы: от XP до Model Storming и Story Mappings, от глубокого проникновения всех «бойцов» общими командными целями и интенсивных визуальных коммуникаций без ТЗ, до выполнения топ-менеджерами компании интегрирующих ролей Scrum Master/ProductOwner, вплоть до парного программирования с генеральным директором. Самобытное и глубокое проникновение в культуру команды принципов Agile Manifesto, уважение клиента, возведенное в культ, с искренним желанием решить его технологические задачи, практическое стремление к техническому совершенству. Мы расскажем об этом, поделимся собственным опытом и инструментами, расскажем что работает лучше и когда, а что не взлетает ни при каких условиях. Особое внимание уделим особенностям применения Agile к задачам, требующим глубокого системного анализа и проектирования.
Картинки к моему рассказу о том, что не всегда круто спешить и бежать впереди паровоза при оптимизации и внедрении новых модных решений. Тезисы тут: http://junior.highload.ru/2016/abstracts/2221.html
- почему PHP программисты снискали дурную славу;
- что делать, чтобы стать хорошим программистом;
- как писать идеальный код;
- что такое командная разработка проекта;
- учет позиции бизнеса при разработке проекта;
- основные задачи, который должен решать программист;
Картинки к моему рассказу о том, что такое фреймворки и с чем их едят, что лучше не есть и как выбрать приправы для приготовления. Тезисы тут: http://backendconf.ru/2016/abstracts/2123.html
Картинки к моему рассказу о том, как мы делаем Банки.ру. Некоторые слайды очень неоднозначны без текста. Тезисы тут: http://nastachku.ru/lectures?lecture_id=630#lecture_630
Видео тут https://www.youtube.com/watch?v=m5QuiTZwMrU
Быстрое расширение Robot Framework под свои нужды с использованием Pythonautomated-testing.info
Быстрое расширение Robot Framework под свои нужды с использованием Python, Михаил Поляруш
Когда мы начинаем заниматься автоматизацией тестирования ПО, мы редко знаем и понимаем, что нам надо будет делать, а тем более, как это нужно реализовать. Потому, выбираем самые простые решения, которые иногда даже не подразумевают программирования. Вы считаете, что успешная автоматизация может быть без программирования? Я уверен, что НЕТ, и с уверенностью могу сказать, что процесс автоматизации с помощью python и RobotFramework может значительно упростить Вам жизнь. Убедитесь в том, что архитектура RobotFramework очень гибкая, а python – лучший друг автоматизатора. Вас ждет увлекательная теория и много практики в живую.
Автоматизация тестирования как сервис, Павел Сташевский
Все мы хотим получать качественные сервисы. Мы хотим, чтобы обслуживание было быстрым, качественным и недорогим. Нам важно получить удовольствие от сервиса, будь то парикмахерская или бронирование авиабилетов. Автоматизация тестирования в этом плане практически не отличается от других сервисов, особенно, если она развивается в крупной компании. При этом нужно учесть стек технологий и уровень развития проекта и при этом не наступить на те грабли, что мы собрали при автоматизации тестирования других продуктов. Как строить такой сервис, как его адаптировать под различные команды и получать предсказуемый результат, именно про эти вопросы Павел расскажет в своем докладе. И все это на примерах из 2ГИС.
Тестирование в PHP: Inception? Perception? Codeception!, Михаил Боднарчук
Михаил в своем докладе затронет следующие темы:
“Terra Incognita” тестирования в PHP
Знакомимся с Codeception
Пробуем тестировать простое Веб приложение
Используем паттерн PageObject в Codeception
Интегрируемся с фреймворками и базой данных
Расширяем стандартные модули
Делаем покрытие кода
Тестируем API
Генерируем читабельные отчеты
И как бонус: пробуем на вкус сценарные юнит-тесты.
Швейцарский нож для Android, Сергей Высоцкий
При тестировании мобильных приложений порой возникают проблемы, адекватный разбор которых возможен только непосредственно на устройстве. Увы поставщики смартфонов и софта для написания мобильного ПО не предоставляют практически никаких средств для подобной работы. Сергей расскажет, как при помощи python’а и небольшой сноровки получить маленький централизованный аналитический центр, к которому можно подключить на лету практически любое устройство. А также какие проблемы встречаются при попытках измерить производительность на мобильных устройствах (и через мобильную сеть) и как их проще искать. Это меньше ста строчек кода и море удовольствия.
Тестирование производительности Ajax приложений с помощью JMeter, Владимир Примаков
В этом докладе будет раскрыт вопрос автоматизации тестирования производительности Ajax приложений с помощью бесплатного инструмента jmeter. Я расскажу об основных особенностях и трудностях автоматизации производительности Ajax приложений, о том, с какими конкретно проблемами я сталкивался и как они решались. Также я приведу ряд полезных советов, которые, возможно, облегчат вашу жизнь, если Вы вдруг решитесь провести тестирование производительности ajax приложений.
Философия и построение тестового фреймворка на основе BDD в PHP проектахautomated-testing.info
Философия и построение тестового фреймворка на основе BDD в PHP проектах, Зозуленко Алексей
Доклад содержит реальный опыт реального проекта, написанного на PHP с использованием подхода BDD (Behavior Driven Development). Будут рассмотрены практические стороны архитектуры тестового фреймворка с разных сторон: патернов (PageObject), уровня абстракций, функциональной декомпозиции тестов. Также Вы познакомитесь с инструментом Behat, который играет далеко не последнюю роль для фреймворка.
В поисках магической кнопки или как приручить SOAP UI, Михаил Дырда
Жил да был проект – чудище многосервисное. Многие тестировщики пытались одолеть его тестом умелым да скриптом надежным. Да только на месте каждого протестированного сервиса вырастало два новых, еще асинхроннее предыдущего. Пригорюнились богатыри-тестеры, поняли, что не одолеть им зверя коварного копипастом булатным. И решили открыть они рукописи древние – мануалы-священные. И познали они тайну заветную – тайну кнопки магической… Это только присказка, а доклад будет о том, какими средствами располагает SOAP UI для расширения функциональности и как знания об этом могут облегчить жизнь Вам и Вашим коллегам.
Баба-Яга против! — Роман Дворнов, Ostrovok.ruYandex
В последнее время во фронтенде появляется столько нового и внедряется настолько быстро, что не все успевают осознать последствия. Хорошо это или плохо? Рассмотрим некоторые новинки с точки зрения «за», а главное – «против».
В последнее время во фронтенде появляется столько нового и внедряется настолько быстро, что не все успевают осознать последствия. Хорошо это или плохо? Рассмотрим некоторые новинки с точки зрения «за», а главное – «против».
Конференция FrontTalks, Екатеринбург, 19 сентября
Видео: https://vimeo.com/107694664
QA Fest 2019. Андрей Солнцев. Десять причин моей ненавистиQAFest
Меня часто спрашивают, за что я не люблю в тестах Page Objects, TestNG, ReportPortal, try/catch, циклы и условия, неявные ожидания, явные ожидания, Dependency injection, Spring и т.д.
Расскажу коротко и быстро. На каждую тему 5 минут.
11 ключевых ошибок в разработке интернет-проектовborovoystudio
Презентация выступления Виталия Денисенкова, директора Студии Борового, на семинаре по интернет-маркетингу и брендингу «Стань эффективнее!» в Минске, 6 августа 2015 года.
В докладе будет:
- что такое F.I.R.S.T
- организация кода приложения для повышения его тестируемости, поддерживаемости и производительности
- какой тест-фреймворк выбрать для решения какой задачи?
- какие виды тестирования бывают и за какие из них отвечают разработчики?
- как тратить больше времени на код, а не на тесты
- как и какие метрики тестирования собирать
1. Почему это не работает?
или
Записки консультанта
Февраль 2012
Алексей Резчиков
2. Обо мне
Консультант по Testing
Automation, Continuous
Integration и Continuous Delivery
Java разработчик и тимлид уже
более 6-ти лет
В разное время работал project,
resource, development и
competency manager
Последователь XP/Agile/Lean
Евангелист Spring Framework в
2
рамках SpringByExample.com.ua
@twincengray #atdays
8. А на самом деле…
На самом деле проблема оказалась в
отсутствии структурированных требований и
невозможности регрессионного
тестирования
@twincengray #atdays
8
9. Сказка №2
Распределенное клиент-
серверное приложение
Сервер и клиент тоже
веб-приложения
Отраслевые особенности
Работающий процесс
Continuous Deployment
@twincengray #atdays
9
10. Проблема и решение
Проблема:
Нет возможности поставлять
продукт быстро из-за
большого объема ручного
тестирования
Предложенное решение:
Внедрение
автоматизированного
тестирования и CI
@twincengray #atdays
10
11. А на самом деле…
Отсутствие низкоуровневых тестов не
позволяет, даже при наличии UI тестов
оперативно найти и устранить
неисправность
@twincengray #atdays
11
12. «Хорошо, но плохо»
Это про внедрение автоматизации.
Из моего опыта только единицы
заказчиков могут конкретно ответить
на вопрос зачем им автоматизация
Остальные не готовы за это платить
@twincengray #atdays
12
13. 5 почему (почему не
работает)
Why?
Why?
Why?
Why?
Why?
@twincengray #atdays
13
14. Соответствие цели внедрения средствам
(практикам внедрения)
Правильное понимание/постановка цели
внедрения
Правильное определение проблемы,
которую будет решать внедрение той или
иной практики
Осознание наличия проблемы
14
Правильная постановка и понимание целей
проекта (продукта)
@twincengray #atdays
15. Мы поговорим про
Соответствие цели внедрения средствам
(практикам внедрения)
Правильное понимание/постановка цели
внедрения
Правильное определение проблемы,
которую будет решать внедрение той или
иной практики
@twincengray #atdays
15
16. Понятия/практики
(buzzwords)
ATDD – Acceptance Test Driven Development
BDD – Behavior Driven Development
CI – Continuous Integration
CD – Continuous Delivery
@twincengray #atdays
16