WebDriver の C# バインディングを使用して、ドロップダウンから値を選択するのに苦労しています。過去に C# も WebDriver も使用したことがありません。Visual Studio C# 2010 Express エディションで WebDriver - Selenium-dotnet2.0b3 を使用しています。WebDriver.Common、WebDriver.Firefox、および WebDriver.Remote をソリューションに追加しました。これを使ってみた -
IWebElement dateOfBirth = webdriver.FindElement(By.Id("join_birth_day"));
List<IWebElement> dateOfBirthOptions = (List<IWebElement>)dateOfBirth.FindElement(By.TagName("option"));
foreach(IWebElement dateOfBirthOption in dateOfBirthOptions)
{
if (dateOfBirthOption.Equals("3"))
{
dateOfBirthOption.Select();
}
}
しかし、NUnit で私のソリューションを実行すると、エラーが表示されます
LiveCams.CreateAccount.createAccount:
System.InvalidCastException : Unable to cast object of type 'OpenQA.Selenium.Firefox.FirefoxWebElement' to type 'System.Collections.Generic.List`1[OpenQA.Selenium.IWebElement]'.
キャストしないと、ソリューションを構築することさえできません。ここで些細なことを見逃していると思います。ここで私を案内してくれる人はいますか? ドロップダウン選択は、Selenium 1.0 ではとてもシンプルでした:-/