Tuesday, 7 June 2016

How to print values (drop down) using mouse over in selenium(nop ecommerce application)

package pageFactory_POM;

import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.interactions.Actions;
import org.testng.annotations.Test;

public class Example {
    static WebDriver driver;
    //WebDriver driver=new FirefoxDriver();
   
    public List<WebElement> elements;
    @Test
    public void verifyDashboradTabOnAdminpage() throws InterruptedException
    {
        System.setProperty("webdriver.chrome.driver","D:\\selenium_NEW_PRACTICE\\softwares\\chromedriver_win32\\chromedriver.exe");
        driver = new ChromeDriver();       
       
        driver.get("http://admin-demo.nopcommerce.com/admin/");
        driver.manage().window().maximize();
        driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);
        driver.findElement(By.xpath("//*[@id='Email']")).sendKeys("admin@yourstore.com");
        driver.findElement(By.xpath("//*[@id='Password']")).sendKeys("admin");
        driver.findElement(By.xpath("//input[@class='button-1 login-button']")).click();
        Thread.sleep(2000);
       
        //click on catalog button
        WebElement ele=driver.findElement(By.xpath("//img[@src='/Administration/Content/images/ico-catalog.png']"));
        ele.click();
        Thread.sleep(2000);
        System.out.println("Catalog is clicked");
        int catalogMenuSize = driver.findElements(By.xpath("//ul[@id='admin-menu']/li[2]/div/ul/li")).size();
        System.out.println("totall option from dd:" + catalogMenuSize);
        Actions action = new Actions(driver);
        Actions dd = new Actions(driver);
       
        for(int i=1;i<=catalogMenuSize;i++){
            if (i!=2){
                action.moveToElement(driver.findElement(By.xpath("//ul[@id='admin-menu']/li[2]/span"))).build().perform();
                dd.moveToElement(driver.findElement(By.xpath("//ul[@id='admin-menu']/li[2]/div/ul/li[" + i + "]/span"))).build().perform();
                System.out.println( i + ":: " + driver.findElement(By.xpath("//ul[@id='admin-menu']/li[2]/div/ul/li[" + i + "]/span")).getText());
                List<WebElement> elem2 = driver.findElements(By.xpath("//ul[@id='admin-menu']/li[2]/div/ul/li["+i+"]/div/ul/li/a"));
                for(int j=1;j<=elem2.size();j++){
                String subxpath ="(//ul[@id='admin-menu']/li[2]/div/ul/li["+i+"]/div/ul/li/a)["+j+"]";
                System.out.println(" :::: " + driver.findElement(By.xpath(subxpath)).getText());
                }
                }
                else {
                action.moveToElement(driver.findElement(By.xpath("//ul[@id='admin-menu']/li[2]/span"))).build().perform();
                dd.moveToElement(driver.findElement(By.xpath("//ul[@id='admin-menu']/li[2]/div/ul/li[" + i + "]/a"))).build().perform();
                System.out.println( i + ":: " + driver.findElement(By.xpath("//ul[@id='admin-menu']/li[2]/div/ul/li[" + i + "]/a")).getText());
                }
           
            }
    }
}
       
   
       
       
       
       
       
       

No comments:

Post a Comment