domingo, 6 de enero de 2008

Selenium Server + JUnit

Selenium no solamente puede utilizarse de la manera que se menciono en el post anterior, sino que puede usarse de manera practicamente automatizada con varios lenguajes de programación, obviamente uno de ellos es Java.

Utilizando Selenium Server podemos desarrollar nuestras pruebas en el lenguaje ya conocido, Java, y podemos observar el comportamiento en el navegador real. Este post explica a groso modo la manera de comenzar con este proceso.

Nota: Para el ejemplo se asume que se utilizara Firefox y por ende, que este se encuentra instalado en la computadora donde se realizaran las pruebas, si desea utilizar IE en lugar de Firefox sustituya la cadena "*firefox" por "*iexplore".

Iniciar Selenium Server




  1. Primeramente es necesario descargar el software Selenium RC del site de Selenium.

  2. Extraer el contenido del archivo descargado

  3. Abrir una consola (cmd o terminal) y moverse al directorio donde se extrajo Selenium RC

  4. Cambiar a la carpeta selenium-server-x.x. Dependiendo el numero de la versión usada

  5. Dentro de esta carpeta teclear java -jar selenium-server.jar. Como resultado debera aparecer la consola del servidor indicando que esta escuchando en el puerto 4444.



Desarrollo de la prueba



El proceso de desarrollo llegará a escribir un simple TestCase que abra la página de Google. El código será parecido al siguiente (JUnit 3.8).


package selenium.test.sample;

import junit.framework.TestCase;

import com.thoughtworks.selenium.DefaultSelenium;
import com.thoughtworks.selenium.Selenium;

public class TestInicial extends TestCase {
private Selenium selenium;

protected void setUp() {
selenium = new DefaultSelenium("localhost", 4444,
"*firefox", "http://www.google.com.mx");;
selenium.start();
}

public void test1() {
selenium.open("http://www.google.com.mx/");
assertNotNull(selenium.getTitle());
}

protected void tearDown() {
selenium.stop();
}
}


Para poder compilar el test es necesario agregar al CLASSPATH actual las librerias que estan dentro de la carpeta selenium-java-client-x.x de la distribución de Selenium RC.

Una vez desarrollado el test procedemos a ejecutarlo, como resultado del mismo deberíamos de ver que se abre un navegador, este carga la página de Google, y se cierra inmediatamente. A manera de ejemplo se ha agregado un pequeño test que nos dice que obtuvimos una página con titulo.

Las posibilidades de prueba van desde enlaces, tablas, etc. Para asegurarse de entender estas capacidades puede leerse la documentación de Selenium que acompaña la distribución de Selenium RC.

3 comentarios:

Anónimo dijo...

Hola estoy siguiendo un ejemplo sencillo, pero solo consigo un SeleniumException internal server error.

¿Sabes porque es?

SeleniumServer server = new SeleniumServer();
server.start();
Selenium selenium = new DefaultSelenium("localhost", 4444, "firefox", "http://www.google.com");
selenium.open("http://www.google.com");
selenium.stop(); server.stop();

Anónimo dijo...

Hay una nueva herramienta que te permite administrar el servidor Selenium facilmente sin necesidad de andar lidiando con el cmd.
El proyecto es BlueDuck SRC y lo puede obtener aquí: https://sourceforge.net/projects/blueducksrc/

Saludos.
Gonzalo.

yanmaneee dijo...

coach outlet online
huaraches
air max 2019
nike air vapormax
timberlands
louboutin outlet
louboutin shoes
curry 5 shoes
air jordan
golden goose sale