¿Cómo puedo ejecutar las pruebas de Selenium en un servidor Ubuntu?

10

Actualmente tengo una máquina de prueba que ejecuta Ubuntu server 9.10 sin GUI. Quiero ejecutar mis suites de prueba Selenium RC que abren Firefox y realizan una serie de operaciones. Podría inflar mi servidor de prueba con Gnome o KDE para ejecutar esas pruebas, pero estoy buscando una solución más ligera. ¿Alguien tiene algunas sugerencias sobre cómo ejecutar pruebas de GUI en un servidor Ubuntu?

Thierry Lam
fuente
Si la aplicación web no tiene mucho javascript, entonces quizás debería considerar usar Webrat en lugar de Selenium. Se beneficiaría de poder realizar pruebas en máquinas sin cabeza y es más agradable ejecutar scripts y es mucho más rápido ejecutar pruebas.
WheresAlice

Respuestas:

6

Pruebe esto para automatizar cosas del servidor sin cabeza. (Advertencia, escribí la publicación a continuación)

http://www.semicomplete.com/blog/geekery/headless-wrapper-for-ephemeral-xservers.html

El resumen básico es que hice un script para ejecutar cualquier comando dentro de un servidor X sin cabeza recién creado. Esto también le permite ejecutar muchos servidores X sin cabeza a la vez si es necesario.

Entonces, para iniciar selenium-rc en un nuevo servidor X sin cabeza, lo haría (usando la herramienta descrita en la publicación anterior)

sh ephemeral-x.sh -x "Xvfb -ac -screen 0 1024x768x24" java -jar selenium-server.jar ...
Jordan Sissel
fuente
5

No lo he probado por mí mismo, pero esto suena prometedor:
http://www.alittlemadness.com/2008/03/05/running-selenium-headless/

Intentaré esto por mí mismo.

EDITAR:
finalmente tuve tiempo para probar por mí mismo. Lo probé en suse, pero debería ser el mismo para ubuntu, excepto quizás los nombres de paquetes y rutas.

primero instale el paquete xvfb, en suse se llama xorg-x11-Xvfb

Inicie xvfb en segundo plano con los parámetros de visualización, pantalla y resolución:
/usr/X11R6/bin/Xvfb :15 -ac -screen 0 1024x768x8 &

cambiar la configuración de su pantalla:
export DISPLAY=localhost:15.0

y comienza tu selenium rc:
/opt/java/bin/java -jar selenium-server.jar > /var/log/se_rc_server.log 2>&1 &

También puede iniciar selenium rc con una prueba especificada:
/opt/java/bin/java -jar selenium-server.jar -htmlSuite "*firefox3" "http://www.google.com" "/root/google.ts.html" "/root/google_report.html"

cristiano
fuente