在硒C#中找不到类型或名称空间SelectElement

Kev*_*vin 6 c# selenium nunit selenium-webdriver nunittestadapter

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");
Run Code Online (Sandbox Code Playgroud)

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

The type or namespace `SelectElement` could not be found.
Run Code Online (Sandbox Code Playgroud)

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

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

有人知道如何解决吗?

Deb*_*anB 9

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

SelectElement类

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


继承层次

System.Object
    OpenQA.Selenium.Support.UI.SelectElement
Run Code Online (Sandbox Code Playgroud)

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


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


语法:公共类SelectElement:IWrapsElement


快照:

selectelement_class

卸载并重新安装Selenium.Webdriver和Selenium.Support程序包,肯定可以解决该问题。

参考

您可以在OpenQa Selenium 3.7中的“找不到WebDriverWait类”中找到相关的讨论。


小智 8

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

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

正确的using语句

using OpenQA.Selenium;
using OpenQA.Selenium.Support.UI;
Run Code Online (Sandbox Code Playgroud)