• 多种形式的菜单定位,如下拉框、复选框等


    /*
     * 多种形式的菜单定位,如下拉框、复选框等
     */
    package com.sfwork;
    
    import org.openqa.selenium.Alert;
    import org.openqa.selenium.By;
    import org.openqa.selenium.JavascriptExecutor;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.WebElement;
    import org.openqa.selenium.chrome.ChromeDriver;
    import org.openqa.selenium.support.ui.Select;
    
    public class PageObjectModel2 {
    
        public static void main(String[] args) throws InterruptedException {
            // TODO Auto-generated method stub
            //设置WebDrivrer路径
            System.setProperty("webdriver.chrome.driver", "C:\\Program Files (x86)\\Google"
                    + "\\Chrome\\Application\\chromedriver.exe");
            //创建webdriver对象,控制浏览器
            WebDriver driver = new ChromeDriver();
            //打开selenium处理网页
            driver.navigate().to("file:///C:/Users/Administrator/Desktop/"
                    + "%E8%87%AA%E5%8A%A8%E5%8C%96%E6%B5%8B%E8%AF%95/example.html");
            //浏览器最大化
            driver.manage().window().maximize();
            //线程休眠3秒
            Thread.sleep(3000);
    /*        //上传文件
            WebElement uploadfile = driver.findElement(By.name("attach[]"));
            uploadfile.sendKeys("C:\\Users\\Administrator\\Desktop\\自动化测试\\book1.xsl");
            //线程休眠3秒
            Thread.sleep(3000);
            */
    /*        //弹出框
            WebElement al = driver.findElement(By.name("alterbutton"));
            al.click();
            Alert alert = driver.switchTo().alert();
            //打印出弹出框的内容
            System.out.println(alert.getText());
            //线程休眠3秒
            Thread.sleep(3000);
            //弹出框确定
    //        alert.accept();
            //线程休眠3秒
            Thread.sleep(3000);
            //点击关闭
            alert.dismiss();
            //线程休眠3秒
            Thread.sleep(3000);    
            */
    /*        //向弹出框输入内容,example的第二个例子
            driver.findElement(By.name("promptbutton")).click();
            Alert alert = driver.switchTo().alert();
            //获取弹出框内容
            String text = alert.getText();
            System.out.println(text);
            //向弹出框输入内容
            alert.sendKeys("hello");
            //线程休眠3秒
            Thread.sleep(3000);
            //点击确定
            alert.accept();
            System.out.println(alert.getText());
            //线程休眠3秒
            Thread.sleep(2000);
            alert.accept();
            //线程休眠3秒
            Thread.sleep(3000);
            */
    /*        //弹出框,二次确定
            driver.findElement(By.name("confirmbutton")).click();
            Alert alert = driver.switchTo().alert();
            //获取第一个弹出框的内容
            System.out.println(alert.getText());
            //点击确定
            alert.accept();
            //获取第二个弹出框的内容
            System.out.println(alert.getText());
            //点击确定
            alert.accept();
            */
    /*        //下拉选择
            //通过ID定位到下拉列表
            WebElement selector = driver.findElement(By.id("Selector"));
            //创建select对象
            Select select = new Select(selector);
            //通过Text选择
    //        select.selectByVisibleText("香蕉");
            //通过index选择,是根据自己本身的index去取,而不是取前面的index
    //        select.selectByIndex(3);
            //通过value选择
            select.selectByValue("grape");
            //线程休眠3秒
            Thread.sleep(3000);
            //点击选择结果
            driver.findElement(By.name("showSelectResult")).click();;
            Alert alert = driver.switchTo().alert();
            //输入弹出框内容
            System.out.println(alert.getText());
            //点击确定
            alert.accept();
            */
    /*        //单选框
            //就是直接定位到选项,然后点击
    //        driver.findElement(By.className("AliBaBa")).click();
            //通过cssSelector定位
            driver.findElement(By.xpath("/html/body/center/p[1]/table/tbody/tr[7]/td[2]/div/label[3]"));
            //线程休眠3秒
            Thread.sleep(3000);    
            */
    /*        //复选框
            //滚动定位,方法一,通过估窗体坐标x,y值 
    //        JavascriptExecutor js= (JavascriptExecutor)driver;
    //        js.executeScript("window.scrollTo(1,1000)");
            //方法二,取到定位元素的坐标,然后将值传进去
            //得出定位元素的x坐标值和y坐标值
    //        int x = driver.findElement(By.id("checkbox")).getLocation().x;
    //        int y = driver.findElement(By.id("checkbox")).getLocation().y;
    //        JavascriptExecutor js= (JavascriptExecutor)driver;
    //        //将x值和y值传到scrollto中
    //        js.executeScript("window.scrollTo("+x+","+y+")");
            //方法三,直接滚动到定位元素处
            JavascriptExecutor js = (JavascriptExecutor)driver;
            js.executeScript("arguments[0].scrollIntoView()",driver.findElement(By.id("checkbox")));
            //线程休眠3秒
            Thread.sleep(3000);
            //勾选wed复选框
            driver.findElement(By.id("web")).click();
            //勾选training复选框
            driver.findElement(By.xpath("//*[@id='training']")).click();
            //勾选friend复选框
            driver.findElement(By.cssSelector("input#friend")).click();
            //线程休眠3秒
            Thread.sleep(3000);
            */
            //下拉列表选择link
            JavascriptExecutor js = (JavascriptExecutor)driver;
            js.executeScript("arguments[0].scrollIntoView()", driver.findElement(By.id("jumpMenu")));
            WebElement selector = driver.findElement(By.id("jumpMenu"));
            //创建一个select实例,并将selector传进去
            Select select = new Select(selector);
            //通过text选择
            select.selectByVisibleText("新乡市教育局");
            //线程休眠3秒
            Thread.sleep(3000);
            //关闭driver
            driver.quit();
        }
    
    }
  • 相关阅读:
    linux性能调优总结
    mongodb之sharding原理
    Centos6.6搭建mongodb3.2.6副本集分片
    vmstat 命令详解
    SaltStack之Targeting
    saltstack之pillar详解
    saltstack之grains详解
    saltstack之yum简单部署lnmp
    Redis监控工具
    PHP实现选择排序
  • 原文地址:https://www.cnblogs.com/evangline/p/6913230.html
Copyright © 2020-2023  润新知