Запуск теста Selenium WebDriver параллельно с NUnit3

Я использую Parallelizable Attribute NUnit3 для запуска тестов Selenium WebDriver, но тест всегда выполняется последовательно. Количество рабочих по умолчанию 4 для моей машины. У меня есть 2 приспособления, как показано ниже:

    [TestFixture]
    [Parallelizable(ParallelScope.Fixtures)]
    public class SeleniumTest1
    {
        [Test]
        public void Is_Title_Correct()
        {
            IWebDriver driver = new FirefoxDriver();
            driver.Navigate().GoToUrl("http://www.google.nl");
            string actualTitle = driver.Title;
            string expectedTitle = "Google";
            Assert.AreEqual(expectedTitle, actualTitle, "title is not correct");
            driver.Quit();
        }
   }

Как я могу заставить его работать параллельно, чтобы он мог открывать два браузера одновременно?


person Megha    schedule 05.02.2016    source источник
comment
У вас есть другой TextFixtures или у вас есть все тесты только под 1, который вы показали?   -  person Denis Koreyba    schedule 05.02.2016
comment
У меня есть еще один тестовый прибор: [TestFixture] [Parallelizable(ParallelScope.Fixtures)] public class SeleniumTest2 { [Test] public void Is_Title_Correct() { IWebDriver driver = new FirefoxDriver(); driver.Navigate().GoToUrl("http://www.google.nl"); string actualTitle = driver.Title; string expectedTitle = "Google"; Assert.AreEqual(expectedTitle, actualTitle, "title is not correct"); driver.Quit(); } }   -  person Megha    schedule 05.02.2016
comment
Вы пытались запустить эти 2 разных TestFixture вместе?   -  person Denis Koreyba    schedule 05.02.2016
comment
Я запускаю оба TestFixtures с помощью консоли Nunit3.   -  person Megha    schedule 06.02.2016


Ответы (1)


Это зависит от того, какой модуль запуска тестов вы используете для запуска своих тестов. У меня пока проблема без решения. Но просто чтобы дать вам представление о том, как действовать дальше...

Если вы используете (1) тестовый адаптер Visual Studio NUnit — очевидно, он еще не поддерживает NUnit 3; (2) средство запуска модульных тестов ReSharper только последней версии (10) поддерживает NUnit 3 — я бы попробовал сначала запустить модульные тесты параллельно из VS; (3) Средство запуска модульных тестов консоли NUnit 3 — когда я посмотрел на него, он не был готов к параллельному запуску модульных тестов. Это может быть сейчас, что-то посмотреть.

Опять же, основная идея заключается в том, чтобы найти инструмент, который будет запускать ваши тесты параллельно.

person Igor    schedule 05.02.2016
comment
Я использую консольный бегун Nunit3. Тесты запускаются последовательно с ним. - person Megha; 06.02.2016
comment
Я пробовал запускать свои тесты с помощью ReSharper 10, теперь тесты выполняются параллельно. Спасибо!! - person Megha; 08.02.2016
comment
@Megha Пожалуйста, отметьте ответ как отвеченный. Спасибо. Я также пробовал консоль NUnit 3 — она еще не готова для параллельного запуска тестов. Вы можете прочитать об этом в официальной документации: github.com/nunit/dev /wiki/Framework-Parallel-Test-Execution - person Igor; 08.02.2016
comment
@Megha, как вы используете Resharper 10 для запуска тестов? У меня не работает :( - person Denis Koreyba; 09.02.2016
comment
@DenisKoreyba - Проверьте ReSharper › Параметры › Количество сборок. Вы можете изменить его на номер процессора на вашем компьютере. Я также могу запускать тесты параллельно с консольным бегуном NUnit3, я просто сменил веб-драйвер на веб-драйвер Chrome. Мне все еще нужно выяснить, почему он не работает параллельно с веб-драйвером Firefox. - person Megha; 09.02.2016
comment
@Megha нет, я имею в виду, что мой ReSharper 10 вообще не может запускать тесты NUnit 3. Должна быть какая-то среда выполнения раннера или что? Это работало с NUnit 2, но не с NUnit 3 :( - person Denis Koreyba; 09.02.2016
comment
@DenisKoreyba - Проверить настройки ReSharper › Параметры › Инструменты › Модульное тестирование › NUnit. Мой использует средство запуска тестов NUnit 3 при ссылке на идентификатор nunit.framework 3.x. - person Megha; 09.02.2016
comment
@Мега спасибо большое! Мне помогло то, что вы сказали + еще несколько вариантов! - person Denis Koreyba; 09.02.2016