Selenium Webdriver_如何搜索&通过从Excel工作表中获取输入,单击搜索字段中的特定记录

时间:2014-11-04 05:14:06

标签: selenium-webdriver

我已经开始使用Selenium Webdriver自动化我的应用程序了。我坚持下面的一点,因为我需要一些指导。我正在尝试搜索搜索字段中的特定记录(我已经从excel表中搜索了搜索文本),结果搜索返回了几条与之匹配的记录我使用execl表提供的输入。现在我想选择搜索结果中显示的其中一条记录。 我能够搜索文本,但坚持如何选择或点击该记录。

这是我为此设计的脚本:

driver.findElement(By.cssSelector("#txtSearchKeyword")).sendKeys(Sheet.getCell(3, i).getContents());

1 个答案:

答案 0 :(得分:0)

我认为您正在与Google使用的自动完成搜索相关联。我的答案基于此。

说,你搜索过文字'Stack',你得到的结果是'Stack1,Stack2,Stack3,Stack4'

现在,假设您要点击'Stack2 。为此,您可以使用以下代码:

driver.findElement("//*[.='Stack2']").click();

注意:此处,找到并单击具有'Stack2'的精确文本的元素。因此,搜索中的文本必须正好如此。此外,除搜索结果外,网页中没有其他元素必须包含此文本。
无论如何,您可以根据搜索结果列表修​​改上述xpath。比如说,如果搜索结果包含在ID为“list”的div元素中,那么您可以使用以下代码:

driver.findElement("//div[@id=['list']//[.='Stack2']").click();