En este artículo veremos como configurar el plugin de TestLink dentro de un proyecto en Jenkins de manera que podamos enviar de forma automática los resultados de un test automatizado.
Configuración de TestLink
Vamos a ver como crear y configurar un proyecto en TestLink desde el inicio :
- Creación de un Proyecto
- Creación de un Campo Personalizado
- Creación de una Suite de Pruebas
- Creación de un Caso de Prueba
- Creación de un Plan de Pruebas
- Creación de una Build
- Asignación de un Caso de Prueba a una Build
Creación del proyecto
En primer lugar, crearemos y configuraremos un nuevo proyecto en TestLink. Dentro de la pantalla principal en TestLink, accederemos al menú Gestión de Proyectos de Pruebas > Crear:
Crearemos el proyecto indicando su nombre y descripción, tal y como indica la imagen siguiente:
Creación de un Campo Personalizado
Para poder diferenciar qué caso de prueba en TestLink corresponde con cada test dentro de una misma ejecución, deberemos diferenciarlo a través de un campo personalizado. Este campo personalizado aparecerá posteriormente en cada caso de prueba en TestLink de manera que podamos identificarlo de forma única respecto al resto de casos.
Crearemos un campo personalizado que defina el package y la clase que ejecuta cada test. Para ello, en el menú principal iremos a : Gestión de Campos Personalizados > Crear:
Crearemos un campo personalizado llamado "Java Class", el cual se utilizará a nivel de cada Caso de Prueba, será de tipo String y estará habilitado en la pantalla del diseño de casos de prueba. No lo mostraremos en la pantalla de ejecución de pruebas.
Haremos clic en Añadir y asignar al proyecto actual para vincularlo automáticamente con el proyecto:
Creación de una Suite de Pruebas
Necesitaremos una suite de pruebas para ir añadiendo los diferentes casos de prueba a ejecutar. Desde la pantalla principal, iremos al menú Editar Casos de Prueba:
Nos aparecerá el proyecto generado anteriormente. Lo seleccionaremos y daremos de alta la nueva Suite de Pruebas, haciendo clic en el icono de Herramientas y posteriormente en el icono de Nueva Suite:
Creamos la nueva suite de pruebas:
Creación de un Caso de Prueba
Una vez creada la suite de pruebas podremos añadir tantos casos de prueba como se requieran. Para ello seleccionar la suite previamente creada. Pulsamos el botón de Herramientas y posteriormente en el icono de nuevo Caso de Prueba:
Creamos el nuevo caso de prueba. El tipo de ejecución lo deberemos marcar como Automatizado, de ésta manera el plugin de Jenkins será capaz de identificarlo.
Aquí entra en acción el campo personalizado generado anteriormente. En este campo deberemos indicar el package y nombre de la clase que ejecutará el caso de prueba en cuestión:
Este es el código fuente de la clase de test que se ejecutará y que corresponderá con el caso de prueba. Como se puede ver, el package y nombre de la clase corresponde con el indicado en el campo personalizado:
Creación de un Plan de Pruebas
Una vez definidos todos los casos de prueba, será preciso la creación de un plan de pruebas para proceder a su ejecución. En el menú principal iremos a Gestión de Planes de Pruebas > Crear:
Creamos el plan de pruebas:
Creación de una Build
Creamos la Build que se vinculará con el Plan de Pruebas generado anteriormente. En el menú principal iremos al menú Gestión de Builds > Crear:
Creamos la Build. En caso necesario se le puede especificar la fecha de release:
Asignación de Casos de Prueba a una Build
El último paso consistirá en añadir los casos de prueba que se ejecutarán en la Build creada. En el menú principal iremos al menú Asignar la Ejecución de Casos de Prueba:
Seleccionamos y añadimos los casos de prueba a incluir en la Build:
Ya tenemos preparado el proyecto en TestLink para vincularlo con el proyecto automatizado en Jenkins.
Configuración de Jenkins
Veremos como crear y configurar un job en Jenkins y configurar el plugin de TestLink.
- Instalación y Configuración del plugin de TestLink
- Creación de un Job en Jenkins
- Configuración plugin TestLink en el Job
- Ejecución y volcado de resultados en TestLink
Instalación y Configuración del plugin de TestLink
Antes de generar el proyecto deberemos instalar el plugin de TestLink en Jenkins. Vamos al menú Administrar Jenkins > Administrar Plugins. Buscamos e instalamos el plugin "TestLink Plugin".
Vamos al menú de Administración de Jenkins:
Vamos al menú de Administración de Plugins:
Buscamos e instalamos el plugin de TestLink:
Una vez instalado el Plugin deberemos configurar el acceso a TestLink vía Jenkins. Vamos al menú Administrar Jenkins > Configurar el Sistema. Configuramos el apartado de TestLink:
El valor "Developer Key" se obtiene accediendo a Mi Configuración, dentro de Interfaz de API. Podemos regenerar una nueva key si fuese necesario.
Vamos al menú de Configuración de Usuario:
Copiamos la clave API:
Creación de un Job en Jenkins
Creamos un proyecto de estilo libre con el nombre que se requiera:
Una vez creado, editamos su configuración y añadimos la URL al proyecto del repositorio Git. El repositorio Git utilizado en este ejemplo es el siguiente:
https://github.com/tupilabs/jenkins-testlink-plugin-tutorial.git
Configuración plugin TestLink en el Job
Dentro del apartado de Ejecutar añadimos un nuevo paso llamado > Invoke TestLink. Aplicamos la siguiente configuración:
- Versión de TestLink : Aplicará la establecida en la configuración de Jenkins.
- Nombre del Proyecto de Pruebas : Indicamos el nombre del proyecto.
- Nombre del Plan de Pruebas : Indicamos el nombre del plan de pruebas.
- Nombre de la Build : Indicamos el nombre de la build.
- Campos Personalizados : Indicamos el nombre del campo personalizado creado en TestLink.
- Test Plan Custom Fields : Indicamos el nombre del campo personalizado creado en TestLink.
Nota : Estos datos de entrada se pueden parametrizar de manera que se puedan especificar en tiempo de ejecución del proyecto, sin tener que editar la configuración del mismo para cada cambio de Build.
Dentro del apartado de Test Execution indicaremos la sentencia de ejecución del proyecto. En este caso le pasamos por parámetro el nombre de la suite, que contendrá la clase de test a ejecutar:
Este es el código fuente del fichero "suite.xml" del proyecto:
Por último, configuramos los logs de resultados. Establecemos la ruta donde se generarán los logs de TestNG.
Importante: En este ejemplo hemos discriminado los tests por nombre de clase (el campo personalizado Java Class contiene el package y nombre de la clase a ejecutar), por tanto, deberemos escoger la opción TestNG class name. Existen otras opciones, como discriminar por suite o por método. Para que la vinculación funcione se debe utilizar el mismo tipo tanto en la configuración del campo personalizado en TestLink como en la opción seleccionada en la configuración de la estrategia de búsqueda de resultados en el job de Jenkins.
Añadimos el nombre del campo personalizado para que pueda vincularlo con el Caso de Prueba.
Ejecución y volcado de resultados en TestLink
Ejecutamos el Job de Jenkins. Si hemos configurado correctamente todos los parámetros, Jenkins accederá a TestLink y recogerá todos aquellos casos de prueba a ejecutar:
Tras ejecutar los tests, volcará los resultados en cada caso de prueba, diferenciando uno de otros a través del campo personalizado:
Si accedemos a TestLink veremos como los resultados han sido volcados en el caso de prueba de forma automática:
Si te ha gustado, ¡síguenos en Twitter!