java - 如何使用 selenium webdriver 和 java 通过匹配文本模式从下拉列表中选择选项

标签 java selenium

我试图通过仅匹配可见文本的某些部分来从下拉列表中选择一个选项,因为整个文本并不总是相同。谁能帮我解决这个问题吗?

最佳答案

我还没有对此进行测试,但这是在 C# 中执行此操作的方法,您应该能够轻松地将其转换为 Java 代码。我能想到的两种方法:

1)

string selBoxID = "id of select box";
string partialText = "option text to match";
driver.FindElement(By.XPath("//select[@id='" + selBoxID + "']/option[contains(text(), '" + partialText + "')]")).Click();

或者

2)

SelectElement elSel = new SelectElement(driver.FindElement(By.Id("id of select box")));
IList<IWebElement> opts = elSel.Options;
foreach (IWebElement elOpt in opts)
{
    if(elOpt.Text.Contains("partial text to look for"){
        elOpt.Click();
        return true;
    }
}
return false;

关于java - 如何使用 selenium webdriver 和 java 通过匹配文本模式从下拉列表中选择选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16455783/

相关文章:

java - 如何使用 maven-jar-plugin 创建带有 .class 文件的测试 jar?

java - Selenium Webdriver : Entering text into text field

java - 防止上下文 XML 在 Tomcat 6 中被覆盖

java - 为什么 one ceil 函数给出不同的答案?

asp.net - 如何使用 Selenium RC 运行 Google Chrome?

python - 索引超出范围错误: using Selenium to iterate page clicks in a list of elements over multiple webpages

Python/Selenium - 如何切换 java 树菜单?

java - 丰富的面孔和数据表

java - 如何使用命名空间针对 xsd 验证 xml 文件

java - 这个 Java 泛型运算符 "x.<y>function(...)"叫什么?它有什么作用?