AutoIT in Selenium Tutorial: Wie benutzt man es?

โšก Intelligente Zusammenfassung

AutoIt in Selenium ist eine kostenlose Skriptsprache, die automatisiert Windows GUI-Dialoge und native Popups, die Selenium WebDriver kann dies nicht direkt steuern, daher ist er der ideale Helfer fรผr Datei-Uploads, Downloads und Authentifizierungsaufforderungen.

  • ๐Ÿค– Zweck: AutoIt erweitert Selenium durch Umgang Windows-basierte Steuerelemente, native Dialoge und Nicht-HTML-Popups, die von WebDriver-Locators nicht erreicht werden kรถnnen.
  • ๐ŸชŸ Elementkennung: Das Tool Au3Info untersucht Fenstersteuerelemente und legt Titel-, Klassen- und Instanzattribute offen, die zur Skripterstellung zuverlรคssiger Interaktionen verwendet werden.
  • โš™๏ธ Kernmethoden: ControlFocus, ControlSetText und ControlClick bilden das Mindestset, das zum Ausfรผllen von Pfaden und zum Absenden nativer Dateiupload-Dialoge erforderlich ist.
  • โœ… Integration: Eine kompilierte FileUpload.exe wird ausgelรถst von Selenium mit Runtime.getRuntime().exec(), wodurch die Kontrolle nahtlos an AutoIt รผbergeben und wieder zurรผckgegeben wird.
  • ๐Ÿงช Praktischer Nutzen: Die Schritt-fรผr-Schritt-Anleitung lรคdt einen Lebenslauf auf die Website hoch. Guru99 Demoformular, รœberprรผfung der End-to-End-Funktionalitรคt Selenium plus AutoIt-Automatisierungsablauf.

AutoIT in Selenium

Worin ist AutoIt enthalten? Selenium?

AutoIt ist eine kostenlose Skriptsprache, die zur Automatisierung entwickelt wurde Windows GUI und allgemeine Skripterstellung. Es nutzt eine Kombination aus Mausbewegungen, Tastatureingaben und Fenstersteuerung, um eine Aufgabe zu automatisieren, die ohne Maus nicht mรถglich wรคre. Selenium WebDriver.

So laden Sie AutoIt herunter und installieren es

Schritt 1) Gehe dahin Link.

Schritt 2) Bewegen Sie den Mauszeiger รผber die Dropdown-Menรผs โ€žAutoItโ€œ und โ€žAutoIt Editorโ€œ.

AutoIt herunterladen und installieren

Schritt 3) Klicken Sie auf die Option โ€žAutoIt Downloadsโ€œ.

AutoIt herunterladen und installieren

Schritt 4) Laden Sie โ€žAutoItโ€œ herunter, indem Sie auf die Schaltflรคche โ€žAutoIt herunterladenโ€œ klicken.

AutoIt herunterladen und installieren

Schritt 5) Laden Sie jetzt den โ€žAutoIt Editorโ€œ herunter, indem Sie auf die Schaltflรคche โ€žDownloadsโ€œ klicken.

AutoIt herunterladen und installieren

Schritt 6) Klicken Sie auf den unten gezeigten Link.

AutoIt herunterladen und installieren

Nach dem Herunterladen erhalten Sie zwei Installationsdateien, wie im folgenden Screenshot dargestellt. Die erste istโ€ฆ AutoIt-Version 3 Setup und zweitens ist Scitautoit3.

AutoIt herunterladen und installieren

Schritt 7) Um AutoIt zu installieren, klicken Sie nacheinander auf beide AutoIt-Setups.

Schritt 8) Nach erfolgreicher Installation รถffnen Sie den AutoIt Editor.

Gehen Sie zu โ€žC:\Programme (x86)\AutoIt3\SciTEโ€œ.

AutoIt herunterladen und installieren

Klicken Sie auf die Datei โ€žSciTE.exeโ€œ. Der AutoIt-Editor รถffnet sich, wie im folgenden Screenshot dargestellt.

AutoIt herunterladen und installieren

Schritt 9) ร–ffnen Sie nun das Element โ€žIdentifierโ€œ.

Gehen Sie zu 'C:\Program Files (x86)\AutoIt3'

AutoIt herunterladen und installieren

Klicken Sie auf die Datei โ€žAu3Info.exeโ€œ. Die Elementkennung wird wie im folgenden Bildschirm angezeigt geรถffnet.

AutoIt herunterladen und installieren

Hinweis: Sobald Sie mit diesem Elementbezeichner fertig sind, mรผssen Sie ihn manuell schlieรŸen; er schlieรŸt sich nicht automatisch.

Wie man AutoIt verwendet Selenium

Hier erfahren Sie, wie Sie den AutoIt-Editor verwenden und wie Sie mithilfe des AutoIt-Elementbezeichners (ein Tool wie z. B. โ€ฆ) ein Element im Datei-Uploader-Fenster finden. Selenium IDE; der Bezeichner findet das Element der Fenster-GUI oder von Nicht-HTML-Popups und liefert das Attribut des Elements wie z. B. Titel, Klasse, Instanz) und wie man mit drei Methoden ein Skript im AutoIt-Editor schreibt.

Zum Beispiel: Wir werden die Seite โ€žSchreiben Sie unsโ€œ verwenden. Guru99 fรผr das Hochladen eines Lebenslaufs (Doc-Datei).

Nach dem Klicken auf die Schaltflรคche โ€žDatei auswรคhlenโ€œ auf der Seite โ€žSchreiben Sie unsโ€œ muss das AutoIt-Skript aufgerufen werden. Die Steuerung wird nach dem Klicken auf โ€žDatei auswรคhlenโ€œ durch die folgende Anweisung sofort an AutoIt รผbergeben, welches den Upload-Vorgang รผbernimmt.

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

Wenn wir schlieรŸlich den Selenium Das Skript fรผllt das Formular aus -> Lebenslauf hochladen -> Formular absenden.

Verwenden Sie AutoIt in Selenium

Schritt 1) ร–ffnen Sie nun den Elementbezeichner. Gehen Sie zu โ€žC:\Program Files (x86)\AutoIt3โ€œ und klicken Sie auf die Datei โ€žAu3Info.exeโ€œ. Das Fenster zur Elementidentifizierung รถffnet sich wie im folgenden Screenshot dargestellt.

Verwenden Sie AutoIt in Selenium

Schritt 2) ร–ffnen Sie nun das Dateiupload-Fenster, indem Sie auf โ€žDatei auswรคhlenโ€œ klicken. Windows Aktivitรคt.

Verwenden Sie AutoIt in Selenium

Schritt 3) Ziehen Sie das Suchwerkzeug auf das Feld โ€žDateinameโ€œ im Datei-Uploader-Fenster, um die grundlegenden Attributinformationen zu finden, wie im folgenden Screenshot mit dem Pfeil dargestellt.

Verwenden Sie AutoIt in Selenium

Wir kรถnnen den Wert von Attributen abrufen, z. B. title='Offen', class='Bearbeiten' und Instanz='1โ€ฒ Wie unten dargestellt, werden diese Werte beim Schreiben des AutoIt-Skriptbeispiels verwendet, wie in Schritt 4 unten erlรคutert.

Verwenden Sie AutoIt in Selenium

Schritt 4) ร–ffnen Sie nun den AutoIt-Skripteditor, navigieren Sie zu โ€žC:\Program Files (x86)\AutoIt3\SciTEโ€œ und klicken Sie auf โ€žSciTE.exeโ€œ, wie in Schritt 7 von Kapitel 1 gezeigt.st Thema.

Beginnen Sie mit dem Schreiben eines Skripts zur Auswahl einer hochzuladenden Datei.

Es stehen zahlreiche Methoden zur Verfรผgung, die wir je nach Anforderung in einem Skript verwenden kรถnnen, aber wir konzentrieren uns jetzt auf die folgenden Methoden, da diese fรผr das Schreiben des Datei-Upload-Skripts erforderlich sind:

  1. Kontrollfokus(โ€žTitelโ€œ, โ€žTextโ€œ, โ€žKontroll-IDโ€œ) //Setzt den Eingabefokus auf ein bestimmtes Steuerelement in einem Fenster.
  2. ControlSetText(โ€žTitelโ€œ, โ€žTextโ€œ, โ€žKontroll-IDโ€œ, โ€žDateipfad, der hochgeladen werden mussโ€œ) // Legt den Text eines Steuerelements fest.
  3. ControlClick(โ€žTitelโ€œ, โ€žTextโ€œ, โ€žKontroll-IDโ€œ) //Sendet einen Mausklickbefehl an ein bestimmtes Steuerelement.

Wie im folgenden Screenshot dargestellt, werden verschiedene Methoden angezeigt. Ein Vorteil von AutoIt ist, dass es gewissermaรŸen โ€ฆ Eclipse Das deutet auf einige der Methoden hin.

Verwenden Sie AutoIt in Selenium

Hier im AutoIt-Editor haben wir Folgendes ausgewรคhlt: โ€žKontrollfokusโ€œ Methode. Die Elementkennung ist bereits geรถffnet und minimiert, da das Element bereits in Schritt 3 oben identifiziert wurde. Wir kรถnnen es รถffnen, indem wir es maximieren.

Nun verwenden wir die Werte aus der Elementkennung fรผr die Methoden 'ControlFocus' und 'ControlSetText', da diese Methoden auf dasselbe Element, nรคmlich das Textfeld 'Dateiname', angewendet werden. Fรผr die Methode 'ControlClick' mรผssen wir jedoch die Werte eines anderen Elements, nรคmlich der Schaltflรคche 'ร–ffnen', erfassen.

Parameterwerte fรผr Kontrollfokus Verfahren:

Diese Methode setzt den Fokus auf das Textfeld โ€žDateinameโ€œ des Dateiupload-Fensters.

  • 1. Parameter Titel ist offen ".
  • Wir ignorieren den zweiten Parameter, den Text ist nicht nรถtig.
  • 3. Parameter Kontroll-ID ist die Kombination aus class='Edit' und Instance='1โ€ฒ, d.h. 'Edit1'.
    ControlFocus("Open","","Edit1") // This method sets input focus to 'File name' text box.

Verwenden Sie AutoIt in Selenium

Parameterwerte fรผr ControlSetText Verfahren:

Diese Methode dient dazu, den Pfad einer Datei festzulegen, die im Textfeld โ€žDateinameโ€œ hochgeladen werden soll. Anders ausgedrรผckt: Mit dieser Methode wird der Text im Eingabefeld definiert.

  • 1. Parameter Titel ist offen ".
  • Wir ignorieren den zweiten Parameter, den Text ist nicht nรถtig.
  • 3. Parameter Kontroll-ID ist die Kombination aus class='Edit' und Instance='1โ€ฒ, d.h. โ€ Edit1 โ€œ.
  • 4. Parameter neuer TextWir รผbergeben den Pfad der Datei, die wir hochladen mรถchten.
    ControlSetText("Open","","Edit1","E:\Resume\resume.doc") // This method inputs file path of a control.

Verwenden Sie AutoIt in Selenium

Nach dem obigen Schritt dรผrfen die Fenster (Editor und Elementbezeichner) nicht geschlossen werden; sie mรผssen geรถffnet bleiben. AnschlieรŸend muss das Dateiupload-Fenster erneut geรถffnet werden, um die Attribute der Schaltflรคche โ€žร–ffnenโ€œ zu finden (siehe Schritt 5 unten).

Schritt 5) Ziehen Sie nun das Suchwerkzeug auf das Element der Schaltflรคche โ€žร–ffnenโ€œ im Datei-Upload-Fenster, um die grundlegenden Attributinformationen zu finden.

Die bisherigen Werte (d. h. die Attribute des Textfelds โ€žDateinameโ€œ) werden durch die neuen Werte der Schaltflรคche โ€žร–ffnenโ€œ รผberschrieben. Im Fenster zur Elementidentifizierung von AutoIt ist zu sehen, dass das Klassenattribut nun โ€žbuttonโ€œ lautet, vorher war es โ€žeditโ€œ.

Verwenden Sie AutoIt in Selenium

Wir kรถnnen den Wert von Attributen abrufen, z. B. title='Offen', class='Button' und Instanz='1โ€ฒ Wie unten dargestellt, werden diese Werte beim Schreiben von AutoIt-Skripten verwendet, wie nachfolgend erlรคutert.

Verwenden Sie AutoIt in Selenium

Parameterwerte fรผr ControlClick Verfahren:

Bei dieser Methode wird auf die Schaltflรคche โ€žร–ffnenโ€œ im Fenster des Datei-Uploaders geklickt.

  • 1. Parameter Titel ist offen ".
  • Wir ignorieren den zweiten Parameter; Text ist nicht nรถtig.
  • 3. Parameter Kontroll-ID ist die Kombination aus Klasse und Instanz, also โ€žButton1โ€œ.
ControlClick("Open","","Button1") //This method clicks on 'Open' button of file uploader.

Verwenden Sie AutoIt in Selenium

Schritt 6) Im folgenden Screenshot sehen Sie, dass das AutoIt-Skript fรผr den Datei-Upload fertiggestellt ist. Sie kรถnnen nun den Elementbezeichner schlieรŸen und das Skript unter dem Namen โ€žFileUploadโ€œ im angegebenen Verzeichnis (E:\AutoIT) speichern.

Verwenden Sie AutoIt in Selenium

Dieses Skript kann nicht direkt ausgefรผhrt werden; Sie mรผssen es kompilieren.

Zum Kompilieren dieses Skripts haben Sie zwei Mรถglichkeiten:Kompilierungsskript x64" und "Kompilierungsskript x86โ€žWenn Sie ein Windows Bei einer 32-Bit-Maschine dann wรคhlen Sie โ€žKompilierungsskript x86โ€žund fรผr einen Windows Bei einer 64-Bit-Maschine wรคhlen Sie โ€žKompilierungsskript x64"

Verwenden Sie AutoIt in Selenium

Schritt 7) 'FileUpload exe' Die Datei wird nach der Kompilierung generiert; Sie kรถnnen sie im folgenden Screenshot sehen. Diese Datei kann nun verwendet werden. Selenium WebDriver-Skript.

Verwenden Sie AutoIt in Selenium

Nun werden wir dieses AutoIt-Skript verwenden in Selenium WebDriver. Die Ausgabe finden Sie unten.

Datei hochladen in Selenium AutoIt verwenden

Kurz und Selenium Mithilfe des Skripts werden die Formularfelder ermittelt, die erforderlichen Daten in jedes Feld eingetragen und die Datei โ€žresume.docโ€œ durch Ausfรผhren der vom AutoIt-Skript generierten AutoIt-EXE-Datei hochgeladen. AnschlieรŸend kann das Formular abgeschickt werden. Selenium AutoIt-Skript.

  • ร–ffne Eclipse und beginnen Sie mit dem Schreiben von Code.
  • Wenn die Funktion Selenium Nach einem Klick auf die Schaltflรคche โ€žDatei auswรคhlenโ€œ รถffnet sich das Fenster zum Hochladen von Dateien.
  • Dann mรผssen wir das AutoIt-Skript aufrufen; die Steuerung wird sofort an AutoIt รผbergeben, um eine Datei hochzuladen, und anschlieรŸend wird die Steuerung zurรผckgesendet. Selenium wie unten gezeigt.

Datei hochladen in Selenium AutoIt verwenden

Schritt 1) Entwickle Selenium Skript in Eclipse.

  • Laufzeit Die Klasse ermรถglicht dem Skript die Verbindung mit der Umgebung, in der das Skript ausgefรผhrt wird.
  • getRuntime () Ruft die aktuelle Laufzeitumgebung dieses Prozesses ab.
  • exec () Die Methode fรผhrt das AutoIt-Skript (FileUpload.exe) aus.
Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe");

Die obige Zeile ruft die Funktion auf. AutoIt-Skript in Selenium und laden Sie die Datei hoch.

Datei hochladen in Selenium AutoIt verwenden

Schritt 2) Fรผhren Sie die aus Selenium Skript in 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();
     }
}

Schritt 3) รœberprรผfen Sie die Ausgabe; die Datei resume.doc wurde erfolgreich hochgeladen und eine Dankesnachricht wird angezeigt.

Datei hochladen in Selenium AutoIt verwenden

Warum AutoIt verwenden?

Selenium AutoIt ist ein Open-Source-Tool, das zur Automatisierung webbasierter Anwendungen in verschiedenen Browsern entwickelt wurde. Es dient insbesondere der Verarbeitung von Fenster-GUIs und Nicht-HTML-Popups in einer Anwendung. Selenium ist erforderlich, da diese fensterbasierten Aktivitรคten nicht von diesem System verarbeitet werden. Selenium.

Verwenden Sie AutoIt

Im weiteren Verlauf dieses AutoIt-Tutorials lernen wir, wie man eine Datei hochlรคdt in Selenium WebDriver mit AutoIt. Hierfรผr benรถtigen wir drei Tools.

  • Selenium WebTreiber
  • AutoIt-Editor und Elementbezeichner
  • Das Fenster, das Sie automatisieren mรถchten

Hรคufig gestellte Fragen

Selenium WebDriver steuert nur Browserelemente. AutoIt kรผmmert sich um native Elemente. Windows Dialoge wie Dateiupload-Fenster, Download-Aufforderungen und Fenster fรผr die einfache Authentifizierung, mit denen der WebDriver nicht direkt interagieren kann.

Das Au3Info-Tool untersucht alle sichtbaren Windows Das Steuerelement unter dem Cursor gibt dessen Titel, Klasse und Instanzwerte zurรผck. Diese Attribute werden direkt an die Aufrufe von ControlFocus, ControlSetText und ControlClick รผbergeben.

Ja. Die .au3-Quelldatei muss mit der fรผr Ihren Rechner passenden x86- oder x64-Option in eine .exe-Datei kompiliert werden. Selenium AnschlieรŸend wird die kompilierte Datei FileUpload.exe รผber Runtime.getRuntime().exec() aufgerufen.

AutoIt ist ein Windows-nur Werkzeug. Fรผr macOS Bei Linux-Dateidialogen verwenden Sie AppleScript, xdotool oder sendKeys mit dem Dateipfad direkt, da diese Betriebssysteme keine AutoIt-Ausfรผhrungsdateien unterstรผtzen.

KI-gestรผtzte Tools wie TestimFunctionize und Mabl nutzen Computer Vision, um native Dialoge anhand ihres visuellen Layouts zu erkennen und anschlieรŸend automatisch die Locator-Logik zu generieren. Dadurch wird der Bedarf an AutoIt-Skripten bei der Verarbeitung instabiler oder sich รคndernder Systeme reduziert. Windows Popups.

Ja. GroรŸe Sprachmodelle wie ChatGPT und Claude kรถnnen aus einfachen englischen Eingabeaufforderungen, die den Zieldialog, die Steuerelement-IDs und den Upload-Pfad beschreiben, AutoIt-Skripte generieren, die Tester dann verfeinern und kompilieren kรถnnen.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: