gpt4 book ai didi

java - Selenium 自动化 - 如何从此列表中选择一个下拉菜单项而不会出现异常错误?

转载 作者:行者123 更新时间:2023-11-29 04:09:29 25 4
gpt4 key购买 nike

我想从网页下面的下拉菜单中选择一个下拉菜单项:

Drop menu with menu items

HTML code for the drop menu

HTML code for menu items

我尝试了以下 3 种方法来选择带有文本“Test”(索引[1])的项目:

  • 案例 1:
   driver.findElement(By.id("combo-1781-inputEl")).click();

driver.findElement(By.id("combo-1781-inputEl")).sendKeys("Test");

没有出现错误(测试通过)。但是“测试”项文本未显示在所选的下拉菜单字段中。

  • 案例 2:
     driver.findElement(By.id("combo-1781-inputEl")).click();

Select drp = new Select(driver.findElement(By.id("boundlist-1930-listEl")));
drp.selectByVisibleText("Test");

org.openqa.selenium.support.ui.UnexpectedTagNameException 被抛出。测试失败。

  • 案例 3:
    Select drp = new Select(driver.findElement(By.id("boundlist-1930-listEl")));
drp.selectByIndex(1);

org.openqa.selenium.support.ui.UnexpectedTagNameException 被抛出。测试失败。

最佳答案

您可以先使用以下方法点击下拉元素:

driver.findElement(By.id("combo-1781-inputEl")).click();

然后您可以使用以下方法单击“测试”元素:

driver.findElement(By.xpath("//div[@id='boundlist-1930-listEl']//li[text()='Test']")).click();

您还可以在此处参数化“测试”文本,以便将来如果您想单击任何其他下拉值,您只需在 xpath 中发送该文本然后单击它,您可以这样做:

String text="Test";
driver.findElement(By.xpath("//div[@id='boundlist-1930-listEl']//li[text()="+text+"]")).click();

关于java - Selenium 自动化 - 如何从此列表中选择一个下拉菜单项而不会出现异常错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55899396/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com