Есть ли способ отменить выполнение тестов в Selenium Grid?

У нас есть установка, в которой мы реализовали наши тесты пользовательского интерфейса на Java с использованием Selenium. Средством запуска тестов является JUnit, а для сборки мы используем maven. Чего мы хотели бы достичь в нашей непрерывной интеграции, так это того, что мы просто используем (верную) цель тестирования maven для параллельного запуска наших тестов пользовательского интерфейса в Selenium Grid. Пока я нашел 2 проблемы, которые мешают нам это сделать.

  1. Я думал, что мы можем каким-то образом отправить все тесты в хаб Selenium Grid, и он позаботится о распараллеливании, но кажется, что если я хочу запустить 1000 тестов на 20 узлах сетки (каждый с использованием 5 браузеров), чем на самом деле нужно 100 потоков на моей машине Jenkins, которая выполняет цель теста maven. Есть ли способ распараллелить тесты, не требуя создания такого же количества потоков на машине-исполнителе?

  2. Другая проблема, которая у нас есть (о которой весь этот вопрос), заключается в том, что если я отправлю 100 тестов в Selenium Grid и пойму, что я что-то напутал в тестах, и я остановлю процесс maven, который запустил тесты, тогда тесты продолжатся выполнение в Selenium Grid. Есть ли способ отменить эти тесты? Я ничего не нашел в Selenium API. (Даже в недокументированном REST API хаба). По сути, если я отправлю несколько тестов в Grid, единственный способ остановить их — убить узлы (или хаб). Любые обходные пути для этого?

Заранее спасибо!


person Zoli    schedule 12.09.2014    source источник


Ответы (1)


  1. Вы можете использовать параметр «parallel» в файле testng.xml (документ: http://testng.org/doc/documentation-main.html#parallel-running). После этого вы можете легко настроить каждый тест, добавив к ним параметры (browserName, browserVersion, nodeName и т. д.) и изменив возможности RemoteWebDriver внутри вашей программы в соответствии с параметрами.

  2. Я нашел это, может быть, это поможет вам: Как убить поток в узле Selenium Grid

person peetya    schedule 01.04.2015