Automation Using Selenium Webdriver
Showing posts with label Alerts Popups. Show all posts
Showing posts with label Alerts Popups. Show all posts

Tuesday 18 October 2016

Alerts Popups, Confirmations And Prompts Handle in Selenium Webdriver

Alert Popup
Generally alert message popup display on page of software web application with alert text and Ok button as shown In bellow given Image.

Confirmation Popup
Confirmation popup displays on page of software web application with confirmation text, 
Ok and Cancel button as shown In bellow given Image.



Prompt Popup
Prompts will have prompt text, Input text box, Ok and Cancel buttons.






Selenium webdriver software testing tool has Its own Alert Interface to handleall above different popups.Alert Interface has different methods like accept(), dismiss(), getText(),
 sendKeys(java.lang.String keysToSend) and we can use all these methods to perform different 
actions on popups.


VIEW WEBDRIVER EXAMPLES STEP BY STEP

Look at the bellow given simple example of handling alerts, confirmations and prompts In 
selenium webdriver software automation testing tool. Bellow given example will perform different
 actions (Like click on Ok button, Click on cancel button, retrieve alert text, type text In prompt 
text box etc..)on all three kind of popups using different methods of Alert Interface.

Run bellow given example In eclipse with testng and observe the result.

import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;

public class unexpected_alert {
 WebDriver driver;

 @BeforeTest
 public void setup() throws Exception {
  driver =new FirefoxDriver();     
  driver.manage().window().maximize();
  driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
  driver.get("http://only-testing-blog.blogspot.in/2014/01/textbox.html");
 }

 @AfterTest
 public void tearDown() throws Exception {
  driver.quit();
 }

 @Test
 public void Text() throws InterruptedException {
  //Alert Pop up Handling.
  driver.findElement(By.xpath("//input[@value='Show Me Alert']")).click();
  //To locate alert.
  Alert A1 = driver.switchTo().alert();
  //To read the text from alert popup.
  String Alert1 = A1.getText();
  System.out.println(Alert1);
  Thread.sleep(2000);
  //To accept/Click Ok on alert popup.
  A1.accept();
  
  //Confirmation Pop up Handling.
  driver.findElement(By.xpath("//button[@onclick='myFunction()']")).click();
  Alert A2 = driver.switchTo().alert();
  String Alert2 = A2.getText();
  System.out.println(Alert2);
  Thread.sleep(2000);
  //To click On cancel button of confirmation box.
  A2.dismiss();
  
  //Prompt Pop up Handling.
  driver.findElement(By.xpath("//button[contains(.,'Show Me Prompt')]")).click();
  Alert A3 = driver.switchTo().alert();
  String Alert3 = A3.getText();
  System.out.println(Alert3);
  //To type text In text box of prompt pop up.
  A3.sendKeys("This Is John");
  Thread.sleep(2000);
  A3.accept();  
 }
}