2. Коротко о себе
Вадим Зубович
DPI Solutions / ISSoft
Skype: dpi.zubovich
E-mail: zubovich@dpisoft.com
http://www.dpi.solutions/
3. Что такое Sikuli Script
Sikuli-Script – библиотека Java, на которой
базируется инструмент для автоматизации Sikuli-X,
в основе которого лежит принцип распознавания
образов и изображений.
4. Profit???
Когда полезен Sikuli-Script:
● Автоматизация Flash
● Автоматизация HTML-5 Canvas
● Автоматизация Active-X приложений
● Проверка наличия и корректности
изображений в приложении
● Здесь может быть ваш пример
5. В чем проблема
Flash, Canvas, Active-X:
Как его видим мы Как его видит WebDriver
13. Основные классы и методы
App – используется для запуска приложения
App.open(“<path to application>”);
App application = App.open(“<path>”);
application.focus();//переводит фокус на наше приложение
application.window();//Возвращает объект Region,
включающий только содержимое окна приложения
14. Основные классы и методы
Screen – охватывает весь экран
Screen scr = new Screen();
scr.click(“<image>”);
scr.rightClick(“<image>”);
scr.doubleClick(“<image>”);
scr.dragDrop(“<source image>”,“<target image>”);
scr.hover(“<image>”);
scr.paste(“<image>”, “<text>”);
scr.find(“<image>”);//возвращает объект Match
scr.exists(“<image>”);//возвращает объект Match
scr.wait(“<image>”, double milis);//возвращает объект
Match
16. Основные классы и методы
Region – заданный регион на экране
Region reg = scr.find(“<image>”);
reg.click(“<image>”);
reg.rightClick(“<image>”);
reg.doubleClick(“<image>”);
reg.dragDrop(“<source image>”,“<target image>”);
reg.hover(“<image>”);
reg.paste(“<image>”, “<text>”);
scr.find(“<image>”);//возвращает объект Match
scr.exists(“<image>”);//возвращает объект Match
scr.wait(“<image>”, double milis);//возвращает объект
Match
18. Основные классы и методы
Pattern – шаблон для нахождения картинки на экране
Pattern pat = new Pattern(“<image>”);
pat.exact();//будет искать точное совпадение
pat.similar(float similarity);//будет искать совпадение с
отклонением
pat.targetOffset(int x, int y);//будет работать с
регионом со смещением
19. Особенности архитектуры
На базе Sikuli-Script можно строить привычный
PageObject, но со ссылками на картинки вместо
привычных для WebDriver локаторов.
20. Особенности архитектуры
Хранить картинки удобнее всего в ресурсах,
разложив их по папкам, соответствующим названиям
страниц.
21. Sikuli Web Driver
Sikuli Web Driver – расширение Web Driver,
использующее возможности работы с изображенями,
доступные в Sikuli
22. Sikuli Web Driver
Подключаем зависимость Maven
<dependency>
<groupId>org.sikuli</groupId>
<artifactId>sikuli-webdriver</artifactId>
<version>1.0.1</version>
</dependency>
При этом подключаются org.sikuli.api,
org.sikuli.core и org.sikuli.webdriver
23. Sikuli Web Driver
Сама по себе библиотека org.sikuli.api не
содержит методов для взаимодействия с
найденными изображениями
24. Sikuli Web Driver
Как искать элементы с использованием Sikuli Web
Driver: