AutoIT in Selenium Handledning: Hur använder man den?
Vad är AutoIt i Selenium?
AutoIt är ett freeware skriptspråk designat för att automatisera Windows GUI och allmän scripting. Den använder en kombination av musrörelser, tangenttryckningar och fönsterkontrollmanipulation för att automatisera en uppgift som inte är möjlig med selenwebdriver.
Hur man laddar ner och installerar AutoIT
Steg 1): Gå till det här länken.
Steg 2): Håll muspekaren över "Autoit" och "Autoit Editor" rullgardinsmenyn.
Steg 3) Klicka på alternativet 'AutoIT' Nedladdningar.
Steg 4): Ladda ner "Autoit" genom att klicka på knappen "Ladda ner Autoit".
Steg 5): Ladda nu ned "Autoit editor" genom att klicka på knappen "Nedladdningar".
Steg 6) Klicka på länken som visas nedan.
Efter nedladdningen får du två installationsfiler som visas på skärmen nedan, den första är AutoIt version 3 setup och andra är Scitautoit3 .
Steg 7): För att installera AutoIT-Klicka på båda AutoIT-inställningarna en efter en.
Steg 8): Efter framgångsrik installation – öppna AutoIT Editor.
Gå till 'C:\Program Files (x86)\AutoIt3\SciTE'
och klicka på filen 'SciTE.exe' öppnas AutoIT-redigeraren som visas på skärmen nedan.
Steg 9) : Nu öppnar elementet Identifier.
Gå till 'C:\Program Files (x86)\AutoIt3'
Och klicka på filen 'Au3Info.exe', elementidentifieraren öppnas som visas på skärmen nedan.
Notera: När du är klar med denna elementidentifierare måste du stänga manuellt, den stängs inte automatiskt.
Hur man använder AutoIT i Selenium
Under detta kommer vi att se hur man använder AutoIt-redigeraren och hur man hittar element i filuppladdningsfönstret genom AutoIT Element Identifier (Elementidentifierare är ett verktyg som selenium IDE, identifierare hitta elementet i fönster GUI eller icke HTML-popups och tillhandahålla attributet för element som rubricerade, klass, exempel ) och hur man skriver manus på AutoIT-redigeraren med tre metoder.
Till exempel: Vi kommer att använda sidan "Skriv till oss" på guru99 för att ladda upp CV (dokumentfil).
Efter att ha klickat på knappen "Välj fil" på sidan "Skriv till oss", måste vi anropa AutoIT-skriptet. Kontrollen överfördes omedelbart till autoit efter att ha klickat på "Välj fil" av nedanstående uttalande som tar hand om uppladdningen.
Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe");
Slutligen, när vi kör selen script-det kommer att fylla i formuläret-> ladda upp CV-> Skicka formulär.
Steg 1): Öppna nu elementidentifierare- Gå till 'C:\Program Files (x86)\AutoIt3' och klicka på filen 'Au3Info.exe', elementidentifieringsfönstret öppnas som visas på skärmen nedan.
Steg 2): Öppna nu filuppladdningsfönstret genom att klicka på "Välj fil", vilket är Windows-aktivitet.
Steg 3): Dra sökverktyget till rutan "Filnamn" i filuppladdningsfönstret för att hitta den grundläggande attributinformationen som visas på skärmen nedan med pilen.
Vi kan få värdet av attribut dvs title='Öppna', class='Redigera' och instans='1′ enligt nedanstående. Dessa värden används för att skriva AutoIT-skriptexempel som förklaras i steg 4 nedan.
Steg 4): Öppna nu AutoIT script editor, gå till 'C:\Program Files (x86)\AutoIt3\SciTE' och klicka på 'SciTE.exe' som visas i steg 7 från 1st ämne.
Börja skriva ett skript för att välja en fil att ladda upp.
Det finns många tillgängliga metoder som vi kan använda i ett skript enligt kravet, men just nu kommer vi att fokusera på nedanstående metoder eftersom dessa metoder krävs för att skriva filuppladdningsskript:
- Kontrollfokus("titel "," text ", kontroll-ID ) //Ställer in ingångsfokus till en given kontroll i ett fönster.
- ControlSetText("titel "," text ", kontrollID ," filsökväg som måste laddas upp " ) // Ställer in text för en kontroll.
- ControlClick("titel "," text ", kontroll-ID ) //Skickar ett musklickskommando till en given kontroll.
Du kan se att ett antal metoder visas som visas på skärmen nedan. Den goda egenskapen med AutoIT är att det är ungefär som Eclipse som föreslår några av metoderna.
Här i AutoIT-redaktören har vi valt "kontrollera fokus" metod. Elementidentifierare är redan öppnat och minimerat eftersom elementet redan är identifierat i steg 3 ovan. Vi kan öppna det genom att maximera det.
Nu kommer vi att ta värdena från elementidentifieraren för metoderna 'ControlFocus' och 'ControlSetText' eftersom dessa metoder fungerar på samma element, dvs. textrutan 'Filnamn' men för 'ControlClick'-metoden måste fånga värden för olika element, dvs. 'Öppna' knapp.
Parametervärden för Kontrollfokus metod:
Denna metod sätter fokus på textrutan 'filnamn' i filuppladdningsfönstret.
- 1:a parametern rubricerade är öppen ".
- Vi ignorerar den andra parametern, den text behövs inte.
- 3:e parametern kontrollID är kombinationen av class='Edit' och Instance='1′, dvs. "Redigera1."
ControlFocus("Open","","Edit1") // This method sets input focus to 'File name' text box.
Parametervärden för ControlSetText metod:
Denna metod används för att definiera sökvägen till en fil som vi behöver ladda upp i textrutan "filnamn". På ett annat sätt kan vi säga att den här metoden används för att ställa in texten till inmatningselementet.
- 1:a parametern rubricerade är öppen ".
- Vi ignorerar den andra parametern, den text behövs inte.
- 3:e parametern kontrollID är kombinationen av class='Edit' och Instance='1′, dvs. ” Edit1 ”.
- 4:e parametern ny text, vi passerar sökvägen till filen som vi behöver ladda upp.
ControlSetText("Open","","Edit1","E:\Resume\resume.doc") // This method input file path of a control.
Efter att ha följt steget ovan, stäng inte fönstren (redigerare och elementidentifierare), håll det öppet. Du måste återigen öppna filuppladdningsfönstret för att hitta attributen för "Öppna"-knappen som visas i steg 5 nedan.
Steg 5): Dra nu sökverktyget på knappen "Öppna" i filuppladdningsfönstret för att hitta den grundläggande attributinformationen.
Tidigare värden (dvs. attribut för "Filnamn"-textrutan) skrivs över med nya värden för "Öppna"-knappen. Du kan se att klassattributet nu har ändrats till "knapp" som tidigare var "redigera" i AutoIT-elementidentifieringsfönstret.
Vi kan få värdet av attribut dvs title='Öppna', class='Button' och instans='1′ enligt nedanstående. Dessa värden används för att skriva Autoit-skript enligt beskrivningen nedan.
Parametervärden för ControlClick metod:
Den här metoden klickar på knappen "Öppna" i filuppladdningsfönstret.
- 1:a parametern rubricerade är öppen ".
- Vi ignorerar den andra parametern; de text behövs inte.
- 3:e parametern kontrollID är kombinationen av klass och instans, dvs ” Button1 ”.
ControlClick("Open","","Button1") //This method click on 'Open' button of file uploader.
Steg 6): Du kan se på skärmen nedan att AutoIT-skriptet har slutförts för att hantera filuppladdning. Nu kan du stänga elementidentifieraren och spara skriptet som " FileUpload " på den angivna platsen ( E:\AutoIT ).
Nu kan du inte köra det här skriptet direkt, du måste kompilera det här skriptet.
För att kompilera det här skriptet har du två alternativ " kompilera skript x64 ” och ” kompilera skript x86 ", om du har Windows 32-bitars maskin så går du med" kompilera skript x86” och för Windows 64-bitars maskin så går du med ” kompilera skript x64 . "
Steg 7): 'FileUpload exe' fil genererad efter kompilering, kan du se på skärmen nedan. Nu kan vi använda den här filen i Selenium webdriver-skript.
Nu kommer vi att använda detta AutoIT-skript i Selenium webbdrivrutin. Kolla nedan för utdata.
Ladda upp fil i Selenium använder Autoit
In Selenium skript, hittar vi elementen i formuläret och fyller i uppgifterna i varje element efter behov och laddar upp filen 'resume.doc' genom att köra AutoIT exe-filen genererad från AutoIT-skriptet och tillåter sedan att skicka in formuläret i Selenium AutoIt-skript.
- Öppen Eclipse och börja skriva kod.
- När selen klickar på knappen Välj fil öppnas rutan för filuppladdning.
- Sedan måste vi anropa AutoIT script, kontrollen överfördes omedelbart till AutoIT för att ladda upp en fil och sedan styra skicka tillbaka till selen som visas nedan.
Steg 1): Utveckla selenskript i eclipse.
- Runtime klass gör att skriptet kan samverka med miljön där skriptet körs.
- getRuntime () hämta den aktuella körtiden för denna process.
- exec () metoder exekverar AutoIT - skriptet ( FileUpload.exe ) .
Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe");
ovanstående rad kommer att ringa AutoIT-skript i selen och ladda upp fil .
Steg 2) : Utför Selenium manus i 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("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("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(); } }
Steg 3): Verifiera att utdata, resume.doc-filen har laddats upp och tackmeddelandet kommer att visas.
Varför använda AutoIt?
Selenium är ett verktyg med öppen källkod som är utformat för att automatisera webbaserade applikationer på olika webbläsare men för att hantera fönster GUI och icke-HTML popup-fönster i applikationer. AutoIt in Selenium krävs eftersom dessa fönsterbaserade aktiviteter inte hanteras av Selenium.
I den här AutoIt-handledningen kommer vi att lära oss hur man laddar upp en fil i selenwebbdrivrutin med AutoIt. Här behöver vi tre verktyg för att göra detta.
- Selenium Webdriver
- AutoIT-redigerare och elementidentifierare
- Fönstret som du vill automatisera
Slutsats
- Laddat ner och installerat Element Identifier och AutoIT editor.
- Öppnade platsen där operationen skulle utföras.
- Elementidentifierare identifierar elementen i filuppladdningsfönstret.
- Förberedde AutoIT script i editorn med hjälp av Element identifier.
- Autoit script används i selen webdriver script.
- Körde selenskriptet.
- Utdata: Filen har laddats upp.