Showing posts with label Selenium Scripts. Show all posts
Showing posts with label Selenium Scripts. Show all posts

How to handle Alert in Selenium

Handle alerts

driver.switchTo().Alert();

alert.accept()// clicked on ok

alert.dismiss(); //clicked on cancel

for example:

public void alert(){
  String str=driver.switchTo().alert().getText();
  System.out.println(str);
  driver.switchTo().alert().accept();
  //driver.switchTo().alert().dismiss();

 }

How to handle dynamically changing popup in Webdriver?

Dynamic means the Name is not constant. It changes frequently

Use the below approach to handle Dynamically changing popup

Set s=driver.getWindowHandles();
Object popup[]=s.toArray();
driver.switchTo().window(popup[1].toString());

Selenium: Handle ajax element using Selenium WebDriver

Handle ajax element using Selenium WebDriver

---------------------------------
package advancedWebdriver;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.Test;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.AfterTest;

public class AjaxControl {

    public WebDriver driver;


    @
    Test
    public void googleAjax() throws Exception {
        driver.get("http://google.co.in");
        driver.findElement(By.id("gbqfq")).sendKeys("selenium");
        Thread.sleep(1000);
        String str = null;

        str = driver.findElement(By.xpath("//*[@id='gsr']/table/tbody/tr/td[2]")).getText();
        System.out.println(str);
        String s[] = str.split("\n");


        System.out.println(s.length);


        for (int i = 0; i < s.length; i++) {


            //System.out.println(s[i]); 


            if (s[i].equalsIgnoreCase("selenium tutorial"))


            {


                System.out.println(s[i]);


                driver.findElement(By.id("gbqfq")).clear();


                driver.findElement(By.id("gbqfq")).sendKeys(s[i]);
            }
        }
    }

    @
    BeforeTest
    public void beforeTest() {
        System.setProperty("webdriver.chrome.driver", "D:\\Library\\chromedriver.exe");
        driver = new ChromeDriver();
    }

    @
    AfterTest
    public void afterTest() {}

}

How to take all data form xml file in Selenium webdriver?


File fXmlFile = new File("D://file.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(fXmlFile);
doc.getDocumentElement().normalize();
System.out.println("Root element :" + doc.getDocumentElement().getNodeName());
NodeList nList = doc.getElementsByTagName("staff");
System.out.println("----------------------------");
for (int temp = 0; temp < nList.getLength(); temp++) {
    Node nNode = nList.item(temp);
    System.out.println("\nCurrent Element :" + nNode.getNodeName());
    if (nNode.getNodeType() == Node.ELEMENT_NODE) {
        Element eElement = (Element) nNode;
        System.out.println("Staff id : " + eElement.getAttribute("id"));
        System.out.println("First Name : " + eElement.getElementsByTagName("firstname").item(0).getTextContent());
        System.out.println("Last Name : " + eElement.getElementsByTagName("lastname").item(0).getTextContent());
        System.out.println("Nick Name : " + eElement.getElementsByTagName("nickname").item(0).getTextContent());
        System.out.println("Salary : " + eElement.getElementsByTagName("salary").item(0).getTextContent());
    }
}