Image-based automation

Vitali Shulha
Vitali ShulhaTraining & Education Manager
Автоматизация с помощью скриншотов
Виталий Шульга, EPAM Systems
О докладчике


                                 Виталий Шульга

               Software Test Automation Engineer
                                в EPAM Systems
                                Минск, Беларусь


               http://www.linkedin.com/in/vitalliuss
                              vitalliuss@gmail.com
План доклада
1. Технология визуального поиска
  – Что такое визуальный поиск?
  – В чем отличие от стандартных решений?
  – Что нам это даст?
  – В чем подвох?
  – В каких случаях это выгодно?
  – Чем можно воспользоваться?
2. Практические рекомендации
Что такое визуальный поиск?
Сделать снимок экрана



Найти изображение на снимке




Выполнить необходимое действие
Пример скрипта с визуальным поиском
Что нам это даст?

 Независимость от платформы и технологии
 Простоту реализации
 Сокращение затрат времени и усилий




                                        6
В чем подвох?

• Зависимость от графического интерфейса
• Уменьшение стабильность работы сценария
• Уменьшение скорости выполнения
  сценария
• Необходимость поддержки скрипта в
  готовности
• Трудности с получением результатов
  работы




                                        7
В каких случаях это выгодно?

• Нет доступа к свойствам элементов
  программы
• Свойства есть, но они постоянно меняются
• Приложение больше не обновляют
• У нас недостаточно времени
• У нас недостаточно опыта
• Мы решили упростить себе жизнь




                                         8
Чем можно воспользоваться?




                             9
EggPlant




•   Создан как инструмент тестирования
•   Сильный модуль распознавания текста
•   Высокая стабильность работы
•   Хорошая система отчетов
•   Платный
•   Работает только с удаленной машиной (VNC)
EggPlant: выполнение сценария
Sikuli




•   Инструмент бесплатный
•   Прост в развертывании и использовании
•   Не требует дополнительной машины
•   Есть API для Java
•   Возможность использовать Jython
•   Слабый модуль распознавания текста
•   Отсутствие подробного отчета

                                            12
Sikuli: IDE
Практические рекомендации

• Используем красивые имена изображений




  – click(“1330030896672.png”)
  – click(“button_close.png”)




                                          14
Практические рекомендации

• Используем изображения многократно




 “MainPage_OK”   “Popup_OK”    “Button_OK”




                    “OK”


                                             15
Практические рекомендации

• Доверяем проверенным элементам




   digitsLabel = find(images/config_digits.png)
   digits = digitsLabel.targetOffset(300, 0)

                                                  16
Практические рекомендации

• Сократим распознавание текста




                                  17
Практические рекомендации

• Создаем удобный лог
[log][15:12:54] >>> Test start
[log][15:12:54] >>> Assign: PauseOnFail=True
[log][15:12:54] >>> TestScenario: ParallelRunTest
[log][15:12:54] >>> =======================
[log][15:12:54] >>> TestCase: Keying activities
[log][15:12:54] >>> LazyCure.IsOpenState
[log][15:12:54] >>> Call activity window
[log] RIGHT CLICK on (1139,927)
[log][15:13:02] >>> Search for activity window
[log] CLICK on (1052,736)

                                                    18
Практические рекомендации

• Используем взаимодействие с пользователем




                                              19
Практические рекомендации

• Используем вызов через API




           Java + Sikuli




                               20
Практические рекомендации

• Используйте больше возможностей инструмента
   – Импорт jar
   – Единое хранилище изображений
   – Поддержка Jython
   – Встроенный режим unit-тестирования
   – Подсветка найденных элементов




                                                21
Практические рекомендации

• Настройте инструмент для себя
   – Settings.MoveMouseDelay
   – Settings.MinSimilarity
   – FindFailedResponse




                                  22
Вопросы




          ?


              23
О докладчике


                                 Виталий Шульга

               Software Test Automation Engineer
                                в EPAM Systems
                                Минск, Беларусь


               http://www.linkedin.com/in/vitalliuss
                              vitalliuss@gmail.com
1 of 24

Recommended

Image-based automation by
Image-based automationImage-based automation
Image-based automationVitali Shulha
363 views27 slides
Практика by
ПрактикаПрактика
ПрактикаAlex Melnikov
575 views15 slides
SQADAYS 21 Москва 2017 by
SQADAYS 21 Москва 2017SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017Adam Sandman
1.3K views33 slides
Automation Overview by
Automation OverviewAutomation Overview
Automation OverviewKiraKeiss
413 views24 slides
лившиц владимир - независимое тестирование миф by
лившиц владимир - независимое тестирование мифлившиц владимир - независимое тестирование миф
лившиц владимир - независимое тестирование мифMagneta AI
623 views18 slides
Алексей Петров, Mail.Ru Group, "Организация конвейера автоматизации тестирова... by
Алексей Петров, Mail.Ru Group, "Организация конвейера автоматизации тестирова...Алексей Петров, Mail.Ru Group, "Организация конвейера автоматизации тестирова...
Алексей Петров, Mail.Ru Group, "Организация конвейера автоматизации тестирова...Mail.ru Group
5K views20 slides

More Related Content

What's hot

План тестирования by
План тестированияПлан тестирования
План тестированияEDISON Software Development Centre
9.7K views9 slides
Jira as a test management tool by
Jira as a test management toolJira as a test management tool
Jira as a test management toolReturn on Intelligence
4.1K views31 slides
Причины и способы имитации back-end'а by
Причины и способы имитации back-end'аПричины и способы имитации back-end'а
Причины и способы имитации back-end'аOksana Avchinnikova
194 views17 slides
Тестирование инсталляторов by
Тестирование инсталляторовТестирование инсталляторов
Тестирование инсталляторовSQALab
918 views22 slides
Как улучшить тесты на Selenium с помощью "визуального тестирования"? by
Как улучшить тесты на Selenium с помощью "визуального тестирования"?Как улучшить тесты на Selenium с помощью "визуального тестирования"?
Как улучшить тесты на Selenium с помощью "визуального тестирования"?Oksana Avchinnikova
468 views29 slides
Автоматизация тестирования ролей и привилегий by
Автоматизация тестирования ролей и привилегийАвтоматизация тестирования ролей и привилегий
Автоматизация тестирования ролей и привилегийSQALab
1.5K views21 slides

What's hot(19)

Причины и способы имитации back-end'а by Oksana Avchinnikova
Причины и способы имитации back-end'аПричины и способы имитации back-end'а
Причины и способы имитации back-end'а
Тестирование инсталляторов by SQALab
Тестирование инсталляторовТестирование инсталляторов
Тестирование инсталляторов
SQALab918 views
Как улучшить тесты на Selenium с помощью "визуального тестирования"? by Oksana Avchinnikova
Как улучшить тесты на Selenium с помощью "визуального тестирования"?Как улучшить тесты на Selenium с помощью "визуального тестирования"?
Как улучшить тесты на Selenium с помощью "визуального тестирования"?
Автоматизация тестирования ролей и привилегий by SQALab
Автоматизация тестирования ролей и привилегийАвтоматизация тестирования ролей и привилегий
Автоматизация тестирования ролей и привилегий
SQALab1.5K views
Пользователи в помощь тестировщику by Rina Uzhevko
Пользователи в помощь тестировщикуПользователи в помощь тестировщику
Пользователи в помощь тестировщику
Rina Uzhevko2.8K views
About Testers by antsh
About TestersAbout Testers
About Testers
antsh404 views
Марина Широчкина: Тестирование by Yandex
Марина Широчкина: ТестированиеМарина Широчкина: Тестирование
Марина Широчкина: Тестирование
Yandex2.1K views
Промышленная разработка ПО. Лекция 5. Особенности работы тестировщика by Mikhail Payson
Промышленная разработка ПО. Лекция 5. Особенности работы тестировщикаПромышленная разработка ПО. Лекция 5. Особенности работы тестировщика
Промышленная разработка ПО. Лекция 5. Особенности работы тестировщика
Mikhail Payson1.2K views
QA Fest 2016. Денис Яременко. Как облегчить процесс мобильного тестирования by QAFest
QA Fest 2016. Денис Яременко. Как облегчить процесс мобильного тестированияQA Fest 2016. Денис Яременко. Как облегчить процесс мобильного тестирования
QA Fest 2016. Денис Яременко. Как облегчить процесс мобильного тестирования
QAFest1.5K views
QA Fes 2016. Василий Сливка. 10 лучших практик для тестирования мобильных при... by QAFest
QA Fes 2016. Василий Сливка. 10 лучших практик для тестирования мобильных при...QA Fes 2016. Василий Сливка. 10 лучших практик для тестирования мобильных при...
QA Fes 2016. Василий Сливка. 10 лучших практик для тестирования мобильных при...
QAFest1.4K views
Марина Широчкина - Тестирование by Yandex
Марина Широчкина - ТестированиеМарина Широчкина - Тестирование
Марина Широчкина - Тестирование
Yandex2.3K views
Organization of Automated Testing by Klika Tech, Inc
Organization of Automated TestingOrganization of Automated Testing
Organization of Automated Testing
Klika Tech, Inc241 views
сергей андреев by Alexei Lupan
сергей андреевсергей андреев
сергей андреев
Alexei Lupan385 views
iOS and Android Mobile Test Automation by Andrii Dzynia
iOS and Android Mobile Test AutomationiOS and Android Mobile Test Automation
iOS and Android Mobile Test Automation
Andrii Dzynia3.5K views
Выбираем стратегию создания бранчей by Vitebsk DSC
Выбираем стратегию создания бранчейВыбираем стратегию создания бранчей
Выбираем стратегию создания бранчей
Vitebsk DSC149 views

Similar to Image-based automation

Автоматизация с помощью скриншотов. Как научить скрипт видеть графический инт... by
Автоматизация с помощью скриншотов. Как научить скрипт видеть графический инт...Автоматизация с помощью скриншотов. Как научить скрипт видеть графический инт...
Автоматизация с помощью скриншотов. Как научить скрипт видеть графический инт...SQALab
1.8K views27 slides
Sikuli Test Automation - How to do it? by
Sikuli Test Automation - How to do it?Sikuli Test Automation - How to do it?
Sikuli Test Automation - How to do it?Mykhailo Poliarush
3.8K views18 slides
Software testing in practice by
Software testing in practiceSoftware testing in practice
Software testing in practicenikolay_vasiliev
924 views38 slides
Особенности автоматизации с помощью скриншотов by
Особенности автоматизации с помощью скриншотовОсобенности автоматизации с помощью скриншотов
Особенности автоматизации с помощью скриншотовSQALab
1.1K views17 slides
Анатолий Любомиров -- Тестирование пользовательского интерфейса – как это дел... by
Анатолий Любомиров -- Тестирование пользовательского интерфейса – как это дел...Анатолий Любомиров -- Тестирование пользовательского интерфейса – как это дел...
Анатолий Любомиров -- Тестирование пользовательского интерфейса – как это дел...sqadays8
496 views39 slides
тестирование by
тестированиетестирование
тестированиеYandex
2.2K views81 slides

Similar to Image-based automation(20)

Автоматизация с помощью скриншотов. Как научить скрипт видеть графический инт... by SQALab
Автоматизация с помощью скриншотов. Как научить скрипт видеть графический инт...Автоматизация с помощью скриншотов. Как научить скрипт видеть графический инт...
Автоматизация с помощью скриншотов. Как научить скрипт видеть графический инт...
SQALab1.8K views
Особенности автоматизации с помощью скриншотов by SQALab
Особенности автоматизации с помощью скриншотовОсобенности автоматизации с помощью скриншотов
Особенности автоматизации с помощью скриншотов
SQALab1.1K views
Анатолий Любомиров -- Тестирование пользовательского интерфейса – как это дел... by sqadays8
Анатолий Любомиров -- Тестирование пользовательского интерфейса – как это дел...Анатолий Любомиров -- Тестирование пользовательского интерфейса – как это дел...
Анатолий Любомиров -- Тестирование пользовательского интерфейса – как это дел...
sqadays8496 views
тестирование by Yandex
тестированиетестирование
тестирование
Yandex2.2K views
Внедрение тестирования в Scrum by Denis Petelin
Внедрение тестирования в ScrumВнедрение тестирования в Scrum
Внедрение тестирования в Scrum
Denis Petelin7 views
Внедрение тестирования в Scrum by Denis Petelin
Внедрение тестирования в ScrumВнедрение тестирования в Scrum
Внедрение тестирования в Scrum
Denis Petelin1.5K views
Фвтоматизированное тестирование с чего начать Part1 by DataArt
Фвтоматизированное тестирование  с чего начать Part1Фвтоматизированное тестирование  с чего начать Part1
Фвтоматизированное тестирование с чего начать Part1
DataArt1K views
Автоматизация тестирования как способ получения знаний by SQALab
Автоматизация тестирования как способ получения знанийАвтоматизация тестирования как способ получения знаний
Автоматизация тестирования как способ получения знаний
SQALab810 views
Марина Широчкина — «Тестирование» by Yandex
Марина Широчкина — «Тестирование»Марина Широчкина — «Тестирование»
Марина Широчкина — «Тестирование»
Yandex2.2K views
Автоматизация тестирования: почему умирают проекты? by SQALab
Автоматизация тестирования: почему умирают проекты?Автоматизация тестирования: почему умирают проекты?
Автоматизация тестирования: почему умирают проекты?
SQALab1.9K views
Автоматизация Тестирования - Почему умирают проекты? by Igor Khrol
Автоматизация Тестирования - Почему умирают проекты?Автоматизация Тестирования - Почему умирают проекты?
Автоматизация Тестирования - Почему умирают проекты?
Igor Khrol1.1K views
чмв лекция №7 by student_kai
чмв   лекция №7чмв   лекция №7
чмв лекция №7
student_kai625 views
Внутреннее качество в процедурах информационной безопасности by Alex Babenko
Внутреннее качество в процедурах информационной безопасностиВнутреннее качество в процедурах информационной безопасности
Внутреннее качество в процедурах информационной безопасности
Alex Babenko1.6K views
Автоматизация тестирования в iOS-проекте на примере ICQ / Д.Куркин, М.Манаев ... by Ontico
Автоматизация тестирования в iOS-проекте на примере ICQ / Д.Куркин, М.Манаев ...Автоматизация тестирования в iOS-проекте на примере ICQ / Д.Куркин, М.Манаев ...
Автоматизация тестирования в iOS-проекте на примере ICQ / Д.Куркин, М.Манаев ...
Ontico319 views
Introduction into Test Driven Development by Ivan Dyachenko
Introduction into Test Driven DevelopmentIntroduction into Test Driven Development
Introduction into Test Driven Development
Ivan Dyachenko296 views
Шаги мануальщика к автоматизации на крупном проекте by SQALab
Шаги мануальщика к автоматизации на крупном проектеШаги мануальщика к автоматизации на крупном проекте
Шаги мануальщика к автоматизации на крупном проекте
SQALab1.7K views

Image-based automation