我已经在硒中创建了Select对象来处理下拉列表。还包括了相关的软件包。然而,下拉列表并未被选中。请帮忙!
Select select = new Select(driver.findElement(By.xpath(“ / html [1] / body [1] / div [1] / div [1] / header [1] / div [3 ] / div [1] / div [1] / div [6] / ul [1] / li [1] / a [1]“)))); select.selectByValue(“ Blouses”);
我收到以下错误“在org.openqa.selenium.support.ui.Select。(Select.java:48)”;
当我将鼠标悬停在“选择”上时,便会附带一个注释-
org.openqa.selenium.support.ui.Select 注意:该元素既没有附加源,也没有附加Javadoc,因此找不到Javadoc。
答案 0 :(得分:0)
据我所知,您的XPath表达式以a
结尾,表示<a>
HTML tag,而hyperlink则代表Select
为了能够使用WebElement类,您需要向其构造函数传递一个<select>
HTML tag实例,该实例将指向一个CSS。
如果页面源代码中没有<select>
元素-这意味着下拉列表是通过JavaScript和text()
XPath function生成的,因此您只需单击以下链接即可: Blouses
文本反过来可能很简单:
driver.findElementByLinkText("Blouses").click()
如果您仍然想使用XPath,请注意,您可以使其变得更短,更易读和更可靠:将搜索范围限制为仅像//a
这样的超链接,并利用{{3}}仅匹配“有趣的链接”,点击带有Blouses
文本的链接的表达式将类似于:
driver.findElementByXPath("//a[text()='Blouses']").click();