Привет всем!
Появилась необходимость запускать параллельно тесты. Сами тесты написаны на C#.
Сталкивался кто-то с PNunit? Как его настроить и связать с Selenium Grid?
Если не трудно, то с какими-нибудь примерами.
Спасибо)
Привет всем!
Появилась необходимость запускать параллельно тесты. Сами тесты написаны на C#.
Сталкивался кто-то с PNunit? Как его настроить и связать с Selenium Grid?
Если не трудно, то с какими-нибудь примерами.
Спасибо)
Пользуюсь NUnit.Parallel https://cpntr.codeplex.com/
В коде ничего не нужно добавлять для параллельного запуска.
Вот так запускаю в гриде
Driver = new RemoteWebDriver(new Uri(<hub_url>), DesiredCapabilities.Chrome());
Спасибо! Прикольная тулза. А не подскажешь как в ней запускать разные TestFixture в параллель, а не отдельные тесты?
Не нашел такой фичи там.
Возможно не совсем тебя понял.
Опиши цель, которую хочешь достичь.
Правильно ли я понял, что ты хочешь сохранить порядок выполнения тестов в пределах одной фикстуры или выполнять все тесты фикстуры только на определенной ноде?
Нужно уточнение )
У меня тесты хранятся по фичам в классах(TestFixture). Тесты написаны так, что в TestFixtureSetUp инициализируется драйвер и закрывается только когда тесты класса все пройдут.
У меня получилось этой прогой запукскать тесты в параллель для одной TestFixture (куча открытых окон и в них бегут тесты для одного класса), а я хочу, чтобы в разных окнах браузера бежали разные TestFixture.
Смотрели в сторону Gallio Icarus? Gallio
Только есть маленькая проблемка - он больше не саппортится(
Спасибо всем кто отписался здесь.
Решание было найдено следующее : использовать бета версию NUnit 3.0, которрый поддерживает параллельный запуск тестов. Единственное, что нужно добавить в коде - аттрибут Parallezible. Стоит отметить, что он пока поддерживает только запуск TestFixture в параллель.
И еще один ньюанс : тесты он запускает по дефолту в количество потоков равное количеству ядер процессора. Чтобы увеличить количество потоков, то нужна через Console-nunit указывать параметр --workers = n, где n-количество потоков.
И, конечно же, прийдется переписывать код, чтобы сделать его Thread-safe.
Всем удачи)