“Можно ли перевернуть пирамиду?” – автоматизируем тестирование с меньшим числ...Igor Khrol
Когда мы говорим об автоматизации тестирования, чаще всего вспоминается Selenium, Microsoft Coded UI, QTP и другие аналогичные инструменты. Мы хотим воспроизводить действия ручного тестирования с максимальной точностью, чтобы можно было с уверенностью сказать, что тот или иной тест-скрипт повторяет какую-то часть сложившихся на проекте тестов. Когда же тестов становится чуть больше, то мы обнаруживаем, что наши тесты запускаются долго, работают нестабильно. После чего мы начинаем говорить о параллелизации, виртуализации, четырёхслойной архитектуре фреймворка и прочих жутко интересных вещах… Это всё очень хорошо, но главная цель где-то остаётся в стороне – контроль качества нашего продукта.
В своём докладе я попытаюсь слегка задать направление другой альтернативе: отойти от автотестов через пользовательский интерфейс в сторону более низкоуровневых, которые значительно быстрее и стабильнее. Если вас также волнует “переворачивание” пирамиды автоматизации тестирования, то приглашаю присоединиться к обсуждению этой сложной и важной темы.
“Можно ли перевернуть пирамиду?” – автоматизируем тестирование с меньшим числ...Igor Khrol
Когда мы говорим об автоматизации тестирования, чаще всего вспоминается Selenium, Microsoft Coded UI, QTP и другие аналогичные инструменты. Мы хотим воспроизводить действия ручного тестирования с максимальной точностью, чтобы можно было с уверенностью сказать, что тот или иной тест-скрипт повторяет какую-то часть сложившихся на проекте тестов. Когда же тестов становится чуть больше, то мы обнаруживаем, что наши тесты запускаются долго, работают нестабильно. После чего мы начинаем говорить о параллелизации, виртуализации, четырёхслойной архитектуре фреймворка и прочих жутко интересных вещах… Это всё очень хорошо, но главная цель где-то остаётся в стороне – контроль качества нашего продукта.
В своём докладе я попытаюсь слегка задать направление другой альтернативе: отойти от автотестов через пользовательский интерфейс в сторону более низкоуровневых, которые значительно быстрее и стабильнее. Если вас также волнует “переворачивание” пирамиды автоматизации тестирования, то приглашаю присоединиться к обсуждению этой сложной и важной темы.
Out-of-the-box WebDriver API provides two main classes: WebDriver and WebElement. Webium library helps you to extend it to whatever deep UI object structure you need. You can describe basic elements (e.g. Button, Input), construct complex elements (e.g. Calendar) from small pieces and at the end put it all together into your Page Objects. Webium is free and open-source. In my speech I’ll present your how to use it effectively if you want to write Selenium tests in Python.
Современный мир ускоряется, и от тестирования требуется быстрые и стабильные тесты. В этом мастер-классе предлагается уйти от UI автоматизации и перейти на уровень ниже "пирамиды тестирования", на уровень WEB API. Не обещаю теорию, но будет много практических кейсов. В качестве примера я возьму популярный веб сайт с открытым API и покажу как за относительно небольшое время можно создавать хорошие тесты! Причем тесты мы будем создавать совместно, и особых навыков программирования от участников здесь не потребуется, достаточно включить логику и желание освоить что-то новое.
В этом докладе вы услышите историю о том, как можно построить процесс автоматизированного тестирования и непрерывной интеграции за короткий период времени. Мы поговорим о точках роста, развития и внедрения автоматизированного тестирования на уже существующем проекте. Вы узнаете, что с чего начинать автоматизированное тестирование и как выбрать "работающую" стратегию. После доклада вы захотите избавиться или значительно сократить ручное тестирование и ручной труд у себя на проекте. Вы откроете для себя целую систему, элементы который можно будет внедрять у себя, и которые будут работать.
Доклад будет интересен всем тестировщикам, разработчикам и менеджерам проектов.
QA Fest 2016. Александр Неделяев. Браузерные помощники тестировщикаQAFest
В темные времена доминации Internet Explorer на рынке браузеров, тестировщик оставался один на один с тестируемым приложением, и лишь усердие, трудолюбие и крепкий алкоголь могли спасти его от безумия и профессионального выгорания.
К счастью, времена изменились. Современные браузеры скрывают в себе множество полезных функций и имеют тысячи плагинов, способных помочь тестировщику веб приложений. Я расскажу вам о браузерных плагинах, которые значительно облегчили тестирование верстки, поизводительности, отзывчивости сайта, позволили мне ускорить выполнение рутинных задач, а также повысили личную эффективность.
Автоматизация визуального тестирования адаптивного дизайна на примере Galen F...COMAQA.BY
Автоматизация тестирования визуальных регрессий, как особый вид тестирования, может поставить в тупик даже опытных специалистов своей отрасли. Тем более, если речь идёт об адаптивном дизайне.
Задача тестирования адаптивной верстки не является простой, хотя бы по той причине, что требует большого времени на проверку отображения визуального контента и покрытие всей требуемой матрицы платформ, браузеров и разрешений экрана.
Тем не менее существуют способы эффективного использования таких инструментов как Galen Framework и Applitools Eyes и интеграции их в уже существующую среду тестирования.
На наглядном примере сайта, имеющего адаптивный дизайн, я расскажу о том, как можно с лёгкостью применять вышеуказанные инструменты с целью избежать как можно больше разнообразных регрессионных визуальных ошибок.
Также будут подробно рассмотрены варианты построения архитектуры тестов и организации работы с дизайном приложения в целом.
Наталья Чуфырина, Mail.Ru Group, «Как создать команду по автоматизации тестир...Mail.ru Group
Существует мнение, что от разработчиков системы автоматизированных тестов требуется высокая квалификация в области разработки программного обеспечения и солидный багаж знаний. Обычно таких людей в команде тестирования не много. Но можно начать работы по качественной автоматизации тестирования, даже не имея такого опыта. В докладе речь пойдет о:
отборе рекрутов в программу обучения автоматизации тестирования;
первичном пороге для вхождения в рекруты;
составлении учебной программы;
промежуточном контроле и испытаниях;
начале работы над реальными проектами;
подводных камнях и ошибках, которые можно допустить.
Применение этих знаний на собственном опыте позволило компании получить высокое покрытие проекта тестами и достичь результатов, когда каждый из команды разрабатывает и поддерживает автотесты, а также самостоятельно автоматизирует новые проекты.
Максим Богуславский, Banki.ru, «Как вырастить в себе автоматизатора и разрабо...Mail.ru Group
Многие тестировщики по той или иной причине задумываются о том, чтобы начать писать автотесты. Доклад ориентирован на тех, кто хочет попробовать изучить автоматизацию, либо пробовал, но не справился. Почему у кого-то получилось, а у кого-то нет? Какие навыки и личные качества могут помочь нам в этом или помешать? Стоит ли пытаться? В своем докладе Максим постарался дать ответ на эти вопросы.
Способы организаций больших Java проектов по Автоматизированному тестированиюCOMAQA.BY
В процессе работы автоматизатора часто приходится сталкиваться с написанием новых фреймворков или модификации прежде написанных. И тут возникает ощущение, что "когда-то я уже это писал". В ходе доклада я расскажу как же решить известную задачу "не повторяться" в рамках большого проекта или кросс-проектно или почему работа автоматизатора часто требует навыков системного администрирования, программирования, "девопса".
Непрерывная интеграция и автотесты. Сравнительный анализ инструментовCOMAQA.BY
По-настоящему автоматизированными тесты можно назвать только тогда, когда из процесса тестирования полностью исключается человек. В идеале участие человека должно сводиться к просмотру отчетов о результатах автотестирования, которые регулярно приходят ему на почту.
Достичь этого можно только одним способом - с помощью инструментов непрерывной интеграции. Какой же инструмент лучше выбрать? Почему? Так ли этот выбор важен или можно просто взять любой из них и начать использовать?
Сравним самые популярные Java-совместимые инструменты CI и сделаем выводы!
Видео: http://www.youtube.com/watch?v=vz0U3jQpHSM
Это обзор опыта применения лучших практик разработки программного обеспечения на разных проектах от госзаказов до видеоконференций в командах от 5 до 50 человек. В докладе будут описаны не только практики, но и то, как они применяются на реальных проектах и какие выгоды они действительно приносят.
Out-of-the-box WebDriver API provides two main classes: WebDriver and WebElement. Webium library helps you to extend it to whatever deep UI object structure you need. You can describe basic elements (e.g. Button, Input), construct complex elements (e.g. Calendar) from small pieces and at the end put it all together into your Page Objects. Webium is free and open-source. In my speech I’ll present your how to use it effectively if you want to write Selenium tests in Python.
Современный мир ускоряется, и от тестирования требуется быстрые и стабильные тесты. В этом мастер-классе предлагается уйти от UI автоматизации и перейти на уровень ниже "пирамиды тестирования", на уровень WEB API. Не обещаю теорию, но будет много практических кейсов. В качестве примера я возьму популярный веб сайт с открытым API и покажу как за относительно небольшое время можно создавать хорошие тесты! Причем тесты мы будем создавать совместно, и особых навыков программирования от участников здесь не потребуется, достаточно включить логику и желание освоить что-то новое.
В этом докладе вы услышите историю о том, как можно построить процесс автоматизированного тестирования и непрерывной интеграции за короткий период времени. Мы поговорим о точках роста, развития и внедрения автоматизированного тестирования на уже существующем проекте. Вы узнаете, что с чего начинать автоматизированное тестирование и как выбрать "работающую" стратегию. После доклада вы захотите избавиться или значительно сократить ручное тестирование и ручной труд у себя на проекте. Вы откроете для себя целую систему, элементы который можно будет внедрять у себя, и которые будут работать.
Доклад будет интересен всем тестировщикам, разработчикам и менеджерам проектов.
QA Fest 2016. Александр Неделяев. Браузерные помощники тестировщикаQAFest
В темные времена доминации Internet Explorer на рынке браузеров, тестировщик оставался один на один с тестируемым приложением, и лишь усердие, трудолюбие и крепкий алкоголь могли спасти его от безумия и профессионального выгорания.
К счастью, времена изменились. Современные браузеры скрывают в себе множество полезных функций и имеют тысячи плагинов, способных помочь тестировщику веб приложений. Я расскажу вам о браузерных плагинах, которые значительно облегчили тестирование верстки, поизводительности, отзывчивости сайта, позволили мне ускорить выполнение рутинных задач, а также повысили личную эффективность.
Автоматизация визуального тестирования адаптивного дизайна на примере Galen F...COMAQA.BY
Автоматизация тестирования визуальных регрессий, как особый вид тестирования, может поставить в тупик даже опытных специалистов своей отрасли. Тем более, если речь идёт об адаптивном дизайне.
Задача тестирования адаптивной верстки не является простой, хотя бы по той причине, что требует большого времени на проверку отображения визуального контента и покрытие всей требуемой матрицы платформ, браузеров и разрешений экрана.
Тем не менее существуют способы эффективного использования таких инструментов как Galen Framework и Applitools Eyes и интеграции их в уже существующую среду тестирования.
На наглядном примере сайта, имеющего адаптивный дизайн, я расскажу о том, как можно с лёгкостью применять вышеуказанные инструменты с целью избежать как можно больше разнообразных регрессионных визуальных ошибок.
Также будут подробно рассмотрены варианты построения архитектуры тестов и организации работы с дизайном приложения в целом.
Наталья Чуфырина, Mail.Ru Group, «Как создать команду по автоматизации тестир...Mail.ru Group
Существует мнение, что от разработчиков системы автоматизированных тестов требуется высокая квалификация в области разработки программного обеспечения и солидный багаж знаний. Обычно таких людей в команде тестирования не много. Но можно начать работы по качественной автоматизации тестирования, даже не имея такого опыта. В докладе речь пойдет о:
отборе рекрутов в программу обучения автоматизации тестирования;
первичном пороге для вхождения в рекруты;
составлении учебной программы;
промежуточном контроле и испытаниях;
начале работы над реальными проектами;
подводных камнях и ошибках, которые можно допустить.
Применение этих знаний на собственном опыте позволило компании получить высокое покрытие проекта тестами и достичь результатов, когда каждый из команды разрабатывает и поддерживает автотесты, а также самостоятельно автоматизирует новые проекты.
Максим Богуславский, Banki.ru, «Как вырастить в себе автоматизатора и разрабо...Mail.ru Group
Многие тестировщики по той или иной причине задумываются о том, чтобы начать писать автотесты. Доклад ориентирован на тех, кто хочет попробовать изучить автоматизацию, либо пробовал, но не справился. Почему у кого-то получилось, а у кого-то нет? Какие навыки и личные качества могут помочь нам в этом или помешать? Стоит ли пытаться? В своем докладе Максим постарался дать ответ на эти вопросы.
Способы организаций больших Java проектов по Автоматизированному тестированиюCOMAQA.BY
В процессе работы автоматизатора часто приходится сталкиваться с написанием новых фреймворков или модификации прежде написанных. И тут возникает ощущение, что "когда-то я уже это писал". В ходе доклада я расскажу как же решить известную задачу "не повторяться" в рамках большого проекта или кросс-проектно или почему работа автоматизатора часто требует навыков системного администрирования, программирования, "девопса".
Непрерывная интеграция и автотесты. Сравнительный анализ инструментовCOMAQA.BY
По-настоящему автоматизированными тесты можно назвать только тогда, когда из процесса тестирования полностью исключается человек. В идеале участие человека должно сводиться к просмотру отчетов о результатах автотестирования, которые регулярно приходят ему на почту.
Достичь этого можно только одним способом - с помощью инструментов непрерывной интеграции. Какой же инструмент лучше выбрать? Почему? Так ли этот выбор важен или можно просто взять любой из них и начать использовать?
Сравним самые популярные Java-совместимые инструменты CI и сделаем выводы!
Видео: http://www.youtube.com/watch?v=vz0U3jQpHSM
Это обзор опыта применения лучших практик разработки программного обеспечения на разных проектах от госзаказов до видеоконференций в командах от 5 до 50 человек. В докладе будут описаны не только практики, но и то, как они применяются на реальных проектах и какие выгоды они действительно приносят.
QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQAFest
В своем докладе я расскажу, как мы внедряли devops в банке, а конкретнее какую роль в этом процессе сыграло тестирование. Также расскажу с какими проблемами столкнулись, и как мы их устраняли. И да, каких результатов смогли добиться уже через полгода. А самое интересное, покажу как мы смогли добиться того, чтоб у нас pull request долетал до боя за 3 часа со всеми этапами тестирования.
Доклад будет содержать большое количество лайфхаков и обзоров инструментария, который мы использовали.
Практический доклад о том, как мы внедряли devops в банке, а конкретнее какую роль в этом процессе сыграло тестирование.
В докладе рассмотрены основные проблемы, с которыми команда столкнулась при внедрении и способы их устранения.
Продемонстрированы результаты, которых смогли достичь в течении полугода.
Доклад содержит большое количество лайфхаков и обзоров инструментария, который использовался для достижения цели.
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.
Доклад Ильи Кудинова на DevConf 2013. "Организация автоматизированного тестир...Badoo Development
Доклад о том, как выжить в условиях двух релизов в день, не понижая планку
качества проекта и дать разработчикам и QA-инженерам больше времени на
полезные дела.
Подробно:
Прослушав доклад, вы узнаете:
1. Что НА САМОМ ДЕЛЕ называется непрерывной интеграцией;
2. Кому и зачем нужно переходить на Continious Integration;
3. Почему процесс контроля качества начинается ещё до написания кода;
4. Как программисты учавствуют в процессе тестирования;
5. Как устроен наш поток тестирования с пятью (!) уровнями контроля;
6. Как наши QA-инженеры тестируют задачи до релиза в максимально
реалистичных условиях;
7. Как помогает тестированию плотная интеграция Git, Jira и TeamCity;
8. Зачем нужны более 20 тысяч автоматических тестов и кто их должен
разрабатывать и поддерживать;
9. Чем непрерывно занимаются более 10 агентов-тестировщиков в нашей
TeamCity;
10. Какими средствами мы добились того, чтобы пункты 8 и 9 не превращал
QA-процесс в долгое и унылое действо.
Презентация на комплексную тему Continious integration-Automated Testing-Agile, показывается связи между этими темам, обоснование автоматического тестирования , и вложения ресурсов для развертывания автоматического тестирования и непрерываной интеграциия. Все темы тесно связаны между собой , хотя бы появились независимос друг от друга.
Алексей Халайджи, Mail.Ru Group, «Как мы автоматизируем UI-тестирование в iOS...Mail.ru Group
Алексей рассказал, какие задачи и проблемы стояли перед командой в начале пути, какие технологии используются для автоматизации тестирования, какие проблемы при этом возникают и как решаются, а также поделится достигнутыми результатами.
Similar to Test Automation Wargaming SQA Days 17 (20)
Why test automation projects are failingIgor Khrol
Summarizing the experience of dozens successful and unsuccessful projects, the author of the presentation explains the most common reasons of test automation projects failures. Also the speech will cover some best practices and the ways to make UI test automation beneficial. From the presentation you'll find the answers to the following questions:
- Why automated testing is expensive?
- What are the reasons of long test executions?
- What makes automated tests fail unpredictably?
You'll also be able to find solutions to get rid of typical failures on your test automation project.
2. О себе
• Игорь Хрол
• QA Automation Team Lead в
Wargaming.NET
• 9 лет в отрасли
• Инженер, архитектор,
менеджер, консультант, тренер
• Докладчик на SQA Days 12 и 15
• www.khroliz.com
3. О чём говорим сегодня?
• QA – инженерная специальность
продолжение к SQA Days 15
http://sqadays.com/ru/talk/19552
• Пример Wargaming’a в доказательство
реализуемости на практике
4.
5. О чём говорим сегодня?
1. Проблемы в конце 2013
2. Организационные изменения
3. Технологические изменения
4. «Пирамидальные» подходы
5. Стало ли лучше?
7. Проблемы в конце 2013
Отделённость автоматизации тестирования:
• Организационно (отдельная команда)
• Технологически (тесты на Java, а 80%
разработки – на Python)
Много различных подходов
Слабое межофисное взаимодействие
8. Проблемы в конце 2013
Типичные проблемы с автотестами:
• Долгие
• Нестабильные
• Низкое покрытие
• Мало используются
12. …и получала она на вход задачи
…а отдавала в статусе Resolved
JIRA-1
Created
JIRA-2
Created
JIRA-3
Created
JIRA-1
Resolved
JIRA-2
Resolved
JIRA-3
Resolved
20. Орден: результаты
• Community по автоматизации тестирования
внутри Wargaming
• Включает всех, кто пишет автотесты
• Обмен опытом большого числа людей из
разных офисов
23. Переход с Java на Python
• Тестирование ближе к разработке
• Изучение автотестов толкает к изучению
тестируемого приложения
• Обмен знаниями с другими
27. Как обычно выглядит процесс
написания автотестов…
«Ручной»
QA Тест Кейс Auto QA
Тест
Скрипт
28. Test Case vs Test Script
Step 1: login to application def login_to_application():
…
Step 2: verify user is logged in def verify_user_is_logged_in():
…
Step 3: do some important thing def do_some_important_thing():
…
Как-то оно похоже..
Надо писать два раза…
И исправлять в двух местах…
29. Как решить?
А давайте генерировать тест-кейс из кода!
«Ручной»
QA
Тест Скрипт Auto QA
Реализация
Шагов
30. Плюсы подхода
• Нет дублирования работы
• Повышается технический уровень QA
• Нет новых «языков» вроде BDD-style,
Keyword Driven и прочего…
31.
32. Внедрение автотестов в
массы: обучение
• Python
– http://www.codecademy.com/en/tracks/python
– Grail
– Код приложения
• Автоматизация тестирования
– Внутренняя программа обучения
33. Внедрение автотестов в массы
• Интеграция с TestRail
– Автотесты выглядят, как ручные
– Одна кнопка для запуска
38. Разделяй и властвуй
Задача
Подзадача Подзадача
Решение
подзадачи
Решение
подзадачи
Решение
подзадачи
Решение
подзадачи
Подзадача
Задача
Разделяем
РазделяемРазделяем
Соединяем Соединяем
Соединяем
Подзадача
48. Фокус на компонентах без UI
• Начинаем с бизнес-логики
• По максимуму проверяем через API
• End-to-end сценарии и пользовательский
интерфейс можно проверять и руками
49. Что же дальше?
• Знаем Python
• Знаем программные интерфейсы
Логичный следующий шаг –
читать код проектов
50. Белый ящик
• Незаменимо для проектов с недостатком
документации
• Выявляет спектр новых проблем
• Позволяет не писать лишние тесты
• При необходимости можно помогать в
разработке
51. Запуск тестов по комитам
• Работает, если тесты быстрые
– До 5-10 минут
• …и стабильные
• Максимальная отдача от автоматических
тестов
54. Текущие успехи
Стабильные и быстрые тесты
– В идеале до 5-10 мин
– Запуск по «комитам»
– Красные тесты исправляются в процессе
разработки функциональности
– Быстро находятся дефекты
55. Текущие успехи
Проекты в состоянии выпускать новые версии
• без ручного тестирования
• в течение дня