how handle windows pop up selenium using autoit
Acest tutorial explică diferite metode de gestionare a ferestrelor pop-up Windows în seleniu ori de câte ori automatizarea iese din domeniu folosind instrumentul AutoIT:
AutoIT este un instrument terță parte care oferă Selenium o mână de ajutor pentru a gestiona ferestrele pop-up, cum ar fi fereastra pop-up de autentificare Windows, aplicații Flash, aplicații desktop și așa mai departe.
Seleniul este limitat doar la automatizarea aplicațiilor web. În unele cazuri, o fereastră pop-up Windows poate apărea în aplicația pe care Selenium nu o poate gestiona. Pentru a gestiona astfel de scenarii, AutoIT oferă o mână de ajutor în care se ocupă de automatizarea aplicațiilor Windows pop-up și desktop.
=> Vizitați aici pentru a vedea seria de antrenament Selenium pentru toți.
Ce veți învăța:
Prezentare generală a instrumentului AutoIT
Iată un tutorial video:
Gestionați ferestrele pop-up Windows utilizând AutoIT
AutoIT este un instrument terță parte care este utilizat pentru a gestiona aplicații bazate pe Windows. Limbajul de scriptare utilizat se numește VBScript.AutoIt este, de asemenea, un software gratuit. Folosește o combinație demișcarea mouse-ului și loviturile tastaturii pentru a automatiza acțiunile care nu pot fi efectuate de driverul de seleniu web.
AutoIt este utilizat în format .exe, astfel încât să poată fi utilizat în scriptul Selenium Automation.
Să ne uităm la un exemplu, în care am avea nevoie incarca un fisier la cerere.
Scenariul este încărcarea unei imagini de profil pe LinkedIn. Pașii de testare pentru acest scenariu sunt:
- Introdu URL-ul
- Introduceți un nume de utilizator valid, o parolă și conectați-vă.
- Faceți clic pe pictograma de încărcare a profilului.
- Apare fereastra de tip Windows în care este introdusă calea pentru încărcarea unei imagini.
Până la Pasul 3, Selenium Automation îl poate gestiona. Când apare fereastra pop-up Windows, scriptul AutoIT este utilizat pentru a automatiza acea parte.
Acum, să aruncăm o privire asupra modului de automatizare a acțiunilor din fereastra pop-up Windows?
Acest lucru poate fi gestionat în 4 moduri diferite.
- Utilizarea comenzilor Windows pentru a încărca un anumit fișier.
- Utilizarea comenzilor de control pentru a încărca un fișier.
- Folosind argumentul liniei de comandă pentru a specifica numele fișierului de încărcat.
- Folosind instrumentul de înregistrare AutoIT.
Toate scripturile sunt create folosind AutoItScriptEditor, care este disponibil în pachetul de foldere AutoIt.
Navigheaza catre AutoIt3> SciTE> SciTE.exe și deschideți aplicația ScriptEditor.
# 1) Utilizarea comenzilor Windows
Avem diferite seturi de funcții în AutoIt.
Poți arunca o privire Aici. Acum, pentru a automatiza acțiunile pop-up Windows, permite mai întâi să analizăm acțiunile. Acestea includ:
- Setați focalizarea la fereastra curentă.
- Introduceți calea numelui fișierului de încărcat în caseta Numele fișierului.
- Faceți clic pe butonul Deschidere sau apăsați Enter în tastatură.
Să înțelegem în detaliu punctele de mai sus:
- Setați focalizarea la fereastra curentă
WinWaitActive : Setează focalizarea cursorului pe numele de fereastră specificat. În acest caz, titlul ferestrei este „Deschis”. Deci specificăm comanda caWinWaitActive („Deschis”).
Rețineți că același titlu Windows diferă pentru fiecare browser.
Spune, pentru Firefox , este „Încărcare fișiere”, - Deci comanda AutoIT va fiWinWaitActive („Încărcare fișier”).
Pentru IE, este „Fișier de încărcat” - Deci comanda AutoIT va fiWinWaitActive („Fișier de încărcat”)
Pentru Chrome , este „Deschis” - Deci comanda AutoIT va fiWinWaitActive („Deschis”)
Ar trebui să specificați titlul ferestrei pe baza browserului pe care îl utilizați pentru automatizare.
Două. Introduceți calea numelui fișierului de încărcat în caseta Numele fișierului
Trimite - trimite lovituri de tastatură sau cu alte cuvinte, simulează acțiunile tastaturii.
Este posibil ca acțiunile să apese pe tasta Enter, tasta Shift și așa mai departe. SAU tastarea unui șir, număr etc. În acest exemplu, trebuie să introduc fișierul FileName, așa că folosesc comanda pentru a introduce numele fișierului în fereastră. -Trimiteți („D: passport.jpg”)
3. Faceți clic pe butonul Deschidere sau apăsați Enter în tastatură
Trimite ({ENTER})- trimite apăsarea tastei ENTER la fereastră, care la rândul său finalizează acțiunea de încărcare.
întrebări și răspunsuri de interviu sql pentru freshers
Salvați scriptul creat în orice locație. Acesta va fi salvat în format .au3. Odată salvat, faceți clic dreapta pe fișierul .au3 și compilați-l.
După compilare, acesta este convertit în format .exe (format executabil). Acest fișier este ceea ce folosim în scriptul Selenium.
Odată ce fișierul .exe este creat, puteți utiliza fișierul din scriptul Selenium Automation pentru a rula comenzile din acesta
Runtime.getRuntime.exec („specificați numele de fișier autoe exe aici”)
# 2) Utilizarea comenzilor de control
Avem anumite comenzi de control în AutoIT pentru a efectua acțiuni. Iată lista comenzilor de control din AutoIT.
Să vedem cum să automatizăm același scenariu de încărcare a fișierelor folosind aceste comenzi de control ale AutoIT.
Acum, în ordine pentru a automatiza fereastra pop-up Windows, trebuie efectuate acțiunile de mai jos:
- Setați focalizarea la fereastra curentă.
- Introduceți calea numelui fișierului de încărcat în caseta Numele fișierului.
- Faceți clic pe butonul Deschidere sau apăsați Enter în tastatură.
Să înțelegem detaliile punctelor de mai sus:
- Setați focalizarea la fereastra curentă
ControlFocus:Setează focalizarea pe elementul specificat. În acest caz, setăm focalizarea pe caseta de text de editare.
Când vă uitați la descrierea sa, puteți vedea că necesită unul sau mai mulți parametri. Putem trece acești parametri utilizând instrumentul Windows Info al AutoIt.
Haideți deschideți aplicația AutoIT după cum urmează:
Instrumentul Windows Info se deschide după cum urmează:
Acest instrument este utilizat pentru a inspecta elementele din aplicația Windows / pop-up.
Pentru a obține diverse atribute ale fiecărui element din fereastra pop-up Windows, trageți pictograma „Finder” din Instrumentul de informații Windows și faceți clic pe element pentru a-i afișa proprietățile ca mai jos.
Avem proprietățile sale afișate în instrument așa cum se arată.
Pentru caseta FileName, proprietățile și valorile corespunzătoare sunt:
- Titlu - Deschis
- ClassName - Editați
- Instanță - 1
Folosind aceste proprietăți, putem trece parametrii pentru comanda de control.
Acum, pentru a seta focalizarea pe caseta FileName, numim comanda „ControlFocus” după cum urmează:
- Sintaxă: ControlFocus („titlu”, „text”, controlID)
- „Titlul” corespunde titlului afișat în instrument.
- Control Id este combinația dintre ClassName + Instance în instrument
ControlFocus („Deschis”, „”, „Edit1”)
Unde,
- Deschis - este titlul
- Edit1 - este controlID (controlID = ClassName + Instance)
Două. Introduceți calea numelui fișierului de încărcat în caseta Numele fișierului
ControlSetText - introduce textul în element.
- Sintaxă: ControlSetText („title”, „text”, controlID, „new text” (, flag = 0))
În cazul nostru, avem numele fișierului în caseta de text.
ControlSetText („Deschis”, „”, „Edit1”, „D: passport.jpg”)
Unde,
- Deschis - este titlul
- Edit1 - este controlID (controlID = ClassName + Instance)
- D: passport.jpg - este numele de fișier de încărcat
3. Faceți clic pe butonul Deschidere sau apăsați Enter în tastatură
ControlClick - efectuează o acțiune de clic pe element. În acest exemplu, vom efectua clic pe butonul „Deschidere”
- Sintaxă: ControlClick („titlu”, „text”, controlID (, buton = „stânga” (, clicuri = 1 (, x (, y)))))
În cazul nostru, ar trebui să faceți clic pe butonul „Deschidere” din fereastra pop-up Windows.
ControlClick („Deschidere”, „”, „Buton1”)
Unde,
- Deschis - este titlul
- Butonul 1 - este controlID (controlID = ClassName + Instance)
Apelăm fișierul .exe din codul Selenium folosind comanda-Runtime.getRuntime.exec („specificați numele de fișier autoe exe aici”)
NOTĂ: Când trebuie să încărcăm mai multe fișiere într-o singură instanță, putem specifica toate numele fișierelor dintr-o variabilă și putem transmite numele variabilei în comandă.
ControlFocus - setează focalizarea pe element.
$ files - este variabila creată și conține textul / numele fișierului care trebuie încărcat.
ControlSetText - trece variabila care are numele fișierelor pentru a fi încărcate în elementul „Editați”.
ContolClick - efectuează o acțiune de clic pe element.
# 3) Utilizarea liniei de comandă pentru a specifica numele fișierului de încărcat
Aceeași procedură poate fi abordată într-un mod diferit în care numele fișierului este obținut de la utilizator. Acest lucru se face folosind abordarea Liniei de comandă.
În loc să specificăm direct numele fișierului în AutoIT, îl trecem în codul Selenium după cum urmează:
Script AutoIT: (Upload.exe)
ControlFocus(“Open”,””,”Edit1”) ControlSetText(“Open”,””,”Edit1”,$cmdLine(1)) ControlClick(“Open”,””,”Button1”)
În codul seleniului:
O specificăm ca:
Runtime.getRuntime.exec(“Path of .exe file”+””+ “FileToUpload”)
În acest caz, va fi
Runtime.getRuntime.exec(“D:automationUpload.exe”+””+ “D:automationimage.jpg”)
Salvați fișierul creat și compilați-l pentru a-l converti în format executabil.
# 4) Utilizarea funcției de înregistrare a AutoIT
Această caracteristică este disponibilă numai în versiunile de mai jos 3.3.14.0. Versiunile mai mari decât acestea nu acceptă această caracteristică.
Pentru a deschide instrumentul de înregistrare, navigați la AutoIt3> Extra> Au3Record> Au3Record.exe
Când începem să folosim acest lucru, asigurați-vă întotdeauna că deselectați opțiunea „Înregistrați mouse-ul”, deoarece interacțiunea mouse-ului variază pentru fiecare rezoluție a ecranului. Înregistrați întotdeauna contururile tastaturii.
Selectați „Faceți clic pentru a înregistra” în instrument și acțiunile vor fi înregistrate în acesta.
Când ați terminat înregistrarea, selectați „Faceți clic pentru a opri” și salvați fișierul
Puteți deschide fișierul .au3 salvat pentru a vedea comenzile create pentru fiecare acțiune pe care ați efectuat-o
Compilați scriptul și convertiți-l în fișier .exe.
Fișierul .exe creat poate fi utilizat direct în codul Selenium pentru executare, după cum urmează:
Runtime.getRuntime.exec(“D:automationRecord.exe”)
Concluzie
Astfel, orice fereastră pop-up Windows, cum ar fi autentificarea sau încărcarea fișierelor sau fișierul deschis etc., poate fi gestionată folosind AutoIT, incluzând fișierul script în Selenium.
În capitolul următor, vom afla despre un alt instrument terță parte numit Sikuli, care este utilizat pentru automatizarea aplicațiilor folosind tehnica de recunoaștere a imaginii.
=> Vizitați aici pentru a afla Seleniu de la zero.
Lectură recomandată
- Cum să gestionați alertele / ferestrele pop-up în Selenium WebDriver - Selenium Tutorial # 16
- Tutorial Castravete Seleniu: Integrare Castravete Java Seleniu WebDriver
- Top 10 excepții de seleniu și cum să le tratezi (cod exact)
- Introducere în Selenium WebDriver - Tutorial Selenium # 8
- Tutorial AutoIt - Descărcare, instalare și script de bază AutoIt
- Tutorial ChromeDriver Selenium: Teste Selenium Webdriver pe Chrome
- 30+ Cele mai bune tutoriale despre seleniu: învățați seleniul cu exemple reale
- Oportunitate de muncă freelancing cu normă parțială pentru experții în seleniu