从我的应用程序中,我搜索一个名称,结果在新窗口中打开,相关员工在网格中,我需要知道该名称的网格中出现的次数。 就像搜索约翰的结果一样 - 约翰费尔南德斯,约翰马克斯韦尔和约翰杜索萨。结果应该是3 John的发现。
这不起作用:
WebElement text = driver.findElement(By.tagName("text"));
String bodytext=text.getText();
System.out.println(bodytext);
//Verify the Name searched
int count=0;
while (bodytext.contains(name)){
count++;
bodytext=bodytext.substring(bodytext.indexOf(name))+name.length();
}
答案 0 :(得分:0)
获取网格ex的路径。
WebElements gridElements = driver.findElements(By.xpath("//table[@id='grid1']/tr/td"));
system.out.println("No. of occ. is->"+gridElements.size());
答案 1 :(得分:0)
By.tagName("text")
不能用作" text"不是HTML标记名称。
使用XPATH或更好的是CSS Selector。 您还可以使用javascript来计算它返回的名称数量。
如果您可以给结果页面HTML,我可以帮助您找到可以返回结果的CSS Selectore或Javascript。
答案 2 :(得分:0)
它运转良好,唯一的问题是
bodyText的= bodytext.substring(bodytext.indexOf(名称)+ name.length());
答案 3 :(得分:-1)
我们以第http://www.w3schools.com/html/html_tables.asp页
为例这是用于获取表格中的行的javascript代码(它还包括标题行)
document.getElementsByClassName('reference')[0].getElementsByTagName('tr').length
要从网络驱动程序运行javascript,请使用
(String) ((JavascriptExecutor) driver).executeScript("document.getElementsByClassName('reference')[0].getElementsByTagName('tr').length");
希望这有帮助。