Selenium Select - 通过部分文本选择下拉选项
类 Selenium Select 有 3 种不同的选项选择方法:
The class Selenium Select has 3 methods of different option selection:
- 选择索引
- 按值选择
- selectByVisibleText
现在,我有一种情况,我想通过一些文本选择一个选项,该文本部分出现在选项可见文本之一中(不想让自己暴露于整个文本中的更改).
Now, I have a situation where I want to select an option by some text that partially appear in one of the options visible text (don't want to expose myself to changes in the WHOLE text).
例如:
<option value="0" label="not-intresting">VERY-LONG-TEXT-THAT-I-NEED-TO-SELECT-DOLLAR</option>
我只想通过提供DOLLAR"来选择此选项,例如:
And i want to select this option only by providing the "DOLLAR", something like:
select.selectByPartOfVisibleText("DOLLAR")
您将如何有效地实施它?
How would you implement it effectively?
推荐答案
你可以试试这样的逻辑,希望对你有帮助
You can try a logic like this hope this helps
List <WebElements> optionsInnerText= driver.findElements(By.tagName("option"));
for(WebElement text: optionsInnerText){
String textContent = text.getAttribute("textContent");
if(textContent.toLowerCase.contains(expectedText.toLowerCase))
select.selectByPartOfVisibleText(expectedText);
}
}
相关文章