zoukankan      html  css  js  c++  java
  • Selenium Webdriver——Table类封装

    WebTable.java

    import java.util.List;
    
    import org.openqa.selenium.By;
    import org.openqa.selenium.WebElement;
    
    public class WebTable {
        
        private WebElement webTable;
        public WebTable(WebElement webElement){
            this.webTable = webElement;
        }
        
        //等到表格的行数
        public int getRowCount(){
            List<WebElement>rowCounts = webTable.findElements(By.tagName("tr"));
            return rowCounts.size();
        }
        
        //得到指定行的列数
        public int getColCount(int rowId){
            List<WebElement>rowCounts = webTable.findElements(By.tagName("tr"));
            //取得当前的tr
            WebElement rowNum = rowCounts.get(rowId);
            //计算当前的td数
            List<WebElement>colCounts =rowNum.findElements(By.tagName("td"));
            return colCounts.size();
        }
        
        // 得到指定单元格的内容
        public  String getCellText(int rowIdx, int colIdx) {
            
            String text = "";
            
            try{
                List<WebElement> rowCounts = webTable.findElements(By.tagName("tr"));
                WebElement currentRow = rowCounts.get(rowIdx);
                List<WebElement> td = currentRow.findElements(By.tagName("td"));
                WebElement cell = td.get(colIdx);
                 text = cell.getText();       
            }catch(IndexOutOfBoundsException e){
                System.out.println("超出table边界值");
            }
            
            return text; 
        }
    }

    对webTable类进行测试

    import org.openqa.selenium.By;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.firefox.FirefoxDriver;
    import org.testng.Assert;
    import org.testng.annotations.Test;
    
    public class testTable {
        
      @Test
      public void testTableWebElement() {
          
          WebDriver driver = new FirefoxDriver();
          driver.manage().window().maximize();
          driver.get("F:\table.html");
          WebTable webtable = new WebTable(driver.findElement(By.tagName("table")));
          Assert.assertEquals(4, webtable.getRowCount());
          Assert.assertEquals(5, webtable.getColCount(1));
          System.out.println( webtable.getCellText(1, 1));
          driver.quit();
      }
    }
  • 相关阅读:
    【转】CNN卷积神经网络_ GoogLeNet 之 Inception(V1-V4)
    【转】Caffe的solver文件配置
    python 从filelist.txt中拷贝文件到另一文件夹中
    【转】fscanf 跳过空格,读取一行
    caffe配置NCCL
    caffe实现多任务学习
    mysql 2
    mysql 1
    mysql
    jQuery
  • 原文地址:https://www.cnblogs.com/hjhsysu/p/5744269.html
Copyright © 2011-2022 走看看