2012-05-15 17 views
10

Como muchos, empezamos servidor de selenio a través del siguiente comando:Enlazar el selenio a un IP específico - ¿Es posible?

java -jar selenium-server-standalone-2.21.0.jar 

Lo que encontramos es que esto abre el selenio arriba en 0.0.0.0:4444

Started SocketListener on 0.0.0.0:4444 

[USER @ BOX ~]# netstat -na | grep LISTEN | grep 4444 
tcp  0  0 :::4444      :::*      LISTEN 

¿Hay alguna manera de obligar selenio a una ip específica (localhost)?

Gracias.

+0

Marque como correcta una de las respuestas que tiene '-host 192.168.1.100' ahora está disponible en selenio> = 2.40.0 –

Respuesta

0

Usted podría funcionar java -jar selenium-server-standalone-2.21.0.jar en una máquina remota

y luego en los scripts de selenio definir su WebDriver a ejecutar de forma remota.

En Ruby se podía haces de esta manera

@driver = Selenium::WebDriver.for(:remote, :url => "http://specific_ip_of_remotemachine:4444", :desired_capabilities => firefox) 

es esto lo que está buscando?

+0

no, no lo que estan buscando. queremos vincular el oyente de selenio (puerto predeterminado 4444) a una dirección IP específica, en lugar de todos los ips en nuestro servidor. –

4

Utilice el siguiente comando

java -jar selenium-server-standalone-2.21.0.jar -host 192.168.1.100 

, donde 192.168.1.100 es la dirección IP de la máquina

+0

esto no funciona. el selenio se inicia en 0.0.0.0:4444 independientemente. –

+1

visita http: // [hostip]/wd/después de ejecutar el comando para marcar – retornam

+1

Esto funciona para mí. La salida de la línea de comando todavía dice "connect on" 127.0.0.1:4444 "pero parece que puedo conectarme usando el parámetro de host (en mi caso, '10.0.0.179 '). –

2

Esto será posible mediante la adición del parámetro "-host 192.168.1.100", siempre que disponga de esta fijar en su versión:

https://code.google.com/p/selenium/source/detail?r=71c5e231f442

(que fijan no está incluido en los binarios disponibles en el momento de la escritura de forma que h AVE a construir su propia desde la fuente.)

+1

Hola @Steltek, ¿sabes si la solución está incluida en el selenio 2.40.0? http://selenium-release.storage.googleapis.com/index.html?path=2.40/ –

4

Ésta no es la forma correcta de manejar este problema, pero es una manera

Así que lo que esto hará que se acaba de soltar cualquier conexión en el puerto 4444 desde cualquier fuente externa. Esto se comprueba en primer lugar ir a la página

servidor de inicio como éste

java -jar selenium-server-standalone-2.39.0.jar -host 127.0.0.1 -port 4444 

verificar que todo está funcionando

http://yourexternalip:4444/wd/hub/ 

la página se carga. si su servidor se está ejecutando correctamente

expedición Los comandos

sudo iptables -A INPUT -p tcp --dport 4444 -s 127.0.0.1 -j ACCEPT 
sudo iptables -A INPUT -p tcp --dport 4444 -j DROP 

continuación, volver a cargar la página.la página web ya no será accesible (porque se está accediendo desde IP externa)

la nueva URL de acceso es ahora

http://127.0.0.1:4444/wd/hub/ 

que debería estar trabajando

De nuevo, esto es más de una tirita a un problema mayor y hacer esto no lo forzará a cambiar ningún código fuente y aún mantener un sistema seguro

Cuestiones relacionadas