[英]The type or namespace SelectElement could not be found in selenium c#
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
有誰知道如何解決它?
您需要確保引用 NuGet 包Selenium.Support 。
我遇到了同樣的問題,然后意識到我只引用了Selenium.WebDriver NuGet 包。 添加 Selenium.Support NuGet 包並添加正確的 using 語句后。 我的 SelectElement 代碼已成功編譯。
正確的 using 語句
using OpenQA.Selenium;
using OpenQA.Selenium.Support.UI;
參考之前的幾篇文章,如果您使用像nunittestadapter 、 NUnit.Framework 、 VS 2017這樣的框架,使用 NuGet 管理器,有時安裝/配置可能會出現問題。
根據文檔, 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 包,這肯定會解決問題。
您可以在 Not find WebDriverWait class in OpenQa Selenium 3.7 中找到相關討論
用於從下拉列表中選擇項目的 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");
希望這可以幫助,
首先,您需要從 NuGet 安裝正確的軟件包 Selenium.Support
正確使用語句如下:
使用 OpenQA.Selenium.Support.UI;
從 Selenium.WebDriver 4.0 開始,需要同時安裝 Selenium.WebDriver 和 Selenium.Support nuget 包(相同版本)以避免此問題(IWrapsElement / 類型加載異常)。
在 Dotnet 4.7 中, SelectElement位於Selenium Support driver in Nuget Package 下
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.