Tässä opetusohjelmassa opitaan, kuinka käsitellä Selenium-ponnahdusikkunoita ja erityyppisiä ilmoituksia, jotka löytyvät verkkosovellusten testauksesta. Näemme myös, miten hälytystä käsitellään Selenium WebDriver -sovelluksessa ja opimme, miten hyväksymme ja hylkäämme ilmoituksen ilmoitustyypeistä riippuen.
Tässä opetusohjelmassa opit-
- Mikä on hälytys?
- Kuinka käsitellä hälytystä Selenium WebDriver -sovelluksessa
- Selenium Popup -ikkunan käsitteleminen Webdriverilla
Mikä on hälytys seleenissä?
Alert Seleeni on pieni viesti laatikko, joka ilmestyy näytölle, antaa käyttäjälle joitakin tietoja tai ilmoituksen. Se ilmoittaa käyttäjälle tiettyjä tietoja tai virheitä, pyytää lupaa tiettyjen tehtävien suorittamiseen ja antaa myös varoitusviestejä.
Tässä on muutama hälytys seleenityypeissä:
1) Yksinkertainen hälytys
Seleenin yksinkertainen hälytysluokka näyttää tietoja tai varoituksia näytöllä.
2) Nopea hälytys.
Tämä kehotushälytys kysyy syötettä käyttäjältä ja Selenium-verkko-ohjain voi kirjoittaa tekstin avainpainikkeilla ("input
…. ").3) Vahvistushälytys.
Tämä vahvistusilmoitus pyytää lupaa suorittaa jonkin tyyppisiä toimintoja.
Kuinka käsitellä hälytystä Selenium WebDriver -sovelluksessa
Hälytysrajapinta tarjoaa seuraavat harvat menetelmät, joita käytetään laajalti Selenium Webdriverissa.
1) void rej () // Napsauttamalla ilmoituksen Peruuta-painiketta.
driver.switchTo (). hälytys (). hylkää ();
2) void accept () // Napsauttamalla ilmoituksen OK-painiketta.
driver.switchTo (). alert (). accept ();
3) String getText () // Hälytysviestin kaappaamiseen.
driver.switchTo (). alert (). getText ();
4) void sendKeys (String stringToSend) // Joitakin tietoja lähetetään hälytysruutuun.
driver.switchTo (). alert (). sendKeys ("Teksti");
Voit nähdä, kuinka monta hälytysmenetelmää näytetään, kuten alla olevassa Eclipse-ehdotuksessa näytetään.
Voimme helposti siirtyä hälytykseen pääikkunasta käyttämällä Seleniumin .switchTo () -menetelmää.
Nyt automatisoimme alla olevan skenaarion.
Tässä skenaariossa käytämme Guru99-demosivustoa Selenium Alert -käsittelyn havainnollistamiseen.
Vaihe 1) Käynnistä verkkoselain ja avaa sivusto "http://demo.guru99.com/test/delete_customer.php"
Vaihe 2) Anna mikä tahansa asiakastunnus.
Vaihe 3) Kun olet syöttänyt asiakastunnuksen, napsauta Lähetä-painiketta.
Vaihe 4) Hylkää / hyväksy hälytys.
Hälytyksen käsittely Selenium Webdriver -ohjelmassa yllä olevan skenaarion avulla
tuo org.openqa.selenium.By;tuo org.openqa.selenium.WebDriver;tuo org.openqa.selenium.chrome.ChromeDriver;tuo org.openqa.selenium.NoAlertPresentException;tuonti org.openqa.selenium.Alert;julkisen luokan AlertDemo {public static void main (String [] argumentit) heittää NoAlertPresentException, InterruptedException {System.setProperty ("webdriver.chrome.driver", "G: \\ chromedriver.exe");WebDriver-ohjain = uusi ChromeDriver ();// Hälytysviestien käsittelydriver.get ("http://demo.guru99.com/test/delete_customer.php");driver.findElement (By.name ("cusid")). sendKeys ("53920");driver.findElement (By.name ("lähetä")). submit ();// Vaihto hälytykseenHälytyshälytys = driver.switchTo (). Alert ();// Siepataan hälytysviestiä.Merkkijonohälytysviesti = driver.switchTo (). Alert (). GetText ();// Näytetään hälytysviestiSystem.out.println (alertMessage);Lanka. Unessa (5000);// Ilmoituksen hyväksyminenhälytys.hyväksy ();}}
Tuotos:
Kun suoritat yllä olevan koodin, se käynnistää sivuston. Yritä poistaa asiakastunnus käsittelemällä näytöllä näkyvää vahvistusilmoitusta ja poistamalla asiakastunnus sovelluksesta.
Selenium-ponnahdusikkunan käsitteleminen Webdriverilla
Automaatiossa, kun meillä on useita ikkunoita missä tahansa verkkosovelluksessa, toiminnan on ehkä vaihdettava ohjaus usean ikkunan välillä yhdestä toiseen toiminnan loppuun saattamiseksi. Toimenpiteen päätyttyä sen on palattava seleniumin pääikkunaan eli pääikkunaan. Näemme tämän edelleen artikkelissa esimerkin kanssa.
Selenium-web-ohjaimessa on menetelmiä, joiden avulla voimme käsitellä useita ikkunoita.
Driver.getWindowHandles ();
Voit käsitellä kaikkia avattuja ikkunoita web-ohjaimella käyttämällä "Driver.getWindowHandles ()" -ohjelmaa ja sitten voimme vaihtaa ikkunaa yhdestä ikkunasta toiseen verkkosovelluksessa. Sen palautustyyppi on Iterator
Driver.getWindowHandle ();
Kun sivusto avautuu, meidän on käsiteltävä pääikkunaa ohjaimella.getWindowHandle () . Tämä käsittelee nykyisen ikkunan, joka tunnistaa sen yksiselitteisesti tässä ajuri-ilmentymässä. Sen palautustyyppi on String.
Seleniumin ikkunankäsittelyssä noudatamme seuraavia vaiheita:
Nyt automatisoimme alla olevan skenaarion nähdäksesi, kuinka käsitellä useita ikkunoita Selenium Webdriverilla.
Tässä skenaariossa käytämme "Guru99" -demosivustoa havainnollistamaan ikkunan käsittelyä.
Vaihe 1) Käynnistä sivusto.
Käynnistä selain ja avaa sivusto " http://demo.guru99.com/popup.php "
Vaihe 2) Napsauta linkkiä "Napsauta tätä".
Kun käyttäjä napsauttaa "Napsauta tätä" -linkkiä, uusi lapsiikkuna avautuu.
Vaihe 3) Uusi lapsi-ikkuna avautuu.
Uusi ikkuna avautuu, pyydä käyttäjää syöttämään sähköpostitunnus ja lähettämään sivu.
Vaihe 4) Anna sähköpostiosoitteesi ja lähetä.
Vaihe 5) Näytä käyttöoikeustiedot sivua lähetettäessä.
Kun suoritat koodin, näet lapsiikkunan olevan auki uudessa välilehdessä.
- Sulje lapsiikkuna, jossa tunnistetiedot näytetään.
- Vaihda pääikkunaan.
Useiden ikkunoiden käsittely Selenium-verkko-ohjaimessa yllä olevan skenaarion avulla.
tuoda java.util.Iterator;tuo java.util.Set;tuo org.openqa.selenium.By;tuo org.openqa.selenium.WebDriver;tuo org.openqa.selenium.firefox.FirefoxDriver;julkinen luokka WindowHandle_Demo {public static void main (String [] args) heittää InterruptedException {WebDriver-ohjain = uusi FirefoxDriver ();// Sivuston käynnistäminen.driver.get ("http://demo.guru99.com/popup.php");ohjain.hallinta (). ikkuna (). maksimoi ();driver.findElement (By.xpath ("// * [sisältää (@ href, 'popup.php')]")). napsauta ();Merkkijono MainWindow = driver.getWindowHandle ();// Kaikkien uusien avattujen ikkunoiden käsittely.Asetas1 = driver.getWindowHandles ();Iteraattori i1 = s1.iterator ();while (i1.hasNext ()){Merkkijono ChildWindow = i1.sext ();if (! MainWindow.equalsIgnoreCase (ChildWindow)){// Vaihto lapsi-ikkunaandriver.switchTo (). -ikkuna (ChildWindow);driver.findElement (By.name ("emailid")).sendKeys (" Tämä sähköpostiosoite on suojattu spamboteilta. Tarvitset Javascriptin nähdäksesi sen.");driver.findElement (By.name ("btnLogin")). napsauta ();// Lapsi-ikkunan sulkeminen.kuljettaja.sulje ();}}// Vaihto Vanhempi-ikkunaan eli pääikkunaan.driver.switchTo (). -ikkuna (MainWindow);}}
Tuotos:
Kun suoritat yllä olevan koodin, se käynnistää sivuston ja napsauttamalla "Napsauta tätä" -linkkiä, se avaa lapsi-ikkunan uudessa välilehdessä. Voit sulkea lapsiikkunan ja siirtyä vanhemman ikkunaan, kun toiminto on valmis. Siksi käsitellään useita ikkunoita sovelluksessa.
Useiden ikkunoiden käsittely seleenissä
Päätelmä:
- Määritimme hälytystyypit ja näytimme ne kuvakaappauksella.
- Osoitettu ilmoituksen käsittely Selenium WebDriver -ohjelmalla tietyn skenaarion avulla.
- Käsitteli useita ikkunoita Selenium WebDriver -ohjelmalla tietyssä skenaariossa.