18

ドロップダウン リストでオプションを選択できません。.Selectまたはが必要だと思いますSelectElementが、そのようなオプションはありません。

サンプルコード:

IWebDriver ffbrowser = new FirefoxDriver();
ffbrowser.Navigate().GoToUrl("http://www.amazon.com/");
ffbrowser.Manage().Window.Maximize();

Thread.Sleep(500);

IWebElement ddl = ffbrowser.FindElement(By.Name("url"));
int numofitems = ddl.FindElements(By.TagName("option")).Count;

for (int i = 1; i < numofitems; i++)
{
    ffbrowser.select("TagName = option", "index = i");
}

「ffbrowser.select」の「select」がエラーとして報告されます。

エラー 1 'OpenQA.Selenium.IWebDriver' には 'select' の定義が含まれておらず、'OpenQA.Selenium.IWebDriver' 型の最初の引数を受け入れる拡張メソッド 'select' が見つかりませんでした (using ディレクティブまたはアセンブリ参照?)

私のプロジェクト参照には、、、、が含まれSelenium.WebDriverBackedSeleniumますThoughtworks.Selenium.CoreWebDriverWebDriver.Support

そして、私が持っています

using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Firefox;
using OpenQA.Selenium.IE;
using OpenQA.Selenium.Support.UI;
4

5 に答える 5

27

SelectElement使用している Selenium WebDriver のバージョンに応じて、 に含まれるクラスを使用できますOpenQA.Selenium.Support.UI
例えば:

SelectElement selector = new SelectElement(element);
selector.SelectByIndex(1);

要素がドロップダウン ボックスの場所。

于 2013-03-20T22:01:51.627 に答える
1

以下も使用できます。

new SelectElement(driver.FindElement(By.Id("")).SelectByText(""));

または:

new SelectElement(driver.FindElement(By.Id("")).SelectByValue(""));
于 2015-05-04T08:53:58.587 に答える