Selenium Webdriver——Table类封装
2024-08-24 05:05:39
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();
}
}
最新文章
- linux atom 不支持中文
- HDOJ/HDU 1022 Train Problem I(模拟栈)
- HDU5742 It&#39;s All In The Mind(思维题,水题)
- 实用css小技巧
- 03 Spring的父子容器
- php的运行原理、cgi对比fastcgi以及php-cgi和php-fpm之间的联系区别
- 吴恩达机器学习笔记50-主成分分析算法(PCA Algorithm)
- 2016vijos 1-1 兔子的字符串(后缀数组 + 二分 + 哈希)
- [SHOI2012]随机树[期望dp]
- ActionBar 笔记
- ORA-25205: the QUEUE SYS.KUPC$S_1_20180123193821 does not exist
- HDU 4336 Card Collector 期望dp+状压
- IOS之TableViewCell重用机制避免重复显示问题
- [BZOJ1877][SDOI2009]SuperGCD
- OC继承
- Manacher算法——求最长回文子串
- oracle中的substr()函数
- mysql获取表列信息、主键信息
- Spring Cloud 微服务二:API网关spring cloud zuul
- bzoj 4766: 文艺计算姬 矩阵树定理
热门文章
- Getting &#39;The AWS Access Key Id you provided does not exist in our records&#39; error with Amazon MWS
- HDU-4550-贪心
- dbms_job.submit方式创建job,太老了
- LINUX QQ
- 3.4.1 使用过滤式扩展方法(P43-44)
- POJ 1797 kruskal 算法
- 由于BOM头导致的Json解析出错
- vue图片上传组件
- 《DSP using MATLAB》Problem 3.1
- Ext.js 之MVC