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();
}
}

最新文章

  1. linux atom 不支持中文
  2. HDOJ/HDU 1022 Train Problem I(模拟栈)
  3. HDU5742 It&#39;s All In The Mind(思维题,水题)
  4. 实用css小技巧
  5. 03 Spring的父子容器
  6. php的运行原理、cgi对比fastcgi以及php-cgi和php-fpm之间的联系区别
  7. 吴恩达机器学习笔记50-主成分分析算法(PCA Algorithm)
  8. 2016vijos 1-1 兔子的字符串(后缀数组 + 二分 + 哈希)
  9. [SHOI2012]随机树[期望dp]
  10. ActionBar 笔记
  11. ORA-25205: the QUEUE SYS.KUPC$S_1_20180123193821 does not exist
  12. HDU 4336 Card Collector 期望dp+状压
  13. IOS之TableViewCell重用机制避免重复显示问题
  14. [BZOJ1877][SDOI2009]SuperGCD
  15. OC继承
  16. Manacher算法——求最长回文子串
  17. oracle中的substr()函数
  18. mysql获取表列信息、主键信息
  19. Spring Cloud 微服务二:API网关spring cloud zuul
  20. bzoj 4766: 文艺计算姬 矩阵树定理

热门文章

  1. Getting &#39;The AWS Access Key Id you provided does not exist in our records&#39; error with Amazon MWS
  2. HDU-4550-贪心
  3. dbms_job.submit方式创建job,太老了
  4. LINUX QQ
  5. 3.4.1 使用过滤式扩展方法(P43-44)
  6. POJ 1797 kruskal 算法
  7. 由于BOM头导致的Json解析出错
  8. vue图片上传组件
  9. 《DSP using MATLAB》Problem 3.1
  10. Ext.js 之MVC