我正在用 java 创建一个 selenium 测试。我想自动化对话中的下拉菜单。下拉菜单的 xpath 是:
/html/body/div[8]/div/div/form/div[2]/div[2]/div[2]/div/select
我的问题是我无法从下拉菜单中选择一个元素。我用了:
new WebDriverWait(driver, 20).until
和 ExpectedCondition 选择一个元素。你能帮我找到一种从下拉列表中选择元素的方法吗?
我正在用 java 创建一个 selenium 测试。我想自动化对话中的下拉菜单。下拉菜单的 xpath 是:
/html/body/div[8]/div/div/form/div[2]/div[2]/div[2]/div/select
我的问题是我无法从下拉菜单中选择一个元素。我用了:
new WebDriverWait(driver, 20).until
和 ExpectedCondition 选择一个元素。你能帮我找到一种从下拉列表中选择元素的方法吗?
您需要先单击下拉按钮,然后从下拉列表中找到要选择的按钮,然后单击它。
要从html-select标记中选择一个选择选项,您需要诱导WebDriverWait并且您可以使用以下任一定位器策略:elementToBeClickable()
使用id和selectByIndex()
:
new Select(new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.id("selectID")))).selectByIndex(1);
使用cssSelector和selectByVisibleText()
:
new Select(new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.cssSelector("selectCssSelector")))).selectByVisibleText("OptionText");
使用xpath和selectByValue()
:
new Select(new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("selectXpath")))).selectByValue("OptionValue");
您可以在以下位置找到一些相关的详细讨论: