2011-12-30 19 views
5

Mi configuración actual es Tengo un RC de selenio funcionando como concentrador en una máquina de Windows (supongamos que el nombre de la máquina es machine.name.com). He utilizado el siguiente comando para iniciarloSelenium Grid2 - Nodo remoto que no se conecta a HUB

java -jar selenium-server2.15.jar -role hub -port 5555 

Tengo un nodo de selenio que se ejecutan en la misma máquina que está registrado en el nodo anterior. He utilizado el siguiente comando para iniciar el nodo

java -jar selenium-server2.15.jar -role node -port 5554 -hub http://machine.name.com:5555/grid/register 

Este nodo se ha registrado correctamente, y yo soy capaz de ejecutar las pruebas de este nodo también.

Ahora tengo otra máquina (una LINUX - supongamos que la dirección IP de esta máquina es 10.123.123.123), forma en la que deseo ejecutar otro nodo registrado en el concentrador en las ventanas (machine.name.com) máquina en el puerto 5555. He utilizado el siguiente comando para iniciar el nodo.

java -jar selenium-server2.15.jar -role node -port 5572 -hub http://machine.name.com:5555/grid/register -browser browserName=chrome,platform=LINUX,maxInstances=5 

El problema es que este nodo no se registra en el HUB.

Sé con certeza que Hub y Node se han detectado entre sí, ya que cuando pulso http://machine.name.com:5555/console en el navegador se muestran ambos nodos. Pero la máquina Linux tiene un mensaje de error junto a él "escucha en http://10.123.123.123:5572 (no puede ser alcanzado en el momento)"

y no hay pruebas de selenio se puede ejecutar fuera de ese nodo.

Leí en seleniumgroups HERE que el nodo remoto también debe definir el par de valores de clave -hubHost. Así que han tratado el siguiente comando, así, sin éxito

java -jar selenium-server2.15.jar -role node -port 5572 -hub http://machine.name.com:5555/grid/register -browser browserName=chrome,platform=LINUX, maxInstances=5 -hubHost "machine.name.com" 

Pero esto no registra el nodo también.

Tenga en cuenta que no se produce ningún error en la consola de la máquina Linux. todo lo que se muestra es -

13:20:55.891 INFO - starting auto register thread. Will try to register every 5000ms 
13:20:55.891 INFO - Registering the node to hub :http://machine.name.com:5555/grid/register 
13:23:06.860 INFO - Registering the node to hub :http://machine.name.com:5555/grid/register 
13:25:17.678 INFO - Registering the node to hub :http://machine.name.com:5555/grid/register 
13:27:28.496 INFO - Registering the node to hub :http://machine.name.com:5555/grid/register 
13:29:39.311 INFO - Registering the node to hub :http://machine.name.com:5555/grid/register 

Sin errores son arrojados en la consola ejecutando el concentrador en la máquina Windows.

Los cortafuegos se perforan adecuadamente, y se controlan también por telneting.

Con todo esto, estoy seguro de que he hecho algo fundamentalmente incorrecto, ¿alguien puede ayudarme?

+0

¿Alguna vez intentó ejecutar el mismo comando utilizado en Windows? Sin navegador o plataforma –

Respuesta

10

chicos, gracias por su ayuda, pero el problema se debía a que la dirección IP del servidor de nodo no enrutable. Así que creé una entrada de host (entrada DNS también) para el servidor de nodos. y añade otro parámetro -host

lo que el comando ahora se ve como

java -jar selenium-server2.15.jar -role node -port 5572 -hub http://machine.name.com:5555/grid/register -browser browserName=chrome,platform=LINUX, maxInstances=5 -hubHost "machine.name.com" -host "nodemachine.name.com" 

gracias una vez más a todos.

+0

Estaba enfrentando el mismo problema con la máquina Mac pero el parámetro -host resolvió mi problema. Gracias amigo – bugCracker

+0

Hola Amey, ¿puedo usar la dirección IP en lugar de 'machine.name.com'? en caso afirmativo, cuál será el valor de ** - hubHost ** y ** - host **. No sé mi nombre de máquina. – Rameshwar

+0

Supongo que puede iniciar el nodo ignorando por completo esas dos opciones. – Amey

0

Para mí, parece que lo estás haciendo correctamente. ¿Has probado el indicador de -debug al iniciar el nodo? Quizás encuentres algo allí.

y probablemente quiera browserName = googlechrome en lugar de browserName = cromo

+0

Gracias, lo descubrí, debido a la red de área local en la que estoy encapsulado. He proporcionado el comando de host que escribí para que funcione – Amey

+0

¿por qué dices eso sobre el browserName? Todo lo que he leído dice que debería ser 'chrome' –

0

Me enfrenté a un problema similar al alojar tanto el nodo como el hub en la máquina local mientras estaba en la VPN. Yo era capaz de solucionar este problema mediante el lanzamiento tanto el cubo y el nodo con los parámetros -host y -PORT

Para lanzar el comando del cubo se ve algo como esto

java -jar selenium-server-standalone-2.32.0.jar -role hub -host <hubipaddress> -port 4444 

para el lanzamiento del nodo de la comando es como la siguiente

java -jar selenium-server-standalone-2.32.0.jar -role node -host <nodeipaddress> -port 5555 -hub http://<hubipaddress>:4444/grid/register 

En mi caso, tanto hubipaddress y nodeipaddress son los mismos y son la dirección IP asignada a mí sobre el VPN

0

SI está usando una máquina virtual, necesita verificar su entropía. El selenio usó urandom y, si no tienes suficiente entropía, tomará 1 hora más (si es que lo hace) para que el nodo aparezca.

en CentOS (y otras distribuciones) instalar:

yum install haveged 
chkconfig haveged on 
systemctl start haveged 

reinicie los servicios y el selenio debería arrancar correctamente.

Cuestiones relacionadas