Blog sobre desarrollo WordPress en Español Desarrollo WordPress en Español
WordPress y Codeception

Codeception para WordPress: Tests de aceptación con WebDriver y Selenium

En la entrada anterior veíamos cómo podíamos realizar tests de aceptación en elementos generados dinámicamente con JavaScript a través de PhantomJS. Pero aún así esta ejecución se hacía en segundo plano, y la salida de los tests era por la terminal.

En este post vamos a ir un paso más allá y esa emulación la vamos a hacer directamente en el navegador, así podremos comprobar en directo el resultado de nuestros tests. Esto añade un poco más de tiempo de ejecución de los tests respecto a PhantomJS, pero nos ofrece un beneficio claro al poder visualizar la emulación en un navegador.

 

Instalación de WebDriver y Selenium

Al igual que vimos en la entrada anterior, lo primero es instalar WebDriver (tienes más info en la documentación oficial):

Ahora en el archivo acceptance.suite.yml, configuramos WebDriver, y para este ejemplo utilizaremos chrome. Aprovecho para añadir unas líneas (capabilities) por si en local tienes un certificado SSL autofirmado, que podría ocasionarte problemas:

El siguiente paso es que te descargues Selenium Server y ChromeDriver. Necesitarás también tener instalado Java.

Coloca el Selenium Server en una carpeta donde puedas ejecutarlo globalmente y en una nueva pestaña de la terminal lanza el server en segundo plano. Sustituye ./chromedriver por la ruta donde lo hayas instalado y las xxx.xx por la versión que te hayas descargado:

Esto tendrás que hacerlo siempre antes de lanzar los tests, y quedará en segundo plano Selenium Server a la espera de lanzar los tests. Vamos a lanzar el mismo tests que vimos en el ejemplo de PhantomJS:

Simplemente lanza los tests y verás cómo te abre una ventana con la aplicación de chrome, y ejecuta la navegación paso por paso: Ir a la página de login, rellenar el formulario, ir a la pagina de añadir nuevo post, rellenar el título y hacer click en Publicar.

Puede que también te interese

Cómo crear imágenes destacadas con tamaños personalizados en WordPress
Cómo crear imágenes destacadas con tamaños personalizados en WordPress
Con ésta cuestión nos podemos encontrar muy a menudo sobre todo si estamos desarrollando temas a medida. En nuestro diseño vendrán definidas unas imágenes con…
Utiliza Namespaces cuando desarrolles un plugin
Utiliza Namespaces cuando desarrolles un plugin
En este post vamos a ver qué son, y cómo y porqué deberías utilizar Namespaces cuando desarrolles algo, por ejemplo, un plugin para WordPress. Los…
Site Icon, mucho más que un favicon
Site Icon, mucho más que un favicon
En la versión 4.3 de WordPress se introdujo una nueva característica: el Site Icon. Antes de esta versión teníamos que introducir el favicon manualmente, o…
Cómo realizar una migración de WordPress correctamente
Cómo realizar una migración de WordPress correctamente
En este artículo vamos a ver paso a paso como realizar correctamente una migración de WordPress, tanto de hosting como de dominio de forma manual.…