¿Qué es Jenkins?
Jenkins es la principal herramienta de integración de código abierto desarrollada por el laboratorio de Hudson. Es multiplataforma y se puede utilizar en entornos Windows, Linux, Mac OS y Solaris. Jenkins está escrito en Java. El uso principal de Jenkin es monitorear cualquier correo que pueda ser un cheque SVN, cron o cualquier estado de la aplicación. Enciende acciones preconfiguradas cuando ocurre una determinada etapa en las posiciones.
En este tutorial, aprenderemos
Características importantes Jenkins
- Soporte de cambios: Jenkins genera una lista de todos los cambios realizados en los repositorios como SVN.
- Enlaces permanentes: Jenkins proporciona enlaces directos a la última compilación o compilación fallida que se pueden utilizar para facilitar la comunicación.
- Instalación: Jenkins es fácil de instalar usando un archivo de instalación directa (exe) o un archivo war para usar un servidor de aplicaciones.
- Integración de correo electrónico: Jenkins se puede configurar para enviar contenido de estado de creación de correo electrónico.
- Configuración sencilla: varias tareas en Jenkins son fáciles de configurar.
- Prueba TestNG: Jenkins se puede configurar para ejecutar la prueba automatizada Testng después de tomar cada SVN.
- Varias máquinas virtuales: Jenkins se puede configurar para distribuir la compilación en varias máquinas.
- Construcción del proyecto: Jenkins documenta los detalles de la jarra, la versión de la jarra y el mapeo de los números de construcción y las jarras.
- Complementos: 3rd se puede configurar un complemento de fiesta en Jenkins para usar funciones y características adicionales.
¿Por qué Jenkins y Selenium?
- La ejecución de pruebas de Selenium en Jenkins le permite ejecutar sus pruebas cada vez que cambia su software e implementar el software en un nuevo entorno cuando las pruebas pasan.
- Jenkins puede programar sus pruebas para que se ejecuten en un momento específico.
- Puede guardar el historial de ejecución y los informes de prueba.
- Jenkins apoya a Maven para la construcción y Prueba proyecto en continua integración.
¿Qué es Maven?
Maven es una poderosa herramienta de gestión de proyectos / compilaciones, basada en el concepto POM (Project Object Model) que incluye información del proyecto e información de configuración para Maven, como directorio de compilación, directorio de origen, dependencia, directorio de origen de prueba, destinos, complementos, etc. .
Por qué Maven y Jenkins
Selenium WebDriver es ideal para la automatización del navegador. Pero, cuando se usa para probar y construir un marco de prueba, se siente escaso. La integración de Maven con selenio proporciona los siguientes beneficios
Apache Maven brinda soporte para administrar todo el ciclo de vida de los proyectos de prueba.
- Maven se utiliza para definir la estructura del proyecto, las dependencias, la construcción y la gestión de pruebas.
- Con pom.xml (Maven) puede configurar las dependencias necesarias para la compilación actual y las pruebas de código.
- Maven descarga automáticamente los archivos necesarios del repositorio mientras se construye el proyecto.
Pasos para instalar Maven y usarlo con TestNG Selenium
Para este tutorial, usaremos Eclipse (Juno) IDE para Java Desarrolladores para configurar Selenium WebDriver Project. Además, necesitamos agregar el complemento m2eclipse a Eclipse para facilitar el proceso de compilación y crear un archivo pom.xml.
Agreguemos el complemento m2eclipse a Eclipse con los siguientes pasos:
Paso 1) En Eclipse IDE, seleccione Ayudar | Instalación de nuevo software desde el menú principal de Eclipse.
Paso 2) En el cuadro de diálogo Instalar, ingrese una URL http://download.eclipse.org/technology/m2e/releases/. Escoger Trabajando con y enchufe m2e como se muestra en la siguiente imagen:
Paso 3)Haga clic en Hacia adelante botón de instalación y acabado.
Configurar Eclipse con Maven
Con el complemento m2e instalado, ahora necesitamos crear un proyecto Maven.
Paso 1) En Eclipse IDE, cree un nuevo proyecto seleccionando Archivo | Nuevo | Otros en el menú de Eclipse.
Paso 2) Sobre el Nuevo diálogo, seleccione Maven | Proyecto Maven y haga clic en Siguiente
Paso 3) Sobre el Proyecto New Maven seleccione el diálogo Crea un proyecto simple y haga clic en Siguiente
Paso 4) Ingrese WebdriverTest i Identificación del grupo: y ID de artefacto: y haga clic en finalizar
Paso 5) Eclipse creará WebdriverTest con la siguiente estructura:
Paso 6) Clic derecho en Biblioteca de sistemas JRE y seleccione el Propiedades opción del menú.
Sobre el Propiedades de la biblioteca de sistemas JRE cuadro de diálogo, asegúrese Espacio de trabajo JRE predeterminado seleccione y haga clic en Aceptar
Paso 7). Escoger pom.xml Oh Explorador de proyectos..
El archivo pom.xml se abrirá en la sección Editor.
Paso 8) Agregue selenio, Maven, TestNG, Junit dependencias de pom.xml en el nodo
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>2.45.0</version> </dependency> <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>6.8.8</version> <scope>test</scope> </dependency> </dependencies>
Paso 9) Cree una nueva clase TestNG. Introduzca el nombre del paquete como «ejemplo» y «Prueba nueva» en el Nombre: cuadro de texto y haga clic en el Terminar botón como se muestra en la siguiente imagen:
Paso 10). Eclipse creará la clase NewTest como se muestra en la siguiente imagen:
Paso 11) Agregue el siguiente código al Nueva prueba rango:
Este código verificará el título de la página de selenio de Guru99
package example; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.Assert; import org.testng.annotations.Test; import org.testng.annotations.BeforeTest; import org.testng.annotations.AfterTest; public class NewTest { private WebDriver driver; @Test public void testEasy() { driver.get("http://demo.guru99.com/test/guru99home/"); String title = driver.getTitle(); Assert.assertTrue(title.contains("Demo Guru99 Page")); } @BeforeTest public void beforeTest() { driver = new FirefoxDriver(); } @AfterTest public void afterTest() { driver.quit(); } }
Paso 12) Haga clic derecho en WebdriverTest y seleccione TestNG | Convierta a TestNG.
Eclipse creará testng.xml que dice que solo necesita ejecutar una prueba con el nombre Nueva prueba como se muestra en la siguiente imagen:
Actualice el proyecto y asegúrese de que el archivo esté visible en el árbol Paquete explorador (clic derecho en el proyecto – Renovación).
Paso 13) Ahora debes pasar una prueba a través de este testng.xml.
Así que ve al Ejecutar configuraciones y crea una nueva dirección TestNG, seleccione el proyecto y el campo Suite como testng.xml y haga clic en Ejecutar
Asegúrese de que la construcción se complete con éxito.
Paso 14). Además, necesitamos agregar
- complemento-compilador-maven
- maven-surefire-plugin
- testng.xml
a pom.xml.
El maven-surefire-plug se utiliza para configurar y realizar pruebas. Aquí se utiliza un complemento para configurar test.xml para las pruebas de TestNG y para generar informes de prueba.
Maven-compiler-plugin se utiliza para ayudar a compilar el código y utilizar la versión particular de JDK para la compilación. Coloque todas las dependencias en el siguiente clúster de código, en pom.xml en el nodo
Paso 15) Para ejecutar thmi pruebas en el ciclo de vida de Maven, haga clic con el botón derecho en WebdriverTest y seleccione Correr como | Prueba de Maven. Maven probará el proyecto.
Asegúrese de que la construcción se complete con éxito.
Pasos para instalar Jenkins y configurarlo para ejecutar Maven con TestNg Selenium
Instalación
Paso 1) Ir http://jenkins-ci.org/y descargue el paquete adecuado para su sistema operativo. Instale Jenkins.
Paso 2) Descomprima Jenkins en una carpeta específica. Ejecute el archivo exe como se muestra en la siguiente imagen:
Paso 3) I Ajuste Jenkins 1.607 haga clic en la ventana Hacia adelante botón.
Paso 4) Haga clic en Instalación botón al final.
Paso 5) Una vez realizada la instalación, navegue hasta Jenkins Dashboard (http: // localhost: 8080 de forma predeterminada) en la ventana del navegador.
Paso 6) Haga clic en el Nuevo artículo enlace para crear una publicación de CI.
Paso 7) Seleccione el botón de opción del proyecto Maven como se muestra en la siguiente imagen:
Usando el Build a Proyecto Maven opción, Jenkins apoya la construcción y prueba de proyectos de Maven.
Paso 6) Haga clic en el botón Aceptar. Se crea una nueva publicación con el nombre «WebdriverTest» en el Panel de Jenkins.
Paso 7) Ir Administrar Jenkins => Configurar sistema como se muestra en la siguiente imagen.
Haga clic en las instalaciones de JDK y configure JDK como en la siguiente imagen:
Paso 8) Ve a la Construcción parte del nuevo trabajo.
- Sa Raíz POM cuadro de texto, ingrese la ruta completa a pom.xml
- En la sección Objetivos y opciones, ingrese «prueba neta».
Paso 9) Haga clic en Solicitar botón.
Paso 10) En la página del proyecto WebdriverTest, haga clic en el Construye ahora conexión.
Maven construirá el proyecto. TestNG tendrá que ejecutar los casos de prueba.
Paso 11) Cuando se complete el proceso de construcción, en el Panel de Jenkins, haga clic en el WebdriverTest proyecto
Paso 12) La página del proyecto WebdriverTest muestra el historial de construcción y enlaces a los resultados como se muestra en la siguiente imagen:
Paso 13) Haga clic en el enlace «Resultado de la prueba más reciente» para ver los resultados de la prueba, como se muestra en la siguiente imagen:
Paso 14). Seleccione una compilación específica y verá el estado actual haciendo clic en «salida de consola«.
Programación de Jenkins para ejecución automática.
Las construcciones programadas (pruebas de selenio) son una de las características importantes de Jenkins en las que fomenta la construcción de forma automática, en base a criterios definidos. Jenkins proporciona varias formas de desencadenar el proceso de compilación en la configuración Build Trigger.
Por ejemplo:
Ingrese 0 23 * * * en el cuadro de texto Programación como se muestra en la siguiente imagen. Esto estimulará el proceso de construcción todos los días a las 11 p.m.
Usando Jenkings sin Maven
Para ejecutar un script TestNg puro en Jenkins, ingrese lo siguiente en la compilación
D:> java -cp «Pathtolibfolder lib *; Pathtobinfolder bin» org.testng.TestNG testng.xml
- Haga clic en el botón Guardar.
- Nota: La ruta real de la carpeta lib y bin debe agregarse al comando anterior.
- Después de guardar el comando, Jenkins construirá un proyecto en un tiempo predefinido y este comando se ejecutará usando TestNG.
- El resultado se almacenará en un archivo HTML de informe personalizado que se puede enviar por correo electrónico a la configuración de Jenkin
- La salida del código
Ventajas de usar Jenkins
- Detección temprana: un error se puede detectar al principio del desarrollo de software
- Integración automática: no se requiere ningún esfuerzo por separado para integrar cada conmutador
- Instalador: sistema desplegable disponible en cualquier punto de desarrollo
- Registros: se mantienen registros parciales de construcción
- Soporte y adiciones: Una de las razones de la popularidad de Jenkin es la disponibilidad de un gran soporte de la comunidad. Además, hay muchos complementos prefabricados disponibles que lo ayudarán a ampliar su funcionalidad.