我需要使用 selenide 开发一个 java 测试,自动浏览在线平台,但我无法找到如何从某个下拉列表中选择选项。我已经尝试了几个代码。然而,使用
Select dropdown = new Select(driver.findElement(By.id("id_of_the_dropdown_list")));
作为代码的基础不起作用,然后我尝试了:
SelenideElement menueGesamt = $(By.id("id_of_the_dropdown_list"));
ElementsCollection optionen = menueGesamt.findAll(By.cssSelector("option"));
int maxRandom = optionen.size();
int random = new Random().nextInt(maxRandom);
SelenideElement gewaehlteOption = optionen.get(random);
String optionValue = gewaehlteOption.getAttribute("value");
menueGesamt.selectOptionByValue(optionValue);
但这也行不通。没有错误,但只是未选择该选项。该图像显示了应该发生的情况,应选择该选项,然后下拉菜单应关闭。
您可以显示更多信息吗? 你的 HTML 是这样的吗?有“期权价值”吗?
<select id="dropdownListId">
<option value="option1">Option 1</option>
<option value="option2">Option 2</option>
<option value="option3">Option 3</option>
如果您的 HTML 不是这样,那么 Selenide 将无法工作。
您需要使用方法 click() 来选择下拉列表的元素