Sikuli – это инструмент автоматизации графического пользовательского интерфейса. Используя инструмент Sikuli Automation, мы можем автоматизировать все, что видим на экране. Он в основном использует технологию распознавания изображений для идентификации и управления элементами графического интерфейса. Мы все знаем, что с помощью Selenium мы не можем автоматизировать объекты Windows. Интеграция Sikuli с Selenium позволяет решить эту проблему. Используя Sikuli с Selenium, мы могли автоматизировать объекты Windows. С помощью Sikuli мы могли автоматизировать как веб-приложения, так и приложения для Windows. Большинство из нас используют AutoIT для загрузки или скачивания файлов в Selenium. Используя Sikuli, вы могли бы сделать это очень легко. Мы могли бы провести флеш-тестирование с помощью Selenium. Нам не удалось идентифицировать локаторы элементов флэш-объектов. Мы могли бы использовать инструмент sikuli для автоматизации объектов flash.
Механизм Sikuli с Selenium:
Объект, если мы хотим автоматизировать, следует захватить и поместить в определенную папку и передать путь соответствующего изображения в наш скрипт Selenium. Если во время выполнения переданное нами изображение совпадает с изображением на экране, то над этим объектом будет выполнено желаемое действие.
Преимущества Sikuli Graphical User Interface Tool:< /h3>
Это инструмент автоматизации с открытым исходным кодом
Легко интегрировать sikuli с селеном
Может автоматизировать приложение для рабочего стола или Windows
Простая автоматизация объектов Flash — Flash Testing
Его можно использовать на любой платформе, например Windows/Linux/Mac/Mobile
Благодаря технологии распознавания изображений мы можем автоматизировать, даже если доступа к коду нет. Это позволяет нам автоматизировать все, что мы видим на экране.
Настройка Sikuli Чтобы интегрировать Sikuli с Selenium:
Чтобы интегрировать sikuli с селеном, нам нужно выполните следующие шаги.
Шаг 1:Скачать банки Sikuli
Шаг 2: Дважды щелкните «sikulixsetup-1.1.1.jar», чтобы выполнить настройку.
После установки Sikuli в вашей системе создается JAR-файл «sikulixapi.jar».
Шаг 3: Откройте Eclipse IDE и создайте проект
Вот сообщение о том, как выполнить настройку Selenium.
Шаг 4. Включите «sikulixapi.jar»
Щелкните правой кнопкой мыши проект — выберите Путь сборки – вкладка библиотеки – нажмите «Добавить внешние jar-файлы», добавьте следующий jar-файл и нажмите «ОК».
Добавьте этот «sikulixapi .jar”
Я представлю два примера скриптов, чтобы показать вам, как работает sikuli в режиме реального времени.
Посмотрите видео ниже, чтобы увидеть «Учебное пособие по Sikuli — Интеграция Sikuli с Selenium»
Если вам понравилось это видео, подпишитесь на наш канал YouTube для получения дополнительных видеоуроков.
Скрипты для интеграции Sikuli с Selenium Webdriver:
Сценарий 1: Вход через Facebook с помощью Sikuli с Selenium
Наша цель, основанная на приведенной ниже программе, — открыть страницу facebook, передать учетные данные пользователя и выполнить вход.
Шаг 1: Откройте страницу входа в facebook Шаг 2: Я захватил следующие изображения со страницы входа в facebook и сохранил на своем локальном диске.
Поле электронной почты:< /em>
< em>Поле пароля:
Кнопка входа:
< p>Примечание. Вы можете найти подробное объяснение скрипта во фрагменте кода ниже
пакет программного обеспечения TestingMaterial; импортировать org.openqa.selenium.WebDriver; импортировать org.openqa.selenium.firefox.FirefoxDriver; импортировать org.sikuli.script.FindFailed; импортировать org.sikuli.script.Pattern; импортировать org.sikuli.script.Screen; импортировать org. testng.annotations.Test; public class STMSikuliClass { @Testpublic void facebookLogin() throws FindFailed{//Создание объекта класса «Экран» //Экран — это базовый класс, предоставляемый Sikuli. Это позволяет нам получить доступ ко всем методам, предоставляемым Sikuli.Screen screen = new Screen();//Создание класса Object of Pattern и указание пути к указанным изображениям//Я захватил изображения поля идентификатора электронной почты Facebook, поля пароля и логина кнопку и поместить в мой локальный каталог//Идентификатор пользователя Facebook imagePattern username = new Pattern(“C:\Users\admin\Desktop\Sikuli Images For Selenium\FacebookEmail.png”);//Пароль Facebook imagePattern password = new Pattern(“C:\Users\admin\Desktop\Sikuli Images For Selenium\FacebookPassword.png”);//Кнопка входа в Facebook imagePattern login = new Pattern(“C:\Users\admin \Desktop\Sikuli Images For Selenium\FacebookLogin.png”);//Инициализация объекта драйвера для запуска firefox browserSystem.setProperty(“webdriver.gecko.driver”, System.getProperty(“user.dir”)+” \src\drivers\geckodriver.exe”);WebDriver driver = new FirefoxDriver();//Чтобы развернуть браузерdriver.manage().window().maximize();//Откройте Facebookdriver.get(“https ://en-gb.fac ebook.com/”);screen.wait(username, 10);//Вызов метода 'type' для ввода имени пользователя в поле электронной почты с использованием 'screen' objectscreen.type(username, “softwaretestingmaterial@gmail.com”);//Вызов того же метода 'type' и передача текста в поле пароля. >Сценарий 2: Действия с использованием Sikuli и Selenium
Шаг 1: Откройте softwaretestingmaterial.com Шаг 2. Упомянутое ниже изображение было захвачено и сохранено на моем локальном диске.
Наша цель, основанная на приведенной ниже программе, — открыть страницу материалов для тестирования программного обеспечения и выполнить такие действия, как щелкнуть , двойной клик, правый клик.
Примечание. Вы можете найти подробное объяснение скрипта во фрагменте кода ниже
пакет программного обеспечения TestingMaterial; импортировать org.openqa.selenium.WebDriver; импортировать org.openqa.selenium.firefox.FirefoxDriver; импортировать org.sikuli.script.FindFailed; импортировать org.sikuli.script.Pattern; импортировать org.sikuli.script.Screen; импортировать org. testng.annotations.Test; открытый класс STMActions {@Testpublic void runSikuli() throws FindFailed{Screen screen = new Screen();System.setProperty(“webdriver.gecko.driver”, System.getProperty(“user.dir”)+”\src\ драйверы\geckodriver.exe”);драйвер WebDriver = новый FirefoxDriver();driver.manage().window().maximize();driver.get(“https://www.softwaretestingmaterial.com”);Шаблон шаблона = new Pattern(“C:\Users\admin\Desktop\Sikuli Images For Selenium\ManualTesting.png”);//раскомментируйте оператор ниже, чтобы выполнить “щелчок левой кнопкой мыши” на вкладке “Ручное тестирование”//screen.click (шаблон);//раскомментируйте оператор ниже, чтобы выполнить “двойной щелчок” на вкладке “Ручное тестирование” //screen.doubleClick(pattern);//раскомментируйте оператор ниже, чтобы выполнить “щелчок правой кнопкой мыши” на вкладке “Ручное тестирование” //screen.rightClick(pattern) );} }
Методы Sikuli:
Здесь, чтобы продемонстрировать несколько примеров, я собираюсь использовать тот же объект класса Screen, что и использовали приведенные выше сценарии.
Нажмите на элемент: screen.click(“path вашего изображения”);
Дважды щелкните элемент: экран.doubleClick(“путь к вашему изображению”);
Щелкните правой кнопкой мыши на элементе: экран.rightClick(“путь к вашему изображению”);
В текстовом поле введите: экран .type(“путь к вашему изображению”, “ваше текстовое сообщение”);
Чтобы найти элемент: screen.find(“путь к вашему изображению”);
Идентификация элемента независимо от того, существует он или нет: screen.exists(“путь к вашему изображению”);
Перетаскивание: screen.dragDrop(“путь к исходному изображению”, ”path of your Target image”);
Чтобы узнать больше о Sikuli, обратитесь к этой официальной документации. Я заканчиваю «Учебное пособие по Sikuli для начинающих». Если у вас есть какие-либо вопросы, пожалуйста, прокомментируйте ниже.