zoukankan      html  css  js  c++  java
  • selenium的常用操作

    webdrivce -打开浏览器、关闭、最大化窗口
        //设置chromedriver的启动路径
            System.setProperty("webdrivce.chrome.driver",路径);
            System.setProperty("webdriver.gecko.driver", pathWebdriver_geckodriver);
            //System.setProperty("webdriver.firefox.bin","D:\Mozilla Firefox\firefox.exe");//若浏览器安装不是默认路径
    
    
        //创建chromedriver对象,实例化对象
            WebDriver driver=new ChromeDriver();
    
        //打开网页
            //方法一,推荐:
                drive.get("http://baidu.com");
            //方法二:
                driver.navigate().to("https://www.baidu.com/");
        
        //关闭网页
            driver.close();
            driver.quit(); //会停止驱动
         
        //窗口最大化
            driver.manage().window().maximize();
        
    webdrivce -浏览器窗口大小设定
        //创建尺寸对象
            Dimension b=new Dimension(600,500);
        //窗口大小设定
            driver.manage().window().setSize(b);
    
    具体操作
        //输入内容
            WebElement a = driver.findElement(By.id("subject"));
            a.sendKeys("海德");
        //时间等待
            Thread.sleep(3000);
        //select选择
            Select aSelect=new Select(driver.findElement(By.id("state")));
            aSelect.selectByVisibleText("四川省");
        //点击
            WebElement b = driver.findElement(By.id("submit"));
            b.click();    
        //获取标签内的值
            WebElement a = driver.findElement(By.id("search"));
            String mm1=a.getText();
        //获取属性值
            WebElement m2 =driver.findElement(By.linkText("我分配的任务"));
            m2.getAttribute("href");
            m2.getAttribute("value");
        //断言,两个参数是否一致,错的话会统计出failure错误,用例终止
            assertEquals("你", m2.getAttribute("value"));
        //切换frame
            driver.switchTo().frame("ueditor_0");//切换iframe
            driver.switchTo().defaultContent();
            //或是
            //driver.switchTo().parentFrame();
        //wait等待
            WebDriverWait wait = new WebDriverWait(driver,10);//最长等待10s
            wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("kw")));//等待元素
        //获取当前网页
            driver.getCurrentUrl();
        //鼠标停留显示
            Actions action = new Actions(driver);
            WebElement m1=driver.findElement(By.xpath(".//ul[@id='browser']//*[contains(text(),'办公室主任')]"));
            action.moveToElement(m1).build().perform();
            driver.findElement(By.xpath(".//ul[@id='browser']//*[contains(text(),'办公室主任')]/*/*[text()='修改']")).click();
    确定取消弹窗
        //确定 ok
            driver.switchTo().alert().accept();
        //取消 cancel
            driver.switchTo().alert().dismiss();
             
            
    滚动到元素位置
        WebElement b1=driver.findElement(By.xpath(".//*[@id='dialog-authorize']//*[@id='sub_btn']"));
        ((JavascriptExecutor)driver).executeScript("arguments[0].scrollIntoView();", b1); 
            
            
    页面切换:
            // 1、获得目前所在的句柄
            String currentWindow = driver.getWindowHandle();
            // 2、获得所有的句柄
            Set<String> handles = driver.getWindowHandles();
            // 3、切换句柄
            Iterator<String> it = handles.iterator();
            while (it.hasNext()) {
                if (currentWindow == it.next())
                    continue;
                driver.switchTo().window(it.next());
            }
            //4、在切换后的句柄中进行操作
    
    java自动化用例关联excel表格的数据方式(导入jxl的jar包)
            String datetime = null;
            //实例化文件操作流
            InputStream instream = new FileInputStream("/Users/Cedar/EDU/test06.xls");
            //实例化 读文件的操作对象。并打开文件。
            jxl.Workbook readwb = Workbook.getWorkbook(instream);
            //实例化 工作表(序号从0开始。此处设置的是第2个工作表)的操作对象
            Sheet readsheet = readwb.getSheet(1);
            //实例化 单元格(序号从0开始。此处设置的单元格位置是第2列 第3行)的操作对象
            Cell cell = readsheet.getCell(1, 2);
            //读取 上面这个实例化的单元格内容。内容是字符串类型,然后赋值给一个字符串变量。
            datetime = cell.getContents();
            //关闭文件
            readwb.close();
    
    API封装
          公共方法或函数,可以设定返回值,需要的时候导入包就行了    
                    
  • 相关阅读:
    python模块之xlrd,xlwt,读写execl(xls,xlsx)
    Gulp的常见用法
    Linux常用操作及命令大全
    解决谷歌云 ssh 登录权限被拒的问题 google cloud (publickey,gssapi-keyex,gssapi-with-mic)
    创建web服务器
    网站与服务器的基本知识
    flex布局与移动页面适应
    史上最全的maven的pom.xml文件详解
    linux maven安装
    在 Linux 下搭建 Git 服务器(yum安装)
  • 原文地址:https://www.cnblogs.com/ceshixuexi/p/7250520.html
Copyright © 2011-2022 走看看