2012-05-07 4 views
2

Я боюсь, что это очень тривиальный вопрос. Но у меня возникают проблемы с получением селена Grid2 для запуска нескольких тестов против одного узла, из моего понимания это должно быть возможно, установив maxSessions.Selenium grid2: как выполнить несколько тестов против одного узла?

Это моя установка: -Hub работает полностью стандартно -Node запускает firefox с 5instances и 5 сессий включен.

Я создал 6 фиктивных тестов с использованием MBUNIT и добавил [Paralizable], чтобы заставить их работать бок о бок.

Это то, что я сделал для проверки: 1: Запуск 2 узлов и запустить все тесты (они идут параллельно друг на каждом узле) 2: Выключите и запустить узла А все тесты

На этапе 2, где я застрял, я ожидал, что последний узел будет запускать сразу два теста, так как maxSessions установлен на 5, но этого не происходит, он работает только 1.

Я подозреваю, что использовал неправильный параметр при запуске хаба или узла где-то, но прямо сейчас я не могу понять это. кто хочет помочь новичку в Grid2? :)

Это примерно мой код, очень простое только для игры вокруг:

[TestFixture] 
public class RemoteTest 
{ 
    [Test] 
    [Parallelizable] 
    public void StartClose() 
    { 
    DesiredCapabilities cap = DesiredCapabilities.Firefox(); 

    IWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), cap); 

    driver.Navigate().GoToUrl("http://www.google.dk"); 

    driver.Quit(); 
    } 
} 

Команды, используемая:

Java -jar Селен-сервер автономного-2.14.0.jar -ролевого хаба

Java -jar селен-сервера автономный-2.14.0.jar -ролевой узел -hub http://192.168.0.26:4444/grid/register

+0

Вы можете поделиться, как вы параллельно проводите тесты? – Amey

+0

Добавлен пример, там не так много. но я могу добавить все, если это необходимо. –

+0

Вы видите 2 узла с 5 экземплярами каждого из firefox в вашей консоли селеновой сетки? Консоль можно найти по адресу http: // yourip: 4444/grid/console –

ответ

0

и речи не тривиальна :)

Для того, чтобы запустить сервер (с помощью следующей команды)

Java -jar селена-сервер автономного-2.14.0.jar -ролевого Концентратора

Для запуска узла (с помощью следующего команда)

Java -jar селен-сервер автономный-2.14.0.jar -ролевого узел -hub http://localhost:4444/grid/register

Incase если и пытался запустить узел с браузерами, а также (проверьте следующую команду)

-browser browserName = светлячок, версия = 3.6, MaxInstances = 5, платформа = LINUX

MaxInstances -> обозначающие Max экземпляров одного и того же браузера, которые могут работать на сетевой узел

Selenium Grid: MaxSessions vs MaxInstances

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

Пожалуйста, избегайте запуска тестов с узлов и вместо этого запускайте тесты с концентратора. Я пробовал тот же эксперимент, когда я запускал тесты с сервера (HUB), и я зарегистрировал узел для запуска параллельных тестовых примеров, и все работало идеально.

+0

К сожалению, это не помогло. Я уже начинаю их таким образом. Возможно, я пропустил что-то еще, может быть, это то, как я использую MBUnit –

+0

Сделал еще несколько копаний и похоже на сервер узлов получать сеансы, но не выполнять их параллельно. Я получаю это сообщение столько же раз, сколько задаю степень параллелизма: '22: 35: 21.530 INFO - Выполнение: [new session: {platform = ANY, browserName = firefox , version =}] в URL:/session) ' –

+0

Любые подсказки ?, узел, который я использую сейчас, - это I7, поэтому должно быть много ядер :) –

Смежные вопросы