Kako se koristi AutoIT s Selenium Webdriver: Primjer prijenosa datoteke

Sadržaj:

Anonim

Što je AutoIt?

AutoIt je besplatni skriptni jezik dizajniran za automatizaciju Windows GUI-ja i općenitog skriptiranja. Koristi kombinaciju kretanja miša, pritiska tipki i manipulacije kontrolom prozora za automatizaciju zadatka koji selenov webdriver nije moguć.

U ovom vodiču za AutoIt naučit ćete-

  • Zašto koristiti AutoIt?
  • Kako preuzeti i instalirati AutoIT
  • Pronalaženje elementa kroz identifikator elementa i pisanje skripte u AutoIT editoru.
  • AutoIT datoteka za prijenos u Selenium Webdriver

Zašto koristiti AutoIt?

Selenium je alat otvorenog koda osmišljen za automatizaciju web-aplikacija u različitim preglednicima, ali za rukovanje prozorskim GUI-jem i ne-HTML skočnim prozorima u aplikaciji. AutoIt u seleniju je potreban jer Selenium ne obrađuje ove aktivnosti temeljene na prozoru.

Krećući se naprijed u ovom vodiču za AutoIt, naučit ćemo kako prenijeti datoteku u upravljački program selena pomoću programa AutoIt. Ovdje su nam potrebna tri alata.

  • Selen Webdriver
  • Uređivač AutoIT i identifikator elementa
  • Prozor koji želite automatizirati

Kako preuzeti i instalirati AutoIT

Korak 1) : Idite na ovu vezu.

Korak 2) : Zadržite pokazivač na padajućem izborniku "Autoit" i "Autoit Editor".

Korak 3) Kliknite opciju "AutoIT" Preuzimanja.

Korak 4) : Preuzmite "Autoit" klikom na gumb "Download Autoit".

Korak 5) : Sada preuzmite "Autoit editor" klikom na gumb "Preuzimanja".

Korak 6): Kliknite vezu kao što je prikazano u nastavku.

Nakon preuzimanja dobit ćete dvije datoteke za postavljanje kao što je prikazano na donjem zaslonu, prvo je postavljanje AutoIt verzije 3, a drugo Scitautoit3 .

Korak 6) : Za instalaciju AutoIT-a, kliknite obje postavke AutoIT-a jednu po jednu.

Korak 7) : Nakon uspješne instalacije - otvorite AutoIT Editor.

Idite na 'C: \ Program Files (x86) \ AutoIt3 \ SciTE'

i kliknite na datoteku 'SciTE.exe', otvorit će se AutoIT editor kao što je prikazano na donjem zaslonu.

Korak 8) : Sada se otvara identifikator elementa.

Idite na 'C: \ Program Files (x86) \ AutoIt3'

I kliknite na datoteku 'Au3Info.exe', identifikator elementa otvara se kao što je prikazano na donjem zaslonu.

Napomena: Nakon što završite s ovim identifikatorom elementa, morate ručno zatvoriti, on se neće zatvoriti automatski.

Pronalaženje elementa kroz identifikator elementa i pisanje skripte u AutoIT editoru.

U nastavku ćemo vidjeti kako se koristi uređivač AutoIt i kako pronaći element u prozoru za učitavanje datoteka kroz identifikator elementa AutoIT (identifikator elementa je alat poput selenijskog IDE-a, identifikator pronalazi element prozora GUI ili ne-HTML skočnih prozora i daje atribut element poput naslova , klase , instance ) i kako napisati skriptu u AutoIT editor pomoću 3 metode.

Na primjer: Upotrijebit ćemo stranicu "Napišite nam" guru99 za prijenos životopisa (Doc datoteka).

Nakon što kliknemo gumb "Odaberi datoteku" na stranici "Pišite nam", moramo nazvati skriptu AutoIT. Kontrola se odmah prebacuje na autoit nakon što kliknete "Odaberi datoteku" u donjem navodu koji se brine za prijenos dijela.

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

Konačno, kad pokrenemo skriptu selena, ona će ispuniti obrazac-> upload resume-> Submit form.

Korak 1) : Sada otvorite Identifikator elementa - Idite na 'C: \ Program Files (x86) \ AutoIt3' i kliknite na datoteku 'Au3Info.exe', otvorit će se prozor s identifikatorom elementa kao što je prikazano na donjem ekranu.

Korak 2) : Sada otvorite prozor za prijenos datoteka klikom na 'Odaberi datoteku' koja je aktivnost prozora.

Korak 3) : Povucite alat za pronalaženje na elementu okvira "Ime datoteke" prozora za prijenos datoteka kako biste pronašli osnovne podatke o atributima kao što je prikazano na donjem zaslonu sa strelicom.

Možemo dobiti vrijednost atributa, tj. Title = 'Open' , class = 'Edit' i instance = '1', kao što je prikazano dolje. Te se vrijednosti koriste za pisanje primjera AutoIT skripte kako je objašnjeno u donjem koraku 4.

Korak 4) : Sada otvorite AutoIt urednik skripta, goto 'C: \ Program Files (x86) \ AutoIt3 \ SciTE' i kliknite na 'SciTE.exe' kao što je prikazano u koraku 7 od 1 -og temu.

Počnite pisati skriptu za odabir datoteke za prijenos.

Dostupno je puno metoda koje možemo koristiti u skripti u skladu sa zahtjevom, ali trenutno ćemo se usredotočiti na dolje navedene metode jer su ove metode potrebne za pisanje skripte za prijenos datoteka:

  1. ControlFocus ("title", "text", controlID) // Postavlja fokus unosa na zadanu kontrolu na prozoru.
  2. ControlSetText ("naslov", "tekst", controlID, "Put datoteke koji treba učitati") // Postavlja tekst kontrole.
  3. ControlClick ("title", "text", controlID) // Šalje naredbu klika miša na zadanu kontrolu.

Možete vidjeti kako se prikazuje niz metoda kako je prikazano na donjem zaslonu. Dobra značajka AutoIT-a je što vam pomalo podsjeća na Eclipse koji vam predlaže neke od metoda.

Ovdje smo u AutoIT editoru odabrali metodu "control focus" . Identifikator elementa već je otvoren i minimiziran jer je element već identificiran u gornjem koraku 3. Možemo ga otvoriti maksimiziranjem.

Sada ćemo uzeti vrijednosti iz identifikatora elementa za metode 'ControlFocus' i 'ControlSetText' jer ove metode djeluju na isti element, tj. Okvir za tekst 'Naziv datoteke', ali za metodu 'ControlClick' treba hvatati vrijednosti različitih elemenata, tj. 'Open' dugme.

Vrijednosti parametara za ControlFocus metodu:

Ova metoda usmjerava fokus na tekstni okvir "naziv datoteke" prozora programa za prijenos datoteka.

  • Naslov prvog parametra je "Otvoreno".
  • Zanemarujemo drugi parametar, tekst nije potreban.
  • Treći parametar controlID je kombinacija class = 'Edit' i Instance = '1', tj. 'Uredi1.'
    ControlFocus ("Open", "", "Edit1") // Ova metoda postavlja fokus unosa na tekstni okvir "Naziv datoteke". 

Vrijednosti parametara za metodu ControlSetText :

Ovom se metodom definira put datoteke koju trebamo učitati u tekstni okvir 'naziv datoteke'. Na drugi način možemo reći da se ovom metodom tekst postavlja na ulazni element.

  • Naslov prvog parametra je "Otvoreno".
  • Zanemarujemo drugi parametar, tekst nije potreban.
  • Treći parametar controlID je kombinacija class = 'Edit' i Instance = '1', tj. "Edit1".
  • Četvrti parametar novi tekst, prolazimo put datoteke koju moramo učitati.
    ControlSetText ("Open", "", "Edit1", "E: \ Resume \ resume.doc") // Put ove datoteke do ulazne datoteke kontrole. 

Nakon što slijedite gornji korak, nemojte zatvarati prozore (uređivač i identifikator elementa), neka ostanu otvoreni. Ponovno trebate otvoriti prozor za prijenos datoteka kako biste pronašli atribute gumba 'Otvori' kako je prikazano u donjem koraku 5.

Korak 5) : Povucite alat za pronalaženje na element gumba "Otvori" u prozoru za prijenos datoteka kako biste pronašli osnovne podatke o atributima.

Prethodne vrijednosti (tj. Atributi tekstualnog okvira "Naziv datoteke") prepisuju se novim vrijednostima gumba "Otvori". Možete vidjeti da je atribut klase sada promijenjen u "gumb" koji je prethodno bio "uređen" u prozoru identifikatora AutoIT elementa.

Možemo dobiti vrijednost atributa, tj. Title = 'Open' , class = 'Button' i instance = '1', kao što je prikazano dolje. Te se vrijednosti koriste za pisanje skripte Autoit kako je objašnjeno u nastavku.

Vrijednosti parametara za ControlClick metodu:

Ova metoda klikće na gumb "Otvori" u prozoru za prijenos datoteka.

  • Naslov prvog parametra je "Otvoreno".
  • Zanemarujemo drugi parametar; tekst nije potrebno.
  • 3. parametar controlID je kombinacija klase i instance, tj. "Button1".
ControlClick ("Open", "", "Button1") // Ovom metodom kliknite gumb "Otvori" u programu za prijenos datoteka.

Korak 6) : Na donjem zaslonu možete vidjeti da je skripta AutoIT dovršena za rukovanje alatom za prijenos datoteka. Sada možete zatvoriti identifikator elementa i spremiti skriptu kao "FileUpload" na danom mjestu (E: \ AutoIT).

Sada ovu skriptu ne možete izravno izvršiti, trebate je sastaviti.

Za kompajliranje ove skripte imate dvije mogućnosti " compile script x64 " i " compile script x86 ", ako imate Windows 32-bitni stroj, onda idite s " compile script x86", a za Windows 64-bitni stroj onda idite s " prevesti skriptu x64 . "

Korak 7): Datoteka 'FileUpload exe' generirana nakon kompilacije možete vidjeti na donjem zaslonu. Sada ovu datoteku možemo koristiti u skripti Selenium webdriver.

Sada ćemo koristiti ovu skriptu AutoIT u web pokretačkom programu Selenium. U nastavku potražite izlaz.

AutoIT datoteka za prijenos u Selenium Webdriver

U skripti Selenium pronalazimo elemente obrasca i ispunjavamo podatke u svakom elementu prema potrebi i prenosimo datoteku 'resume.doc' izvršavanjem AutoIT exe datoteke generirane iz skripte AutoIT, a zatim dopuštamo predavanje obrasca u skripti Selenium AutoIt.

  • Otvorite Eclipse i počnite pisati kod.
  • Kada selen klikne na gumb Odaberi datoteku, otvara se okvir za prijenos datoteka.
  • Zatim moramo nazvati skriptu AutoIT, kontrola se odmah prebacila na AutoIT kako bi se prenijela datoteka, a zatim kontrola poslala natrag u selen kao što je prikazano dolje.

Korak 1) : Razvijte skriptu selena u eclipseu.

  • Klasa runtime omogućuje skripti da se poveže s okolinom u kojoj se skripta izvodi.
  • getRuntime () dobiva trenutačno vrijeme izvođenja povezano s ovim postupkom.
  • exec () metode izvršavaju skriptu AutoIT (FileUpload.exe).
Runtime.getRuntime (). Exec ("E: \\ AutoIT \\ FileUpload.exe");

gornji redak pozvat će AutoIT skriptu u selenu i prenijeti datoteku.

Korak 2) : Izvršite Selenium skriptu u Eclipseu.

importjava.io.IOException;uvoz org.openqa.selenium.By;uvoz org.openqa.selenium.WebDriver;uvoz org.openqa.selenium.firefox.FirefoxDriver;javna klasa FileUpload {public static void main (String [] args) baca IOException {Upravljački program za WebDriver = novi 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 (" Ova adresa e-pošte zaštićena je od neželjenih robota, potreban vam je omogućen JavaScript da biste je vidjeli.");driver.findElement (By.id ("input_4")). click ();// ispod retka izvršiti skriptu AutoIT.Runtime.getRuntime (). Exec ("E: \\ AutoIT \\ FileUpload.exe");driver.findElement (By.id ("input_6")). sendKeys ("AutoIT u selenu");driver.findElement (By.id ("input_2")). click ();driver.close ();}}

Korak 3) : Potvrdite izlaznu datoteku, datoteka resume.doc je uspješno prenesena i prikazat će se poruka zahvale.

Zaključak:

  • Preuzeto i instalirano Element Identifier i AutoIT editor.
  • Otvorio web mjesto na kojem će se izvršiti operacija.
  • Identifikator elementa identificira elemente prozora za prijenos datoteka.
  • Pripremljena skripta AutoIT u uređivaču uz pomoć identifikatora elementa.
  • Skripta Autoit koristi se u skripti selenium webdriver.
  • Izvršena je selenska skripta.
  • Izlaz: datoteka je uspješno prenesena.

Ovaj članak je napisao Gaurav Nigam