Что такое AutoIt?
AutoIt - это бесплатный язык сценариев, предназначенный для автоматизации графического интерфейса Windows и общих сценариев. Он использует комбинацию движения мыши, нажатия клавиш и управления окном для автоматизации задачи, что невозможно с помощью selenium webdriver.
В этом руководстве по AutoIt вы узнаете:
- Зачем использовать AutoIt?
- Как скачать и установить AutoIT
- Поиск элемента через Идентификатор элемента и написание скрипта в редакторе AutoIT.
- AutoIT Загрузить файл в Selenium Webdriver
Зачем использовать AutoIt?
Selenium - это инструмент с открытым исходным кодом, который предназначен для автоматизации веб-приложений в разных браузерах, но для обработки оконного графического интерфейса пользователя и всплывающих окон приложений, отличных от HTML. Требуется AutoIt в Selenium, поскольку эта оконная активность не обрабатывается Selenium.
В этом руководстве по AutoIt мы узнаем, как загрузить файл в веб-драйвер Selenium с помощью AutoIt. Для этого нам понадобятся три инструмента.
- Селен Webdriver
- Редактор AutoIT и идентификатор элемента
- Окно, которое вы хотите автоматизировать
Как скачать и установить AutoIT
Шаг 1) : перейдите по этой ссылке.
Шаг 2) : наведите указатель мыши на раскрывающиеся списки «Autoit» и «Autoit Editor».
Шаг 3) Нажмите на опцию загрузки «AutoIT».
Шаг 4) : Загрузите «Autoit», нажав кнопку «Загрузить Autoit».
Шаг 5) : Теперь загрузите «Редактор Autoit», нажав кнопку «Загрузки».
Шаг 6): Щелкните ссылку, как показано ниже.
После загрузки вы получите два установочных файла, как показано на экране ниже, первый - это установка AutoIt версии 3 , а второй - Scitautoit3 .
Шаг 6) : Для установки AutoIT щелкните по одной на обеих настройках AutoIT.
Шаг 7) : После успешной установки откройте AutoIT Editor.
Перейдите в 'C: \ Program Files (x86) \ AutoIt3 \ SciTE'
и щелкните файл «SciTE.exe», откроется редактор AutoIT, как показано на экране ниже.
Шаг 8) : Теперь открывается идентификатор элемента.
Перейдите в 'C: \ Program Files (x86) \ AutoIt3'
И щелкните файл «Au3Info.exe», идентификатор элемента откроется, как показано на экране ниже.
Примечание. После того, как вы закончите с этим идентификатором элемента, вам нужно закрыть его вручную, он не закроется автоматически.
Поиск элемента через Идентификатор элемента и написание скрипта в редакторе AutoIT.
В рамках этого мы увидим, как использовать редактор AutoIt и как найти элемент в окне загрузчика файлов с помощью идентификатора элемента AutoIT (идентификатор элемента - это такой инструмент, как selenium IDE, идентификатор, найти элемент графического интерфейса окна или всплывающие окна без HTML и предоставить атрибут элемент, такой как заголовок , класс , экземпляр ) и как написать сценарий в редакторе AutoIT с помощью 3 методов.
Например: мы будем использовать страницу «Напишите нам» на guru99, чтобы загрузить резюме (файл Doc).
После нажатия кнопки «Выбрать файл» на странице «Написать нам» нам нужно вызвать скрипт AutoIT. Управление немедленно передается в autoit после нажатия кнопки «Выбрать файл» с помощью приведенного ниже оператора, который отвечает за загрузку части.
Runtime.getRuntime (). Exec ("E: \\ AutoIT \\ FileUpload.exe");
Наконец, когда мы запустим сценарий selenium, он заполнит форму-> загрузить резюме-> Отправить форму.
Шаг 1) : Теперь откройте идентификатор элемента - перейдите в «C: \ Program Files (x86) \ AutoIt3» и щелкните файл «Au3Info.exe», откроется окно идентификатора элемента, как показано на экране ниже.
Шаг 2) : Теперь откройте окно загрузчика файлов, нажав «Выбрать файл», что является действием Windows.
Шаг 3) : Перетащите инструмент поиска на элемент поля «Имя файла» окна загрузчика файлов, чтобы найти информацию об основных атрибутах, как показано на экране ниже со стрелкой.
Мы можем получить значение атрибутов, например title = 'Open' , class = 'Edit' и instance = '1', как показано ниже. Эти значения используются при написании примера сценария AutoIT, как описано в шаге 4 ниже.
Шаг 4) : Теперь откройте редактор сценариев AutoIT, перейдите к «C: \ Program Files (x86) \ AutoIt3 \ SciTE» и щелкните «SciTE.exe», как показано на шаге 7 из 1- й темы.
Начните писать скрипт для выбора файла для загрузки.
Существует множество доступных методов, которые мы можем использовать в сценарии в соответствии с требованиями, но сейчас мы сосредоточимся на следующих методах, поскольку эти методы необходимы для написания сценария загрузки файлов:
- ControlFocus ("title", "text", controlID) // Устанавливает фокус ввода для данного элемента управления в окне.
- ControlSetText ("title", "text", controlID, "Путь к файлу, который необходимо загрузить") // Устанавливает текст элемента управления.
- ControlClick ("title", "text", controlID) // Посылает команду щелчка мыши заданному элементу управления.
Вы можете увидеть, что отображается ряд методов, как показано на экране ниже. Хорошая особенность AutoIT состоит в том, что он чем-то похож на Eclipse, предлагающий вам некоторые методы.
Здесь, в редакторе AutoIT, мы выбрали метод «управления фокусом» . Идентификатор элемента уже открыт и свернут, поскольку элемент уже идентифицирован на шаге 3 выше. Мы можем открыть его, развернув его.
Теперь мы возьмем значения из идентификатора элемента для методов «ControlFocus» и «ControlSetText», поскольку эти методы работают с одним и тем же элементом, то есть с текстовым полем «Имя файла», но для метода «ControlClick» необходимо захватить значения другого элемента, например «Открыть». кнопка.
Значения параметров для метода ControlFocus :
Этот метод устанавливает фокус на текстовое поле «имя файла» окна загрузчика файлов.
- Заголовок 1-го параметра - «Открыть».
- 2-й параметр игнорируем, текст не требуется.
- 3-й параметр controlID представляет собой комбинацию class = 'Edit' и Instance = '1', т. Е.. "Edit1."
ControlFocus ("Open", "", "Edit1") // Этот метод устанавливает фокус ввода на текстовое поле 'Имя файла'.
Значения параметров для метода ControlSetText :
Этот метод используется для определения пути к файлу, который нам нужно загрузить, в текстовом поле «имя файла». По-другому можно сказать, что этот метод используется для установки текста в элемент ввода.
- Заголовок 1-го параметра - «Открыть».
- 2-й параметр игнорируем, текст не требуется.
- 3-й параметр controlID представляет собой комбинацию class = 'Edit' и Instance = '1', то есть "Edit1".
- 4-й параметр новый текст, мы передаем путь к файлу, который нам нужно загрузить.
ControlSetText ("Open", "", "Edit1", "E: \ Resume \ resume.doc") // Путь к входному файлу этого метода элемента управления.
После выполнения вышеуказанного шага не закрывайте окна (редактор и идентификатор элемента), оставьте его открытым. Вам снова нужно открыть окно загрузчика файлов, чтобы найти атрибуты кнопки «Открыть», как показано на шаге 5 ниже.
Шаг 5) : Теперь перетащите инструмент поиска на кнопку «Открыть» в окне загрузчика файлов, чтобы найти информацию об основных атрибутах.
Предыдущие значения (т.е. атрибуты текстового поля «Имя файла») заменяются новыми значениями кнопки «Открыть». Вы можете видеть, что атрибут класса теперь изменен на «кнопку», которая ранее была «редактировать» в окне идентификатора элемента AutoIT.
Мы можем получить значение атрибутов, например title = 'Open' , class = 'Button' и instance = '1', как показано ниже. Эти значения используются при написании сценария Autoit, как описано ниже.
Значения параметров для метода ControlClick :
Этот метод нажимает кнопку «Открыть» в окне загрузчика файлов.
- Заголовок 1-го параметра - «Открыть».
- Мы игнорируем 2-й параметр; текст не требуется.
- 3-й параметр controlID - это комбинация класса и экземпляра, то есть «Button1».
ControlClick ("Open", "", "Button1") // Этот метод нажимает кнопку "Открыть" в загрузчике файлов.
Шаг 6) : На экране ниже вы можете видеть, что сценарий AutoIT завершен для обработки загрузчика файлов. Теперь вы можете закрыть идентификатор элемента и сохранить сценарий как «FileUpload» в указанном месте (E: \ AutoIT).
Теперь вы не можете выполнить этот скрипт напрямую, вам нужно его скомпилировать.
Для компиляции этого скрипта у вас есть два варианта: « скомпилировать скрипт x64 » и « скомпилировать скрипт x86 », если у вас 32-битная машина с Windows, тогда вы выбираете « скомпилировать скрипт x86», а для 64-битной машины Windows тогда выбираете « скомпилировать скрипт x64 . "
Шаг 7): файл FileUpload exe, созданный после компиляции, вы можете увидеть на экране ниже. Теперь мы можем использовать этот файл в скрипте веб-драйвера Selenium.
Теперь мы будем использовать этот скрипт AutoIT в веб-драйвере Selenium. Проверьте вывод ниже.
AutoIT Загрузить файл в Selenium Webdriver
В сценарии Selenium мы находим элементы формы и заполняем данные в каждом элементе по мере необходимости и загружаем файл «resume.doc», выполняя файл AutoIT exe, созданный из сценария AutoIT, а затем позволяем отправить форму в сценарии Selenium AutoIt.
- Откройте Eclipse и начните писать код.
- Когда селен нажимает кнопку «Выбрать файл», открывается окно загрузчика файлов.
- Затем нам нужно вызвать скрипт AutoIT, управление немедленно передается в AutoIT, чтобы загрузить файл, а затем передать управление обратно в селен, как показано ниже.
Шаг 1) : Разработайте сценарий selenium в eclipse.
- Класс среды выполнения позволяет сценарию взаимодействовать со средой, в которой выполняется сценарий.
- getRuntime () получить текущую среду выполнения, связанную с этим процессом.
- Методы exec () выполняют сценарий AutoIT (FileUpload.exe).
Runtime.getRuntime (). Exec ("E: \\ AutoIT \\ FileUpload.exe");
Вышеупомянутая строка вызовет сценарий AutoIT в селене и загрузит файл.
Шаг 2) : Выполните сценарий Selenium в Eclipse.
importjava.io.IOException;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;public class FileUpload {public static void main (String [] args) выбрасывает IOException {Драйвер WebDriver = новый FirefoxDriver ();driver.get ("http://demo.guru99.com/test/autoit.html");driver.findElement (By.id ("postjob")). click ();driver.findElement (By.id ("input_3")). sendKeys ("Gaurav");driver.findElement (By.id ("id_4")). sendKeys (" Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для его просмотра.");driver.findElement (By.id ("input_4")). click ();// строка ниже выполняет сценарий AutoIT.Runtime.getRuntime (). Exec ("E: \\ AutoIT \\ FileUpload.exe");driver.findElement (By.id ("input_6")). sendKeys ("AutoIT в Selenium");driver.findElement (By.id ("input_2")). click ();driver.close ();}}
Шаг 3) : проверьте вывод, файл resume.doc загружен успешно, и отобразится сообщение с благодарностью.
Вывод:
- Скачал и установил Element Identifier и AutoIT Editor.
- Открыл сайт, на котором нужно сделать операцию.
- Идентификатор элемента определяет элементы окна загрузчика файлов.
- Подготовил скрипт AutoIT в редакторе с помощью идентификатора элемента.
- Скрипт Autoit используется в скрипте selenium webdriver.
- Выполнил селен-скрипт.
- Вывод: файл успешно загружен.
Эта статья предоставлена Gaurav Nigam