AutoIT в Selenium Підручник: як ним користуватися?

⚡ Розумний підсумок

AutoIt в Selenium це безкоштовна мова сценаріїв, яка автоматизує Windows Діалогові вікна графічного інтерфейсу та спливаючі вікна, які Selenium WebDriver не може безпосередньо керувати, що робить його основним помічником для завантаження файлів, вивантажень та запитів автентифікації.

  • 🤖 Мета: AutoIt розширюється Selenium шляхом обробки Windowsелементи керування на основі , нативні діалогові вікна та спливаючі вікна, що не є HTML, до яких не можуть дістатися локатори WebDriver.
  • 🪟 Ідентифікатор елемента: Інструмент Au3Info перевіряє елементи керування вікном та надає атрибути заголовка, класу та екземпляра, що використовуються для створення надійних сценаріїв взаємодії.
  • ️ Основні методи: ControlFocus, ControlSetText та ControlClick утворюють мінімальний набір, необхідний для заповнення шляхів та надсилання діалогових вікон завантаження файлів.
  • ✅ Інтеграція: Скомпільований файл FileUpload.exe запускається з Selenium за допомогою Runtime.getRuntime().exec(), передаючи керування AutoIt і назад безперешкодно.
  • 🧪 Практичне використання: Покрокове керівництво завантажує резюме на Guru99 демонстраційна форма, що перевіряє повну версію Selenium плюс процес автоматизації AutoIt.

AutoIT в Selenium

Що таке AutoIt Selenium?

Автоінформація це безкоштовна мова сценаріїв, розроблена для автоматизації Windows Графічний інтерфейс користувача та загальні сценарії. Він використовує комбінацію рухів миші, натискань клавіш та маніпулювання елементами керування вікном для автоматизації завдання, яке неможливо виконати за допомогою Selenium WebDriver.

Як завантажити та встановити AutoIt

Крок 1) Перейдіть до цього зв'язок.

Крок 2) Наведіть курсор на пункти «AutoIt» та випадаючий список «AutoIt Editor».

Завантажте та встановіть AutoIt

Крок 3) Натисніть на опцію завантажень «AutoIt».

Завантажте та встановіть AutoIt

Крок 4) Завантажте «AutoIt», натиснувши кнопку «Завантажити AutoIt».

Завантажте та встановіть AutoIt

Крок 5) Тепер завантажте «AutoIt editor», натиснувши кнопку «Завантаження».

Завантажте та встановіть AutoIt

Крок 6) Натисніть на посилання, як показано нижче.

Завантажте та встановіть AutoIt

Після завантаження ви отримаєте два файли налаштування, як показано на екрані нижче, перший - AutoIt версія 3 налаштування та другий є Scitautoit3.

Завантажте та встановіть AutoIt

Крок 7) Щоб встановити AutoIt, натисніть на обидві установки AutoIt одну за одною.

Крок 8) Після успішної інсталяції відкрийте AutoIt Editor.

Перейдіть до "C:\Program Files (x86)\AutoIt3\SciTE"

Завантажте та встановіть AutoIt

І натисніть на файл 'SciTE.exe', відкриється редактор AutoIt, як показано на екрані нижче.

Завантажте та встановіть AutoIt

Крок 9) Тепер відкрийте ідентифікатор елемента.

Перейдіть до папки «C:\Program Files (x86)\AutoIt3»

Завантажте та встановіть AutoIt

І натисніть на файл 'Au3Info.exe', ідентифікатор елемента відкриється, як показано на екрані нижче.

Завантажте та встановіть AutoIt

Примітка: Після того, як ви закінчите з цим ідентифікатором елемента, вам потрібно закрити його вручну; він не закриється автоматично.

Як використовувати AutoIt у Selenium

У цьому розділі ми розглянемо, як використовувати редактор AutoIt та як знайти елемент у вікні завантаження файлів за допомогою ідентифікатора елемента AutoIt (ідентифікатор елемента – це інструмент, подібний до Selenium IDE; ідентифікатор знаходить елемент графічного інтерфейсу вікна або спливаючі вікна, що не є HTML, і надає атрибут елемента, наприклад назву, клас, екземпляр) та як написати скрипт у редакторі AutoIt за допомогою 3 методів.

Наприклад: Ми скористаємося сторінкою «Напишіть нам» Guru99 для завантаження резюме (файл Doc).

Після натискання кнопки «Вибрати файл» на сторінці «Написати нам» нам потрібно викликати скрипт AutoIt. Керування одразу передається AutoIt після натискання кнопки «Вибрати файл» за допомогою наведеної нижче інструкції, яка й бере на себе завантаження.

Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe");

Зрештою, коли ми запускаємо Selenium скрипт, він заповнить форму-> завантажити резюме-> надіслати форму.

Використовуйте AutoIt In Selenium

Крок 1) Тепер відкрийте «Ідентифікатор елемента». Перейдіть до «C:\Program Files (x86)\AutoIt3» та натисніть на файл «Au3Info.exe». Відкриється вікно ідентифікатора елемента, як показано на екрані нижче.

Використовуйте AutoIt In Selenium

Крок 2) Тепер відкрийте вікно завантаження файлів, натиснувши кнопку «Вибрати файл», яка є Windows діяльності.

Використовуйте AutoIt In Selenium

Крок 3) Перетягніть інструмент пошуку на елемент поля «Ім’я файлу» вікна завантаження файлів, щоб знайти інформацію про основні атрибути, як показано на екрані нижче за допомогою стрілки.

Використовуйте AutoIt In Selenium

Ми можемо отримати значення атрибутів, тобто title='Відкрити', class='Edit' та екземпляр='1' як показано нижче. Ці значення використовуються під час написання прикладу скрипта AutoIt, як пояснено нижче в кроці 4.

Використовуйте AutoIt In Selenium

Крок 4) Тепер відкрийте редактор скриптів AutoIt, перейдіть до 'C:\Program Files (x86)\AutoIt3\SciTE' та натисніть на 'SciTE.exe', як показано на кроці 7 з 1st тема.

Почніть писати сценарій для вибору файлу для завантаження.

Існує багато методів, які ми можемо використовувати у скрипті відповідно до вимог, але зараз ми зосередимося на наведених нижче методах, оскільки ці методи необхідні для написання скрипта завантаження файлів:

  1. ControlFocus(" title "," text ",controlID ) //Встановлює фокус введення на даний елемент керування у вікні.
  2. ControlSetText(" заголовок "," текст ",controlID ," Шлях до файлу, який потрібно завантажити " ) // Встановлює текст елемента керування.
  3. ControlClick(" title "," text ",controlID ) //Надсилає команду клацання миші до даного елемента керування.

Ви можете побачити кілька методів, як показано на екрані нижче. Перевагою AutoIt є те, що він чимось схожий на Eclipse що пропонує деякі методи.

Використовуйте AutoIt In Selenium

Тут, у редакторі AutoIt, ми вибрали «контрольний фокус» метод. Ідентифікатор елемента вже відкрито та згорнуто, оскільки елемент уже ідентифіковано на кроці 3 вище. Ми можемо відкрити його, розгорнувши його.

Тепер ми візьмемо значення з ідентифікатора елемента для методів 'ControlFocus' та 'ControlSetText', оскільки ці методи працюють з одним і тим самим елементом, тобто текстовим полем 'Ім'я файлу', але для методу 'ControlClick' нам потрібно отримати значення іншого елемента, тобто кнопки 'Відкрити'.

Значення параметрів для ControlFocus метод:

Цей метод встановлює фокус на текстове поле «Ім’я файлу» у вікні завантаження файлів.

  • 1-й параметр назву це «Відкрито».
  • Ми ігноруємо другий параметр, текст не потрібно.
  • 3-й параметр controlID — це комбінація class='Edit' та Instance='1′, тобто 'Edit1'.
    ControlFocus("Open","","Edit1") // This method sets input focus to 'File name' text box.

Використовуйте AutoIt In Selenium

Значення параметрів для ControlSetText метод:

Цей метод використовується для визначення шляху до файлу, який нам потрібно завантажити, у текстовому полі «Ім'я файлу». Іншими словами, цей метод використовується для встановлення тексту в елементі введення.

  • 1-й параметр назву це «Відкрито».
  • Ми ігноруємо другий параметр, текст не потрібно.
  • 3-й параметр controlID — це комбінація class='Edit' та Instance='1′, тобто ”Edit1 “.
  • 4-й параметр новий текст, ми передаємо шлях до файлу, який нам потрібно завантажити.
    ControlSetText("Open","","Edit1","E:\Resume\resume.doc") // This method inputs file path of a control.

Використовуйте AutoIt In Selenium

Після виконання вищезазначеного кроку не закривайте вікна (редактора та ідентифікатора елемента); залиште їх відкритими. Вам знову потрібно відкрити вікно завантаження файлів, щоб знайти атрибути кнопки «Відкрити», як показано нижче на кроці 5.

Крок 5) Тепер перетягніть інструмент пошуку на кнопку «Відкрити» у вікні завантаження файлів, щоб знайти основну інформацію про атрибути.

Попередні значення (тобто атрибути текстового поля «Ім’я файлу») перезаписуються новими значеннями кнопки «Відкрити». Ви можете бачити, що атрибут класу тепер змінено на «button», який раніше був «edit» у вікні ідентифікатора елемента AutoIt.

Використовуйте AutoIt In Selenium

Ми можемо отримати значення атрибутів, тобто title='Відкрити', class='Кнопка' та екземпляр='1' як показано нижче. Ці значення використовуються під час написання скрипта AutoIt, як пояснено нижче.

Використовуйте AutoIt In Selenium

Значення параметрів для ControlClick метод:

Цей метод вимагає натискання кнопки «Відкрити» у вікні завантаження файлів.

  • 1-й параметр назву це «Відкрито».
  • Ми ігноруємо другий параметр; текст не потрібно.
  • 3-й параметр controlID це комбінація класу та екземпляра, тобто «Кнопка1».
ControlClick("Open","","Button1") //This method clicks on 'Open' button of file uploader.

Використовуйте AutoIt In Selenium

Крок 6) На екрані нижче ви можете побачити, що скрипт AutoIt для обробки завантаження файлів завершено. Тепер ви можете закрити ідентифікатор елемента та зберегти скрипт як «FileUpload» у вказаному місці (E:\AutoIT).

Використовуйте AutoIt In Selenium

Тепер ви не можете виконати цей скрипт безпосередньо; вам потрібно скомпілювати його.

Для компіляції цього скрипта у вас є два варіанти “компілювати сценарій x64"І"компілювати сценарій x86«Якщо у вас є Windows 32-бітна машина, тоді перейдіть до «компілювати сценарій x86«і для Windows 64-бітна машина, виберіть «компілювати сценарій x64».

Використовуйте AutoIt In Selenium

Крок 7) «Завантаження файлу.exe» файл генерується після компіляції; ви можете побачити його на екрані нижче. Тепер ми можемо використовувати цей файл у Selenium Скрипт WebDriver.

Використовуйте AutoIt In Selenium

Тепер ми будемо використовувати цей скрипт AutoIt у Selenium WebDriver. Перевірте нижче результат.

Завантажити файл в Selenium Використання AutoIt

В Selenium скрипт, ми знаходимо елементи форми та заповнюємо кожен елемент даними відповідно до вимог, а потім завантажуємо файл 'resume.doc', виконавши файл AutoIt exe, згенерований скриптом AutoIt, а потім дозволяємо надіслати форму в Selenium Скрипт AutoIt.

  • відкритий Eclipse і почати писати код.
  • Коли Selenium натискає кнопку «Вибрати файл», відкриється вікно завантаження файлів.
  • Потім нам потрібно викликати скрипт AutoIt; керування негайно передається AutoIt для завантаження файлу, а потім керування надсилається назад до Selenium як показано нижче.

Завантажити файл Selenium Використання AutoIt

Крок 1) розвивати Selenium сценарій в Eclipse.

  • Час виконання клас дозволяє сценарію взаємодіяти з середовищем, у якому виконується сценарій.
  • getRuntime () отримує поточне середовище виконання, пов'язане з цим процесом.
  • exec () Метод виконує скрипт AutoIt (FileUpload.exe).
Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe");

У вищезгаданому рядку буде викликано Скрипт AutoIt in Selenium та завантажте файл.

Завантажити файл Selenium Використання 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) throws IOException {
    WebDriver driver=new FirefoxDriver();
    driver.get("https://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("test.test@gmail.com");
    driver.findElement(By.id("input_4")).click();
    // below line execute the AutoIT script .
     Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe");
    driver.findElement(By.id("input_6")).sendKeys("AutoIT in Selenium");
    driver.findElement(By.id("input_2")).click();
    driver.close();
     }
}

Крок 3) Перевірте результат; файл resume.doc успішно завантажено, і з’явиться повідомлення з подякою.

Завантажити файл Selenium Використання AutoIt

Навіщо використовувати AutoIt?

Selenium — це інструмент з відкритим кодом, розроблений для автоматизації веб-застосунків у різних браузерах, але для обробки графічного інтерфейсу вікна та спливаючих вікон, що не є HTML, у застосунку AutoIt… Selenium обов'язковий, оскільки ці дії, пов'язані з вікном, не обробляються Selenium.

Використовуйте AutoIt

Далі в цьому посібнику з AutoIt ми дізнаємося, як завантажити файл у Selenium WebDriver за допомогою AutoIt. Для цього нам знадобляться три інструменти.

  • Selenium веб-драйвер
  • Редактор AutoIt та ідентифікатор елемента
  • Вікно, яке потрібно автоматизувати

Поширені запитання

Selenium WebDriver керує лише елементами браузера. AutoIt обробляє нативні елементи. Windows діалогові вікна, такі як вікна завантаження файлів, запити на завантаження та вікна базової автентифікації, з якими WebDriver не може безпосередньо взаємодіяти.

Інструмент Au3Info перевіряє будь-які видимі Windows елемент керування під курсором та повертає значення його заголовка, класу та екземпляра. Ці атрибути безпосередньо передаються у виклики ControlFocus, ControlSetText та ControlClick.

Так. Вихідний код .au3 має бути скомпільований у файл .exe з використанням параметра x86 або x64, що відповідає вашому комп'ютеру. Selenium потім викликає скомпільований FileUpload.exe через Runtime.getRuntime().exec().

AutoIt – це Windows-єдиний інструмент. Для macOS або діалогові вікна файлів Linux, використовуйте AppleScript, xdotool або sendKeys безпосередньо з шляхом до файлу, оскільки ці операційні системи не підтримують виконувані файли AutoIt.

Такі інструменти на основі ШІ Testim, Functionize та Mabl використовують комп'ютерний зір для розпізнавання рідних діалогів за візуальним макетом, а потім автоматично генерують логіку локатора. Це зменшує потребу в скриптах AutoIt під час обробки нестабільних або еволюціонуючих версій. Windows спливаючі вікна.

Так. Великі мовні моделі, такі як ChatGPT та Claude, можуть генерувати скрипти AutoIt з простих англійських підказок, що описують цільовий діалог, ідентифікатори елементів керування та шлях завантаження, які тестувальники потім можуть удосконалити та скомпілювати.

Підсумуйте цей пост за допомогою: