获取行数&在硒中使用Id的列

时间:2016-12-06 05:58:14

标签: java selenium-webdriver

我想计算selenium(Java)中表的行数和列数。 我做了一些研究,我找到的只是使用XPath

虽然我的代码在XPath中运行良好,但我想知道“是否可以使用Element Id实现此目的?”

EDITED: Table HTML

我的代码(工作正常,但使用XPath):

List<WebElement> rows = driver.findElements(By.xpath(".//table[@id='ctl00_TxnContentPage_grdLoanDetails']/tbody/tr"));
            System.out.println("Row count" + rows.size());

如果您需要任何具体细节,请与我们联系。

2 个答案:

答案 0 :(得分:1)

以下代码应该更健壮

{{1}}

答案 1 :(得分:1)

你可以使用CSS Selector。它会稍微快一些,但你必须自己测试一下,看看速度有多快......我们可能说的速度要快100毫秒或者是那个范围内的东西。

List<WebElement> rows = driver.findElements(By.cssSelector("#ctl00_TxnContentPage_grdLoanDetails > tbody > tr"));
System.out.println("Row count" + rows.size());

CSS选择器几乎总是比任何其他定位器更快,因为浏览器已经过优化以使用它,因为它很常见。

这确实使用了ID,正如您在#ctl00_TxnContentPage_grdLoanDetails中看到的那样,但它(显然)并未使用By.id()