如何确定下拉列表是否折叠

本文关键字:折叠 是否 下拉列表 何确定 | 更新日期: 2023-09-27 18:28:57

我正在尝试使用Selenium来自动化我的一些测试,我在TheA。。。问题流程如下:

  1. 从下拉列表中选择选项
  2. 单击下拉列表下方的"搜索"按钮(位于下拉列表的"后面"当它展开时)

不幸的是,Selenium比动画更快。当它仍在展开的列表下时,它会选择该选项并尝试单击搜索按钮(不过,它现在正在折叠)。

目前我使用讨厌的破解,就是等待1秒后再点击。

是否有任何方法可以确定下拉列表是否已折叠,以便我们能够毫无问题地单击按钮

下拉菜单的HTML代码如下:

<select data-bind="value: SearchCriteriaContacts.IsActive, options: YesNo, optionsText: 'ItemValue', optionsValue: 'ItemId', optionsCaption: $root.AnyText">
<option value="">--- Any ---</option>
<option value="">Yes</option>
<option value="">No</option>
</select>

如何确定下拉列表是否折叠

您可以使用显式等待来等待按钮可见

C#代码

WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(15));
wait.Until(ExpectedConditions.ElementIsVisible(By locator, string searchButtonLocator)).Click();

这将等待长达15秒的时间才能看到烟蒂。

有关更多ExpectedConditions,请查看此处