AutoIT v Selenium Návod: Jak to používat?

⚡ Chytré shrnutí

AutoIt v Selenium je freewarový skriptovací jazyk, který automatizuje Windows Dialogy grafického rozhraní a nativní vyskakovací okna, která Selenium WebDriver nemůže přímo ovládat, takže je to pomocník pro nahrávání souborů, stahování a ověřování.

  • 🤖 Účel: AutoIt rozšiřuje Selenium manipulací Windowsovládací prvky založené na , nativní dialogy a vyskakovací okna bez HTML, ke kterým lokátory WebDriveru nemohou dosáhnout.
  • 🪟 Identifikátor prvku: Nástroj Au3Info kontroluje ovládací prvky okna a zpřístupňuje atributy názvu, třídy a instance používané ke skriptování spolehlivých interakcí.
  • ⚙️ Základní metody: Prvky ControlFocus, ControlSetText a ControlClick tvoří minimální sadu potřebnou k vyplnění cest a odeslání dialogových oken pro nahrávání nativních souborů.
  • (Tj. Integrace: Zkompilovaný soubor FileUpload.exe se spustí z Selenium s Runtime.getRuntime().exec(), předávání řízení AutoIt a zpět bezproblémově.
  • 🧪 Praktické použití: Návod nahraje životopis na Guru99 demo formulář, ověřující kompletní provedení Selenium plus automatizační tok AutoIt.

AutoIT v Selenium

V čem je AutoIt Selenium?

AutoIt je freewarový skriptovací jazyk určený pro automatizaci Windows Grafické uživatelské rozhraní a obecné skriptování. Využívá kombinaci pohybu myši, stisknutí kláves a manipulace s ovládacími prvky okna k automatizaci úkolu, který není možný Selenium WebDriver.

Jak stáhnout a nainstalovat AutoIt

Krok 1) Přejděte na to odkaz.

Krok 2) Najeďte myší na „AutoIt“ a rozbalovací nabídku „Editor AutoIt“.

Stáhněte a nainstalujte AutoIt

Krok 3) Klikněte na možnost stahování „AutoIt“.

Stáhněte a nainstalujte AutoIt

Krok 4) Stáhněte si „AutoIt“ kliknutím na tlačítko „Stáhnout AutoIt“.

Stáhněte a nainstalujte AutoIt

Krok 5) Nyní si stáhněte „AutoIt editor“ kliknutím na tlačítko „Stáhnout“.

Stáhněte a nainstalujte AutoIt

Krok 6) Klikněte na odkaz, jak je uvedeno níže.

Stáhněte a nainstalujte AutoIt

Po stažení získáte dva instalační soubory, jak je znázorněno na obrazovce níže, první je AutoIt verze 3 nastavení a druhá je Scitautoit3.

Stáhněte a nainstalujte AutoIt

Krok 7) Pro instalaci AutoIt klikněte na obě nastavení AutoIt postupně.

Krok 8) Po úspěšné instalaci otevřete AutoIt Editor.

Přejděte na 'C:\Program Files (x86)\AutoIt3\SciTE'

Stáhněte a nainstalujte AutoIt

A klikněte na soubor 'SciTE.exe', otevře se editor AutoIt, jak je znázorněno na níže uvedené obrazovce.

Stáhněte a nainstalujte AutoIt

Krok 9) Nyní otevřete identifikátor prvku.

Přejděte do složky 'C:\Program Files (x86)\AutoIt3'

Stáhněte a nainstalujte AutoIt

A klikněte na soubor 'Au3Info.exe', otevře se identifikátor prvku, jak je znázorněno na níže uvedené obrazovce.

Stáhněte a nainstalujte AutoIt

Poznámka: Jakmile s tímto identifikátorem prvku skončíte, musíte jej zavřít ručně; automaticky se nezavře.

Jak používat AutoIt v Selenium

V této části si ukážeme, jak používat editor AutoIt a jak najít prvek v okně pro nahrávání souborů pomocí identifikátoru prvku AutoIt (identifikátor prvku je nástroj podobný Selenium IDE; identifikátor vyhledává element grafického uživatelského rozhraní okna nebo vyskakovacích oken jiných než HTML a poskytuje atribut elementu, například titul, třída, instance) a jak napsat skript v editoru AutoIt pomocí 3 metod.

Pro příklad: Použijeme stránku „Napište nám“ Guru99 pro nahrání životopisu (soubor DOC).

Po kliknutí na tlačítko „Vybrat soubor“ na stránce „Napište nám“ je třeba zavolat skript AutoIt. Řízení je po kliknutí na „Vybrat soubor“ okamžitě přeneseno na AutoIt pomocí níže uvedeného příkazu, který se postará o nahrávání.

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

Nakonec, když spustíme Selenium skript, vyplní formulář -> nahraje životopis -> odešle formulář.

Použijte AutoIt v Selenium

Krok 1) Nyní otevřete identifikátor prvku. Přejděte do složky 'C:\Program Files (x86)\AutoIt3' a klikněte na soubor 'Au3Info.exe'. Otevře se okno s identifikátorem prvku, jak je znázorněno na následující obrazovce.

Použijte AutoIt v Selenium

Krok 2) Nyní otevřete okno pro nahrávání souborů kliknutím na tlačítko „Vybrat soubor“, což je Windows aktivitu.

Použijte AutoIt v Selenium

Krok 3) Přetáhněte nástroj pro vyhledávání na prvek pole „Název souboru“ v okně pro nahrávání souborů a vyhledejte základní informace o atributech, jak je znázorněno na obrazovce níže se šipkou.

Použijte AutoIt v Selenium

Můžeme získat hodnotu atributů, tj. title='Otevřít', class='Upravit' a instance='1′ jak je uvedeno níže. Tyto hodnoty se používají při zápisu příkladu skriptu AutoIt, jak je vysvětleno v kroku 4 níže.

Použijte AutoIt v Selenium

Krok 4) Nyní otevřete editor skriptů AutoIt, přejděte do složky 'C:\Program Files (x86)\AutoIt3\SciTE' a klikněte na 'SciTE.exe', jak je znázorněno v kroku 7 z 1.st téma.

Začněte psát skript pro výběr souboru k nahrání.

Existuje mnoho metod, které můžeme ve skriptu použít dle požadavků, ale nyní se zaměříme na níže uvedené metody, protože tyto metody jsou nezbytné pro napsání skriptu pro nahrávání souborů:

  1. ControlFocus(“ title “,” text “,controlID ) //Nastaví vstupní fokus na daný ovládací prvek v okně.
  2. ControlSetText(“ title “,” text “,controlID ,” Cesta k souboru, který je třeba nahrát “) // Nastaví text ovládacího prvku.
  3. ControlClick(“ title “,” text “,controlID ) //Pošle příkaz kliknutí myší na daný ovládací prvek.

Jak je znázorněno na níže uvedené obrazovce, je zobrazeno několik metod. Dobrou vlastností AutoIt je, že je do jisté míry podobný Eclipse což naznačuje některé metody.

Použijte AutoIt v Selenium

Zde v editoru AutoIt jsme vybrali "kontrola zaměření" metoda. Identifikátor prvku je již otevřen a minimalizován, protože prvek je již identifikován v kroku 3 výše. Můžeme jej otevřít maximalizací.

Nyní vezmeme hodnoty z identifikátoru elementu pro metody 'ControlFocus' a 'ControlSetText', protože tyto metody pracují se stejným elementem, tj. textovým polem 'Název souboru', ale pro metodu 'ControlClick' potřebujeme zachytit hodnoty jiného elementu, tj. tlačítka 'Otevřít'.

Hodnoty parametrů pro ControlFocus metoda:

Tato metoda nastaví fokus na textové pole „Název souboru“ v okně pro nahrávání souborů.

  • 1. parametr titul je otevřeno ".
  • Druhý parametr, tj. (souhrnně „Stránka (Stránky)“), a naše postupy pro shromažďování, využívání, uchovávání, ochranu a zpřístupnění takových informací. Tyto zásady platí pro informace, které shromažďujeme na těchto stránkách nebo v e-mailu, textových a jiných elektronických zprávách mezi vámi a těmito stránkami. Rovněž popisují vaše možnosti týkající se využívání vašich osobních údajů, přístupu k nim a jejich opravě. není nutné.
  • 3. parametr controlID je kombinací class='Edit' a Instance='1′, tj. 'Edit1'.
    ControlFocus("Open","","Edit1") // This method sets input focus to 'File name' text box.

Použijte AutoIt v Selenium

Hodnoty parametrů pro ControlSetText metoda:

Tato metoda se používá k definování cesty k souboru, který potřebujeme nahrát, do textového pole „Název souboru“. Jinými slovy můžeme říci, že tato metoda slouží k nastavení textu do vstupního prvku.

  • 1. parametr titul je otevřeno ".
  • Druhý parametr, tj. (souhrnně „Stránka (Stránky)“), a naše postupy pro shromažďování, využívání, uchovávání, ochranu a zpřístupnění takových informací. Tyto zásady platí pro informace, které shromažďujeme na těchto stránkách nebo v e-mailu, textových a jiných elektronických zprávách mezi vámi a těmito stránkami. Rovněž popisují vaše možnosti týkající se využívání vašich osobních údajů, přístupu k nim a jejich opravě. není nutné.
  • 3. parametr controlID je kombinací class='Edit' a Instance='1′, tj. „Edit1“.
  • 4. parametr nový text, předáváme cestu k souboru, který potřebujeme nahrát.
    ControlSetText("Open","","Edit1","E:\Resume\resume.doc") // This method inputs file path of a control.

Použijte AutoIt v Selenium

Po provedení výše uvedeného kroku nezavírejte okna (editoru a identifikátoru prvku); nechte je otevřená. Znovu je třeba otevřít okno pro nahrávání souborů, abyste našli atributy tlačítka „Otevřít“, jak je znázorněno v kroku 5 níže.

Krok 5) Nyní přetáhněte nástroj pro vyhledávání na tlačítko „Otevřít“ v okně pro nahrávání souborů a vyhledejte základní informace o atributech.

Předchozí hodnoty (tj. atributy textového pole „Název souboru“) se přepíší novými hodnotami tlačítka „Otevřít“. Vidíte, že atribut třídy se nyní změnil na „button“, což byl dříve atribut „edit“ v okně identifikátoru prvku AutoIt.

Použijte AutoIt v Selenium

Můžeme získat hodnotu atributů, tj. title='Otevřít', class='Button' a instance='1′ jak je uvedeno níže. Tyto hodnoty se používají při psaní skriptu AutoIt, jak je vysvětleno níže.

Použijte AutoIt v Selenium

Hodnoty parametrů pro ControlClick metoda:

Tato metoda spočívá v kliknutí na tlačítko „Otevřít“ v okně pro nahrávání souborů.

  • 1. parametr titul je otevřeno ".
  • Druhý parametr ignorujeme, tj. (souhrnně „Stránka (Stránky)“), a naše postupy pro shromažďování, využívání, uchovávání, ochranu a zpřístupnění takových informací. Tyto zásady platí pro informace, které shromažďujeme na těchto stránkách nebo v e-mailu, textových a jiných elektronických zprávách mezi vámi a těmito stránkami. Rovněž popisují vaše možnosti týkající se využívání vašich osobních údajů, přístupu k nim a jejich opravě. není nutné.
  • 3. parametr controlID je kombinací třídy a instance, tj. „Button1“.
ControlClick("Open","","Button1") //This method clicks on 'Open' button of file uploader.

Použijte AutoIt v Selenium

Krok 6) Na níže uvedené obrazovce vidíte, že skript AutoIt pro nahrání souboru je dokončen. Nyní můžete zavřít identifikátor prvku a uložit skript jako „FileUpload“ na zadané místo (E:\AutoIT).

Použijte AutoIt v Selenium

Nyní tento skript nemůžete spustit přímo; musíte jej zkompilovat.

Pro kompilaci tohoto skriptu máte dvě možnosti „kompilační skript x64"A"kompilační skript x86„. Pokud máte Windows 32bitový stroj pak přejděte k „kompilační skript x86„a pro Windows 64bitový stroj, zvolte „kompilační skript x64. "

Použijte AutoIt v Selenium

Krok 7) 'Nahrávání souboru.exe' Soubor se vygeneruje po kompilaci; můžete ho vidět na obrazovce níže. Nyní můžeme tento soubor použít v Selenium Skript WebDriveru.

Použijte AutoIt v Selenium

Nyní použijeme tento skript AutoIt v Selenium WebDriver. Výstup naleznete níže.

Nahrát soubor do Selenium Používání AutoIt

V Selenium skriptu, najdeme prvky formuláře a vyplníme do každého prvku data podle potřeby a nahrajeme soubor 'resume.doc' spuštěním souboru AutoIt exe vygenerovaného ze skriptu AutoIt a poté povolíme odeslání formuláře v Selenium AutoIt skript.

  • Otevřená Eclipse a začněte psát kód.
  • Kdy Selenium kliknete na tlačítko Vybrat soubor, otevře se okno pro nahrávání souborů.
  • Pak musíme zavolat skript AutoIt; ovládání se okamžitě přenese do AutoIt, aby se soubor nahrál, a poté se ovládání odešle zpět do Selenium jak je uvedeno níže.

Nahrát soubor do Selenium Používání AutoIt

Krok 1) Rozvíjet Selenium skript v Eclipse.

  • Runtime třída umožňuje skriptu propojit se s prostředím, ve kterém skript běží.
  • getRuntime () Získá aktuální běhové prostředí přidružené k tomuto procesu.
  • exec() Metoda spustí skript AutoIt (FileUpload.exe).
Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe");

Výše uvedený řádek zavolá Skript AutoIt in Selenium a nahrajte soubor.

Nahrát soubor do Selenium Používání AutoIt

Krok 2) Spustit Selenium skript v 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();
     }
}

Krok 3) Ověřte výstup; soubor resume.doc byl úspěšně nahrán a zobrazí se zpráva s poděkováním.

Nahrát soubor do Selenium Používání AutoIt

Proč používat AutoIt?

Selenium je open source nástroj určený k automatizaci webových aplikací v různých prohlížečích, ale pro zpracování grafického rozhraní okna a vyskakovacích oken jiných než HTML v aplikaci, AutoIt v Selenium je vyžadováno, protože tyto aktivity založené na oknech nejsou zpracovávány Selenium.

Použijte AutoIt

V tomto tutoriálu AutoIt se dále naučíme, jak nahrát soubor do Selenium WebDriver pomocí AutoIt. K tomu potřebujeme tři nástroje.

  • Selenium webový ovladač
  • Editor AutoIt a identifikátor elementu
  • Okno, které chcete automatizovat

Nejčastější dotazy

Selenium WebDriver ovládá pouze prvky prohlížeče. AutoIt zvládá nativní Windows dialogová okna, jako jsou okna pro nahrávání souborů, výzvy ke stahování a základní okna pro ověřování, se kterými WebDriver nemůže přímo interagovat.

Nástroj Au3Info kontroluje veškeré viditelné Windows ovládací prvek pod kurzorem a vrací jeho hodnoty názvu, třídy a instance. Tyto atributy se přímo předávají voláním ControlFocus, ControlSetText a ControlClick.

Ano. Zdrojový kód .au3 musí být zkompilován do souboru .exe s použitím parametru x86 nebo x64 odpovídajícího vašemu počítači. Selenium pak zavolá zkompilovaný soubor FileUpload.exe pomocí funkce Runtime.getRuntime().exec().

AutoIt je Windows- jediný nástroj. Pro macOS nebo dialogová okna souborů v systému Linux použijte AppleScript, xdotool nebo sendKeys přímo s cestou k souboru, protože tyto operační systémy nepodporují spustitelné soubory AutoIt.

Nástroje poháněné umělou inteligencí jako např Testim, Functionize a Mabl používají počítačové vidění k rozpoznávání nativních dialogů podle vizuálního rozvržení a poté automaticky generují logiku lokátoru. To snižuje potřebu skriptů AutoIt při práci s nestabilními nebo vyvíjejícími se verzemi. Windows vyskakovací okna.

Ano. Rozsáhlé jazykové modely, jako například ChatGPT a Claude, dokáží generovat skripty AutoIt z jednoduchých anglických pokynů popisujících cílový dialog, ID ovládacích prvků a cestu k nahrávání, které pak testeři mohou upřesnit a zkompilovat.

Shrňte tento příspěvek takto: