Проблема с Selenium 2 Remote WebDriver и C # - Почему мой словарь не работает? - PullRequest
1 голос
/ 04 мая 2011

Во-первых, предостережение: я новичок в C #, поэтому, пожалуйста, прости меня, если это смехотворно простой вопрос.Я конвертирую некоторые тесты Selenium Python в C #, и я только начинаю.

Итак, у меня есть следующий пример в тестовом проекте, пытающийся заставить Selenium 2 работать в C #:

public class Selenium2RemoteWebDriver
{
    static void Main(string[] args)
    {
        var pltfm = new Platform(PlatformType.Windows);

        var environment = new Dictionary<string, object>
        {
            {"username", "my-sauce-name"},
            {"accessKey", "my-sauce-key"},
            {"browserName", "iexplore"},
            {"version", "8"},
            {"platform", "Windows"},
            {"name","Hello, Sauce!"}
        };

        //foreach (var pair in environment)
        //{
        //    Console.WriteLine("Key: {0}, Value: {1}", pair.Key, pair.Value);
        //}


        var capabilities = new DesiredCapabilities(environment);
        var driver = new RemoteWebDriver(
            new Uri("http://my-sauce-id:my-sauce-key@ondemand.saucelabs.com:80/wd/hub"), capabilities);

        driver.Navigate().GoToUrl("http://www.google.com");
        var search = driver.FindElement(By.Name("q"));
        search.SendKeys("Hello, WebDriver");
        search.Submit();

        Console.WriteLine(driver.Title);
        driver.Quit();
    }
}

Когда я запускаю этот тест, я получаю следующее сообщение:

Test 'T:Selenium2_Testing.Selenium2RemoteWebDriver' failed: The given key was not present in the dictionary.

Но когда я раскомментирую операторы печати, я вижу, что словарь завершен:

Key: username, Value: my-sauce-id
Key: accessKey, Value: my-sauce-key
Key: browserName, Value: iexplore
Key: version, Value: 8
Key: platform, Value: Windows
Key: name, Value: Hello, Sauce!

Что я делаю не так?

РЕДАКТИРОВАТЬ: Извинения: я должен был указать, что я использую:

Visual Studio 2010 (10.30319.1)
.Net Framework 4.0 (30319)
Selenium WebDriver 2.0b3 (уже скомпилированная загрузка)

Ответы [ 2 ]

1 голос
/ 05 мая 2011

Объект DesiredCapabilities в привязках .NET был недавно (пост 2.0b3) переписан для правильной передачи словаря для определения произвольных возможностей. Точное изменение кода, в котором было изменено поведение, отображается на этой ссылке .

0 голосов
/ 05 мая 2011

Оказывается, что-то не так с сборками, которые я использую.После компиляции из самого последнего источника и импорта этих двоичных файлов в проект эта проблема прекратилась.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...