gpt4 book ai didi

java - 如何检查下拉框selenium java上设置的值

转载 作者:行者123 更新时间:2023-11-30 08:04:44 27 4
gpt4 key购买 nike

我有一个 HTML 代码。问题是选项名称包含大量空格,直到标签关闭为止。

<SELECT NAME="auth" id="auth" Size=1 onChange="updatePageState()">
<OPTION value="0">Open System
</option>
<OPTION value="1">WEP
</option>
<OPTION value="2">WPA
</option>
<OPTION value="3">WPA2
</option>

我想通过使用java中的selenium来检查下拉框中是否选择了某个选项。这是我的代码:

try {
WebDriverWait wait = new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.textToBePresentInElementValue(((By.xpath("//select [@id='auth']/option['" + Authen + "']"))), Authen));
System.out.println("Authentification is correct");
} catch (Exception x) {
System.out.println("Authentification is incorrect");
x.printStackTrace();
}

其中“Authen”是从文件中读取的变量,对应于下拉框中的选项。

我收到以下错误消息:

org.openqa.selenium.TimeoutException: Timed out after 20 seconds waiting for text ('WPA2') to be the value of element located by By.xpath: //select [@id='auth']/option['WPA2']

有关如何检查该字符串是否包含部分文本的任何帮助吗?我无法使用方法 .contains 因为它是 boolean 类型,而 .textToBePresentInElementValue 需要将第二个属性设置为 String 类型。

最佳答案

也许使用不太复杂的 @FindBy 表达式选择 Web 元素,然后将该元素包装在 Select 中会更容易,该 Select 提供了获取第一个选定选项的方法。然后您就可以进行比较。

看一下:

https://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/support/ui/Select.html

关于java - 如何检查下拉框selenium java上设置的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31293598/

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