Невозможно выполнить более 5 экземпляров браузера на узле с использованием Selenium Grid - PullRequest
0 голосов
/ 09 января 2020

Когда я выполняю более 5 тестов параллельно, используя TestNG через Selenium Grid, только 5 выполняются одновременно. Остальные встают в очередь. Я настроил свой узел так, чтобы он поддерживал 7 экземпляров Chrome. Почему 2 оставшихся экземпляра не используются?

Вот снимок экрана узла из Grid Console:

enter image description here

Снимок экрана конфигурации узла:

Node configuration

Код запуска узла:

java -jar selenium-server-standalone-3.8.1.jar -role node  -hub http://localhost:4444/grid/register -port 5556 -nodeConfig nodeConfig.json

Конфигурация узла JSON:

{
  "capabilities": [

    {
      "browserName": "chrome",
      "platform": "WIN10",
      "maxInstances": 7
    }

  ],
  "hub": "http://selenium-hub-host:4444"
}

TestNG XML (я использую параллельный запуск всех 7 тестов параллельно):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">


<suite name="myTestSuit" parallel="tests" thread-count="10">


    <test name="myTest1">

        <parameter name="browser" value="Chrome"></parameter>

        <classes>

            <class name="testClass1"></class>
            <class name="testClass2"></class>
            <class name="testClass3"></class>

        </classes>

    </test>


    <test name="myTest2">

        <parameter name="browser" value="Chrome"></parameter>

        <classes>

            <class name="testClass1"></class>
            <class name="testClass2"></class>
            <class name="testClass3"></class>

        </classes>

    </test>


    <test name="myTest3">

        <parameter name="browser" value="Chrome"></parameter>

        <classes>

            <class name="testClass1"></class>
            <class name="testClass2"></class>
            <class name="testClass3"></class>

        </classes>

    </test>


    <test name="myTest4">

        <parameter name="browser" value="Chrome"></parameter>

        <classes>

            <class name="testClass1"></class>
            <class name="testClass2"></class>
            <class name="testClass3"></class>

        </classes>

    </test>


    <test name="myTest5">

        <parameter name="browser" value="Chrome"></parameter>

        <classes>

            <class name="testClass1"></class>
            <class name="testClass2"></class>
            <class name="testClass3"></class>

        </classes>

    </test>



    <test name="myTest6">

        <parameter name="browser" value="Chrome"></parameter>

        <classes>

            <class name="testClass1"></class>
            <class name="testClass2"></class>
            <class name="testClass3"></class>

        </classes>

    </test>


    <test name="myTest7">

        <parameter name="browser" value="Chrome"></parameter>

        <classes>

            <class name="testClass1"></class>
            <class name="testClass2"></class>
            <class name="testClass3"></class>

        </classes>

    </test>



</suite>

(я также пытался создать два узла в моей системе. Каждый поддерживает 5 Chromes, поэтому у меня есть 10 Chrome экземпляров. В этом случае также используются только 5 из всех доступных экземпляров).

Ответы [ 3 ]

1 голос
/ 09 января 2020

По умолчанию количество потоков равно 5, поэтому открываются только браузеры. На самом деле вам нужно указать это в файле testng. xml. в наборе тегов thread-count = '7' или '10' как ваш wi sh.

1 голос
/ 09 января 2020

Мне удалось это исправить, применив оба решения @ murali selenium и @ Ратмир Асанов .

  1. Первый в TestNG XML , установите thread-count = "10" (значение по умолчанию будет 5)
  2. Теперь, внутри конфигурации узла JSON, установите "maxSession": 10 (по умолчанию только 5 сессий будут разрешены в 'MACHINE' ')
1 голос
/ 09 января 2020

Вам необходимо изменить параметр maxSession в конфигурации узла JSON.

Например,

{
  "capabilities":
  [
    {
      "browserName": "chrome",
      "platform": "WIN10",
      "maxInstances": 7
    }
  ],
  "maxSession": 10,
  "hub": "http://selenium-hub-host:4444",

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