9
driver.FindElement(By.Id("inputUsername")).SendKeys("aca");
driver.FindElement(By.Id("inputPassword")).SendKeys("123");
driver.FindElement(By.TagName("button")).Click();

SelectElement oSelect = new SelectElement(driver.FindElement(By.Id("selectFilterbyUser")));
oSelect.selectByText("Alex");

有人对我在上面附加的问题有解决方案吗?尝试使用SelectElement,但它显示:

The type or namespace `SelectElement` could not be found.

我试图查看潜在的修复,但它只显示了三个选项

  • SelectElement在新文件中生成类
  • 生成类SelectElement
  • 生成嵌套类SelectElement

有谁知道如何解决它?

4

6 回答 6

12

您需要确保引用 NuGet 包Selenium.Support

我遇到了同样的问题,然后意识到我只是在引用Selenium.WebDriver NuGet 包。添加 Selenium.Support NuGet 包并添加正确的 using 语句后。我的 SelectElement 代码已成功编译。

正确的 using 语句

using OpenQA.Selenium;
using OpenQA.Selenium.Support.UI;
于 2018-09-07T16:11:04.317 回答
10

参考之前的几篇文章,如果您使用NuGet Manager 使用nunittestadapterNUnit.FrameworkVS 2017等框架,有时安装/配置可能会出现问题。

选择元素类

根据文档,SelectElement该类几乎可用,OpenQA.Selenium.Support.UI Namespace其中提供了一种方便的方法来操作 HTML 选择元素中的选项选择。


继承层次

System.Object
    OpenQA.Selenium.Support.UI.SelectElement

命名空间:OpenQA.Selenium.Support.UI


程序集:WebDriver.Support(在 WebDriver.Support.dll 中)版本:3.1.0


语法:公共类 SelectElement:IWrapsElement


快照:

选择元素类

解决方案

卸载并重新安装 Selenium.Webdriver 和 Selenium.Support 包,这肯定会解决问题。

参考

您可以在无法找到 OpenQa Selenium 3.7 中的 WebDriverWait 类中找到相关讨论

于 2018-07-20T09:37:39.950 回答
2

用于从下拉菜单中选择项目的 Selenium WebDriver C# 代码:

IWebElement selectElement = driver.FindElement(By.Id("selectFilterbyUser"));
SelectElement oSelect = new SelectElement(selectElement);

下拉项的选择方式有3种:byText、byIndex、byValue

1.byText()

oSelect.SelectByText("Alex");

2.byIndex()

SelectAnEducation.SelectByIndex(0);

3.byValue()

SelectAnEducation.SelectByValue("Alex");

希望这可以帮助,

于 2018-07-20T08:13:52.357 回答
2

由于使用预发布版本,我遇到了同样的问题。v4.00 阿尔法。我安装了以前的版本v3.141.0,错误已解决

在此处输入图像描述

于 2020-01-12T10:26:48.270 回答
0

首先,您需要从 NuGet 安装正确的包,即 Selenium.Support

正确的使用语句如下:

使用 OpenQA.Selenium.Support.UI;

于 2020-08-07T12:22:59.690 回答
0

从 Selenium.WebDriver 4.0 开始,需要同时安装 Selenium.WebDriver 和 Selenium.Support nuget 包(相同版本)以避免此问题(IWrapsElement / 类型加载异常)。

于 2021-11-27T17:04:22.837 回答