V tej vadnici bomo izvedeli, kako ravnati s pojavnimi okni v selenu in različnimi vrstami opozoril, ki jih najdemo pri testiranju spletne aplikacije. Videli bomo tudi, kako ravnati z Alertom v programu Selenium WebDriver, in se naučili, kako sprejemamo in zavrnemo opozorilo, odvisno od vrst opozoril.
V tej vadnici boste izvedeli-
- Kaj je opozorilo?
- Kako ravnati z Alertom v programu Selenium WebDriver
- Kako ravnati s pojavnim oknom Selenium s programom Webdriver
Kaj je opozorilo v selenu?
Alert v Selen je sporočilno okno majhen, ki se pojavi na zaslonu, da bi uporabniku nekaj podatkov ali obvestila. Uporabnika obvesti z določenimi informacijami ali napako, prosi za dovoljenje za izvajanje določenih nalog, prav tako pa vsebuje tudi opozorilna sporočila.
Tu je nekaj opozoril pri vrstah selena:
1) Preprosto opozorilo
Preprost razred opozoril v programu Selenium na zaslonu prikaže nekaj informacij ali opozoril.
2) Hitro opozorilo.
To opozorilno opozorilo od uporabnika zahteva nekaj vnosa in spletni gonilnik Selenium lahko vnese besedilo s pomočjo tipk za pošiljanje ("vnos
... ").3) Opozorilo o potrditvi.
To potrditveno opozorilo zahteva dovoljenje za izvedbo neke vrste operacije.
Kako ravnati z Alertom v programu Selenium WebDriver
Opozorilni vmesnik ponuja spodnjih nekaj metod, ki se pogosto uporabljajo v programu Selenium Webdriver.
1) void dismiss () // Če želite klikniti gumb »Prekliči« opozorila.
driver.switchTo (). alert (). dismiss ();
2) void accept () // Če želite klikniti na gumb »V redu« opozorila.
driver.switchTo (). alert (). accept ();
3) String getText () // Za zajem opozorilnega sporočila.
driver.switchTo (). alert (). getText ();
4) void sendKeys (String stringToSend) // Za pošiljanje nekaterih podatkov v opozorilno polje.
driver.switchTo (). alert (). sendKeys ("Besedilo");
Prikazani so številni načini opozorila, kot je prikazano na spodnjem zaslonu, ki ga predlaga Eclipse.
Z glavnim oknom lahko enostavno preklopimo na opozorilo z uporabo metode selenium .switchTo () .
Zdaj avtomatiziramo spodnji scenarij.
V tem scenariju bomo uporabili predstavitveno spletno stran Guru99, da ponazorimo ravnanje s selenijskimi opozorili.
Korak 1) Zaženite spletni brskalnik in odprite spletno mesto "http://demo.guru99.com/test/delete_customer.php"
Korak 2) Vnesite poljuben ID stranke.
Korak 3) Po vnosu ID-ja stranke kliknite gumb "Predloži".
Korak 4) Zavrnite / sprejmite opozorilo.
Ravnanje z opozorilom v programu Selenium Webdriver po zgornjem scenariju
uvoz org.openqa.selenium.By;uvoz org.openqa.selenium.WebDriver;uvoz org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.NoAlertPresentException;import org.openqa.selenium.Alert;javni razred AlertDemo {public static void main (String [] args) vrže NoAlertPresentException, InterruptedException {System.setProperty ("webdriver.chrome.driver", "G: \\ chromedriver.exe");Gonilnik WebDriver = nov ChromeDriver ();// Opozorilo o ravnanju s sporočilidriver.get ("http://demo.guru99.com/test/delete_customer.php");driver.findElement (By.name ("cusid")). sendKeys ("53920");driver.findElement (By.name ("submit")). submit ();// Preklop na opozoriloOpozorilo opozorila = driver.switchTo (). Alert ();// Zajem opozorilnega sporočila.String alertMessage = driver.switchTo (). Alert (). GetText ();// Prikaz opozorilnega sporočilaSystem.out.println (alertMessage);Navoj.spanje (5000);// Sprejem opozorilaalert.accept ();}}
Izhod:
Ko zaženete zgornjo kodo, ta zažene spletno mesto. Poskusite izbrisati ID stranke tako, da obdelate opozorilo o potrditvi, ki se prikaže na zaslonu, in s tem iz aplikacije izbrišete ID stranke.
Kako ravnati s pojavnim oknom selenium s programom Webdriver
Če imamo v kateri koli spletni aplikaciji več oken pri avtomatizaciji, bo morda treba dejavnost preklopiti nadzor med več okni z enega na drugo, da dokončamo operacijo. Po končani operaciji se mora vrniti v glavno okno, tj. Nadrejeno okno v programu Selenium. To bomo videli še v članku s primerom.
V spletnem gonilniku Selenium obstajajo načini, s katerimi lahko obdelujemo več oken.
Driver.getWindowHandles ();
Za obdelavo vseh odprtih oken s pomočjo spletnega gonilnika lahko uporabimo "Driver.getWindowHandles ()", nato pa lahko v spletni aplikaciji preklopimo med okni v drugo. Njegova vrsta vrnitve je Iterator
Driver.getWindowHandle ();
Ko se spletno mesto odpre, moramo glavno okno obdelati s pomočjo driver.getWindowHandle () . To bo obravnavalo trenutno okno, ki ga enolično identificira v tem primerku gonilnika. Njegova vrsta vrnitve je String.
Pri ravnanju z okni v selenu bomo sledili spodnjim korakom:
Zdaj bomo avtomatizirali spodnji scenarij, da bomo videli, kako ravnati z več okni s pomočjo Selenium Webdriver.
V tem primeru bomo za ponazoritev oken uporabili predstavitveno spletno mesto "Guru99".
Korak 1) Zaženite spletno mesto.
Zaženite brskalnik in odprite spletno mesto " http://demo.guru99.com/popup.php "
Korak 2) Kliknite povezavo "Kliknite tukaj".
Ko uporabnik klikne na povezavo "Kliknite tukaj", se odpre novo podrejeno okno.
Korak 3) Odpre se novo otroško okno.
Odpre se novo okno, prosite uporabnika, da vpiše e-poštni ID in predloži stran.
Korak 4) Vnesite svoj e-poštni ID in ga oddajte.
5. korak) Pri oddaji strani prikažite poverilnice za dostop.
Ko zaženete kodo, boste videli, da se v novem zavihku odpre podrejeno okno.
- Zaprite okno Child, v katerem so prikazane poverilnice.
- Preklopite na nadrejeno okno.
Ravnanje z več okni v spletnem pogonu Selenium po zgornjem scenariju.
uvoz java.util.Iterator;import java.util.Set;uvoz org.openqa.selenium.By;uvoz org.openqa.selenium.WebDriver;uvoz org.openqa.selenium.firefox.FirefoxDriver;javni razred WindowHandle_Demo {public static void main (String [] args) vrže InterruptedException {Gonilnik WebDriver = novi FirefoxDriver ();// Zagon spletnega mesta.driver.get ("http://demo.guru99.com/popup.php");driver.manage (). window (). maximize ();driver.findElement (By.xpath ("// * [vsebuje (@ href, 'popup.php')]")). click ();String MainWindow = driver.getWindowHandle ();// Za obdelavo vseh novo odprtih oken.Nastavis1 = driver.getWindowHandles ();Iterator i1 = s1.iterator ();medtem ko (i1.hasNext ()){String ChildWindow = i1.next ();if (! MainWindow.equalsIgnoreCase (ChildWindow)){// Preklop na otroško oknodriver.switchTo (). window (ChildWindow);driver.findElement (By.name ("emailid")).sendKeys (" Ta e-poštni naslov je zaščiten proti smetenju. Če ga želite videti, omogočite Javascript.");driver.findElement (By.name ("btnLogin")). click ();// Zapiranje otroškega okna.driver.close ();}}// Preklop na starševsko okno, tj. Glavno okno.driver.switchTo (). window (MainWindow);}}
Izhod:
Ko zaženete zgornjo kodo, se spletno mesto zažene in ob kliku na povezavo »Kliknite tukaj« odpre podrejeno okno v novem zavihku. Ko je operacija dokončana, lahko zaprete podrejeno okno in preklopite na nadrejeno okno. Torej obdelava več kot enega okna v aplikaciji.
Ravnanje z več okni v selenu
Zaključek:
- Določili smo vrste opozoril in jih prikazali s posnetkom zaslona.
- Prikazano ravnanje z opozorilom s programom Selenium WebDriver z uporabo določenega scenarija.
- Z določenim scenarijem je obdelal več oken s programom Selenium WebDriver.