SlideShare a Scribd company logo
Software quality assurance days
22 Международная конференция
по вопросам качества ПО
sqadays.com
анкт-Петербург. 17–18 ноября 2017
Дарья Шишкова
T-Systems RUS. Санкт-Петербург, Россия
Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт
программирования
Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования
История проекта и команды
Проект: Системный тест одного из внутренних
приложений для техников Deutsche Telekom
Система:
• База данных Oracle
• Десктопное приложение
• Вэб-приложение для администрирования
• Коробочный продукт комании Click Software для
назначения заданий (вэб-приложение, Silverlight)
• Симуляторы партнерских систем
Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования
История проекта и команды
В связи с запланированной технической миграцией
приложения в 2014 году возникла необходимость
автоматизировать регрессионные тесты.
Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования
Описание проекта и команды
На момент начала автоматизации:
• Команда состояла из трех тестировщиков (middleX1,
juniorX2)
• Команда приняла участие в двух релизах,
включавших в себя только тестирование новых
требований
• Опыт автоматизации в команде – отсутствовал
Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования
Выбора инструмента
Для автоматизации регрессионных тестов был
выбран open source инструмент – Sikuli
http://sikulix.com/
Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования
Выбора инструмента
Технические причины:
• Особенность десктопного приложения, не
позволявшая «добраться» до ряда элементов
средствами инструментов типа Winium
• Особенности Silverlight приложения, не
позволявшие получить x-path’ы элементов
Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования
Выбора инструмента
Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования
Выбора инструмента
Финансовые причины:
• Отсутствие времени и финансовой возможности на
введение в проект опытного специалиста по
автоматизации
• Отсутствие времени на проведение подготовки
имеющихся сотрудников к использованию платных
инструментов (типа Ranorex)
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Процесс работы
Что использовалось:
• Sikuli IDE
• Jython
Позже добавились:
• Selenium IDE/WebDriver
• Soap UI
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Грабли №1
Переиспользование кода
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Грабли №1
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Грабли №1
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Грабли №1
Пара идей о том как можно было этого избежать:
- Взять время на изучение «хороших практик»
- Взять время на анализ тестов
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Грабли №2
Выбор подходящих инструментов:
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Грабли №2
Как можно было этого избежать:
– не зацикливаться на одном инструменте, даже если
он себя хорошо зарекомендовал
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Грабли №3
Подробное логирование
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Грабли №3
VS
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Грабли №3
Как можно было этого избежать:
– Использовать логирование, собственно
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Результаты
Технические:
•Автоматизировано 261 из 295 регрессионных тестов
•Время, затрачиваемое на прогон – 40 часов
•Время на поддержку – около 200 часов (зависит от
количества изменений)
•Прогон регрессионных тестов вручную занял бы
приблизительно 600 часов на версию при команде 6
человек
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Смотрите также
Другие доклады SQA-Days, посвященные Sikuli:
• Sikuli Script – идеальный инструмент для обучения
автоматизации: http://sqadays.com/ru/talk/16553
• Практическое применение Sikuli Script в
автоматизации тестирования:
http://sqadays.com/ru/talk/27521
Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования
Спасибо за внимание
Дарья Шишкова
T-Systems Rus
Skype: dasha.shishkova
E-mail: daria.shishkova@t-systems.ru
http://www.t-systems.ru

More Related Content

PPT
"Давайте не будем про качество"
PPTX
Добиваемся эффективности каждого из 9000+ UI-тестов
PPT
Делаем автоматизацию проектных KPIs
PDF
QA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
PDF
Как автотесты ускоряют релизы в OK.ru
PDF
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
PPTX
Как развить отдел тестирования от палки-копалки до CI
PPT
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
"Давайте не будем про качество"
Добиваемся эффективности каждого из 9000+ UI-тестов
Делаем автоматизацию проектных KPIs
QA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
Как автотесты ускоряют релизы в OK.ru
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
Как развить отдел тестирования от палки-копалки до CI
Как hh.ru дошли до 500 релизов в квартал без потери в качестве

What's hot (20)

PDF
WP как экспериментальная платформа
PPTX
QA Fest 2015. Юлия Завертайло. Практическая визуализация пользы тестирования...
PDF
Тестировщик в Agile - кто он?
PPTX
Архитектура автоматизированных тестов: представление предметной области
PDF
Введение в performance management
PPTX
Гибкое тестирование
PPT
QA как драйвер трансформации
PPTX
10 принципов автоматизации, которые я не предам
PPTX
Discovery Kanban для управления беклогом Scrum-команды
PPT
Новый процесс тестирования на "старом" проекте
PPTX
Quality Assurance vs Quality Control - так в чем же заключается работа специа...
PPTX
Free Desktop QA Engineers: implement automation testing
PPTX
Нагрузка и автоматизация в большой организации. Движение к DevOps
PPTX
QA Fest 2015. Виктор Гожий. SCRUM в QA команде и как с этим жить.
PPT
Подход к тестированию хранилища данных на базе MS SQL Server
PPTX
QA Fest 2016. Инна Блажко. ISTQB – What is it? Who needs it? How to prepare a...
PPTX
Шаблоны проектирования нагрузочных скриптов
PPTX
QA Fest 2015. Александра Волкова. 10 принципов автоматизации, которые я не пр...
PPTX
Об автоматическом тестировании бэкенда в Media markt
PPTX
Management of projects
WP как экспериментальная платформа
QA Fest 2015. Юлия Завертайло. Практическая визуализация пользы тестирования...
Тестировщик в Agile - кто он?
Архитектура автоматизированных тестов: представление предметной области
Введение в performance management
Гибкое тестирование
QA как драйвер трансформации
10 принципов автоматизации, которые я не предам
Discovery Kanban для управления беклогом Scrum-команды
Новый процесс тестирования на "старом" проекте
Quality Assurance vs Quality Control - так в чем же заключается работа специа...
Free Desktop QA Engineers: implement automation testing
Нагрузка и автоматизация в большой организации. Движение к DevOps
QA Fest 2015. Виктор Гожий. SCRUM в QA команде и как с этим жить.
Подход к тестированию хранилища данных на базе MS SQL Server
QA Fest 2016. Инна Блажко. ISTQB – What is it? Who needs it? How to prepare a...
Шаблоны проектирования нагрузочных скриптов
QA Fest 2015. Александра Волкова. 10 принципов автоматизации, которые я не пр...
Об автоматическом тестировании бэкенда в Media markt
Management of projects
Ad

Similar to Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования (20)

PDF
Sikuli Test Automation - How to do it?
PPTX
GUI-автоматизация в Telerik Test Studio
PPTX
Опыт Автоматизации тестирования
PDF
Как перестать бояться и начать автоматизировать
PPTX
Automation Overview
PPTX
Автоматизированное тестирование сложного ПО
PDF
Кутумов - Автоматизация тестирования транспортных карт
PPTX
Image-based automation
PPTX
Автоматизация тестирования
PPT
Qt tool evaluation
PPTX
Automation from the trenches
PPTX
Анализ инструментов автоматизации мобильного тестирования
PPTX
Automation from the trenches
PPTX
Image-based automation
PPTX
Автоматизация с помощью скриншотов. Как научить скрипт видеть графический инт...
PDF
[JAM 1.1] Testing not for Fun (Evgeny Kaziak)
PPT
зуева татьяна - опыт автоматизации тестирования в Agile проекте
PPTX
Шаги мануальщика к автоматизации на крупном проекте
PPT
Test Automation as a way of Natural Evolution of a Project
PDF
Серебряная пуля автоматизированного тестирования
Sikuli Test Automation - How to do it?
GUI-автоматизация в Telerik Test Studio
Опыт Автоматизации тестирования
Как перестать бояться и начать автоматизировать
Automation Overview
Автоматизированное тестирование сложного ПО
Кутумов - Автоматизация тестирования транспортных карт
Image-based automation
Автоматизация тестирования
Qt tool evaluation
Automation from the trenches
Анализ инструментов автоматизации мобильного тестирования
Automation from the trenches
Image-based automation
Автоматизация с помощью скриншотов. Как научить скрипт видеть графический инт...
[JAM 1.1] Testing not for Fun (Evgeny Kaziak)
зуева татьяна - опыт автоматизации тестирования в Agile проекте
Шаги мануальщика к автоматизации на крупном проекте
Test Automation as a way of Natural Evolution of a Project
Серебряная пуля автоматизированного тестирования
Ad

More from SQALab (20)

PDF
Готовим стажировку
PPTX
Куда приводят мечты? или Искусство развития тестировщика
PPT
Оптимизация Selenium тестов и ускорение их поддержки
PPTX
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
PPTX
Continuous performance testing
PDF
Конфиги вместо костылей. Pytestconfig и зачем он нужен
PPT
Команда чемпионов в ИТ стихии
PPTX
API. Серебряная пуля в магазине советов
PDF
Вредные привычки в тест-менеджменте
PPTX
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
PPTX
Стили лидерства и тестирование
PDF
Apache.JMeter для .NET-проектов
PPTX
Тестирование геолокационных систем
PPTX
Лидер или босс? Вот в чем вопрос
PPTX
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
PPTX
Истинная сила тестировщика - информация
PPT
Автоматизация тестирования встроенного ПО
PPTX
Правильный подход к составлению профиля нагрузочного тестирования
PDF
Sustainable Test Automation: Collaborate within Team
PDF
Test Data Preparation: Tips and Tricks
Готовим стажировку
Куда приводят мечты? или Искусство развития тестировщика
Оптимизация Selenium тестов и ускорение их поддержки
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Continuous performance testing
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Команда чемпионов в ИТ стихии
API. Серебряная пуля в магазине советов
Вредные привычки в тест-менеджменте
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Стили лидерства и тестирование
Apache.JMeter для .NET-проектов
Тестирование геолокационных систем
Лидер или босс? Вот в чем вопрос
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
Истинная сила тестировщика - информация
Автоматизация тестирования встроенного ПО
Правильный подход к составлению профиля нагрузочного тестирования
Sustainable Test Automation: Collaborate within Team
Test Data Preparation: Tips and Tricks

Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования

  • 1. Software quality assurance days 22 Международная конференция по вопросам качества ПО sqadays.com анкт-Петербург. 17–18 ноября 2017 Дарья Шишкова T-Systems RUS. Санкт-Петербург, Россия Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования
  • 2. Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования История проекта и команды Проект: Системный тест одного из внутренних приложений для техников Deutsche Telekom Система: • База данных Oracle • Десктопное приложение • Вэб-приложение для администрирования • Коробочный продукт комании Click Software для назначения заданий (вэб-приложение, Silverlight) • Симуляторы партнерских систем
  • 3. Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования История проекта и команды В связи с запланированной технической миграцией приложения в 2014 году возникла необходимость автоматизировать регрессионные тесты.
  • 4. Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования Описание проекта и команды На момент начала автоматизации: • Команда состояла из трех тестировщиков (middleX1, juniorX2) • Команда приняла участие в двух релизах, включавших в себя только тестирование новых требований • Опыт автоматизации в команде – отсутствовал
  • 5. Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования Выбора инструмента Для автоматизации регрессионных тестов был выбран open source инструмент – Sikuli http://sikulix.com/
  • 6. Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования Выбора инструмента Технические причины: • Особенность десктопного приложения, не позволявшая «добраться» до ряда элементов средствами инструментов типа Winium • Особенности Silverlight приложения, не позволявшие получить x-path’ы элементов
  • 7. Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования Выбора инструмента
  • 8. Автоматизация 0.0: 0 – HR-бюджет, 0 - опыт программирования Выбора инструмента Финансовые причины: • Отсутствие времени и финансовой возможности на введение в проект опытного специалиста по автоматизации • Отсутствие времени на проведение подготовки имеющихся сотрудников к использованию платных инструментов (типа Ranorex)
  • 9. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Процесс работы Что использовалось: • Sikuli IDE • Jython Позже добавились: • Selenium IDE/WebDriver • Soap UI
  • 10. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Грабли №1 Переиспользование кода
  • 11. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Грабли №1
  • 12. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Грабли №1
  • 13. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Грабли №1 Пара идей о том как можно было этого избежать: - Взять время на изучение «хороших практик» - Взять время на анализ тестов
  • 14. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Грабли №2 Выбор подходящих инструментов:
  • 15. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Грабли №2 Как можно было этого избежать: – не зацикливаться на одном инструменте, даже если он себя хорошо зарекомендовал
  • 16. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Грабли №3 Подробное логирование
  • 17. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Грабли №3 VS
  • 18. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Грабли №3 Как можно было этого избежать: – Использовать логирование, собственно
  • 19. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Результаты Технические: •Автоматизировано 261 из 295 регрессионных тестов •Время, затрачиваемое на прогон – 40 часов •Время на поддержку – около 200 часов (зависит от количества изменений) •Прогон регрессионных тестов вручную занял бы приблизительно 600 часов на версию при команде 6 человек
  • 20. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Смотрите также Другие доклады SQA-Days, посвященные Sikuli: • Sikuli Script – идеальный инструмент для обучения автоматизации: http://sqadays.com/ru/talk/16553 • Практическое применение Sikuli Script в автоматизации тестирования: http://sqadays.com/ru/talk/27521
  • 21. Автоматизация 0.0: 0 - HR- бюджет, 0 - опыт программирования Спасибо за внимание Дарья Шишкова T-Systems Rus Skype: dasha.shishkova E-mail: daria.shishkova@t-systems.ru http://www.t-systems.ru

Editor's Notes

  • #2: Добрый день, коллеги. Меня зовут Дарья, я старший эксперт по тестированию в компании Т-Системз. И сегодня я хочу поделиться с вами рядом выводов из истории внедрения автоматизации в одном из проектов, которые, могут пригодится людям, начинаюшим свой путь в автоматизации или просто интересующимся этой темой.
  • #3: И так, коротко о проекте: (текст слайда)
  • #4: (текст слайда)
  • #5: (текст слайда)
  • #6: Текст слайда + что делает Сикули – она распознает видимые изображения на экране и может имитировать действия пользователя.
  • #7: Для выбора Сикули было несколько причин: (текст слайда)
  • #8: Для выбора Сикули было несколько причин: (текст слайда)
  • #10: Селениум для автоматизации одного из вэб приложений, Соап в качестве симулятора одной из партнерских систем
  • #11: Изначально мы брали тест из регрессионного сета и просто последовательно «переводили» все шаги на Jython. Через некоторое время мы вынесли в отдельные модули логины в разные системы и переиспользовали их в тестовых скриптах. Однако в прошлой весной, с обновлением Windows «внезапно» изменилось начертание шрифта. То есть шрифт остался преждним, но буквы стали чуть жирнее и Сикули отказалась их узнавать. Это привело к достаточно большому, не запланированному рефакторингу
  • #12: Изначально мы брали тест из регрессионного сета и просто последовательно «переводили» все шаги на Jython. Через некоторое время мы вынесли в отдельные модули логины в разные системы и переиспользовали их в тестовых скриптах. Однако в прошлой весной, с обновлением Windows «внезапно» изменилось начертание шрифта. То есть шрифт остался преждним, но буквы стали чуть жирнее и Сикули отказалась их узнавать. Это привело к достаточно большому, не запланированному рефакторингу
  • #14: К первому пункту могу только добавить, что далеко не в каждой ситуации действительно есть необходимость изобретать велоспед. Что касается анализа тестов – он должен был выявить общие шаги для большого количества тестов, и дать базу для переиспользования.
  • #15: Как говорилось выше, небольшое изменение, даже не связанное с изменениями в приложении обернулось незапланированным рефакторингом. Что дало нам возможность и пинок не только переосмыслить структуру тестов, но и взглянуть внимательнее на используемые тулы. Как говорилось выше, два наших приложения были вэб приложениями. Одно из них использовало Silverlight, что привело к использованию Сикули для автоматизации обоих вэб приложений, но это было Совершенно не обязательно для второго приложения и, в сложившейся ситуации, было решено переписать автоматизацию регрессии второго приложения с помощью Selenium.
  • #16: Текст слайда + кроме того и тут пригодится краткое ревью best practice. Однако, важно не закопаться во всем многообразии существующих тулов.
  • #17: Однажды у нас отвалился тест на 293 строки, в котором логи, например, написаны только для циклов. И вот вроде бы и не сложно разобраться в том, что пошло не так, если хорошо знаешь систему, но во первых – это лишние временные затраты, и абсолютно не дружелюбно по отношению к тем кому в будущем будет нужно запускать наши тесты и анализировать результаты.
  • #20: Кроме уроков котороые мы извлекли из этого поекта, у нас получилось следующее: Текст слайда + время затрачиваемое на поддержку - .... Зависит от количества изменений, произошедших в функциональности. В нашем случае, новые требования по функциональности приходят три раза в год.
  • #21: Для тех кого заинтересовала конкретно Сикули, на конференции уже было несколько интересных докладов, ссылками на которые я хочу поделиться.