Introducción a TestNG

Introducción a TestNG
MIN
14 Mar 2024

En este artículo estudiaremos – ¿Qué es TestNG? Es un marco de pruebas muy utilizado. Admite todos los niveles de pruebas, desde pruebas unitarias hasta pruebas funcionales automatizadas. Veremos su uso en las pruebas de Selenio y también veremos sus ventajas.

Índice

¿Qué es TestNG?

TestNG es un marco de pruebas inspirado en JUnit. Ofrece varias funciones, como pruebas basadas en datos, soporte de parametrización, ejecución paralela de casos de prueba y agrupación de casos de prueba, etc. Todas estas funciones ayudan a crear proyectos de prueba robustos y potentes.

Podemos convertir fácilmente un método o función en una prueba añadiéndole una anotación: @Prueba. Una prueba sencilla en Java tiene este aspecto:

@Prueba

public void muestraPrueba() {

//Cualquier lógica de prueba

System.out.println(«¡Hola! ¡Aquí ITtester!»);

}

Ahora, tanto en el caso de una excepción como en el de una aserción fallida, el caso de prueba se marcará como Fallido. De lo contrario, la prueba se marcará como superada.

Funciones TestNG

  1. Diferentes tipos de reclamaciones

Tiene una clase Assert que proporciona múltiples métodos que admiten distintos tipos de afirmaciones. Estas afirmaciones ayudan, por ejemplo, a comprobar la igualdad entre el resultado esperado y el real; a afirmar una condición como Verdadero o Falso; a afirmar si un valor es nulo o no nulo, etc.

  1. Ejecución paralela de pruebas

Utilizando el archivo testNG.xml, podemos ejecutar los casos de prueba en paralelo. Esto ayuda a reducir el tiempo total de ejecución de la prueba. La ejecución paralela puede realizarse a varios niveles: a nivel de método, clase o paquete.

  1. Capacidad para hacer pruebas interdependientes

Podemos hacer que la prueba dependa de otras pruebas. Esto puede hacerse utilizando los atributos «dependsOnMethods» y «dependsOnGroups» con la anotación @Test.

  1. Priorización de pruebas

Mediante esta función, podemos asignar un valor numérico de prioridad a las pruebas. La prioridad por defecto es 0.

  1. Agrupación de pruebas

Admite la agrupación lógica de casos de prueba. Esto permite ejecutar grupos de pruebas en paralelo, realizando determinadas operaciones antes o después de que se ejecuten las pruebas pertenecientes al grupo.

  1. Pruebas basadas en datos

Utilizando @DataProvider, podemos crear pruebas basadas en datos. Utilizando esta anotación dataProvider, podemos pasar datos de prueba al método de prueba.

  1. Informar

Una vez ejecutada la prueba, se genera un informe HTML que proporciona un resumen tabular de los resultados de la prueba. El formato de informe también es configurable por la implementación del oyente.

  1. Parametrización

Proporciona soporte inherente para la parametrización mediante la anotación @Parameters. Utilizando la anotación @Parameters, podemos pasar un valor de parámetro a la lógica de prueba desde el archivo testng.xml.

Ventajas de TestNG

  • Ayuda a reducir el tiempo total de ejecución de las pruebas al ofrecer la posibilidad de ejecutarlas en paralelo.
  • Puede integrarse fácilmente con herramientas CICD como Jenkins. Esto puede hacerse utilizando el archivo testNG.xml.
  • No es necesario codificar los datos. Para ello se pueden utilizar varias anotaciones, como @DataProvider, @Parameter, etc.
  • Podemos hacer que una prueba dependa de otra. Esto ahorra tiempo al omitir la prueba dependiente si falla la prueba principal.
  • Al agrupar las pruebas, podemos crear diferentes conjuntos de pruebas, como: sanidad, humo, regresión, etc. Además, podemos integrar y ejecutar estos conjuntos de pruebas utilizando herramientas CICD como – Jenkins.

Instalación de TestNG

TestNG no necesita una instalación especial. Sólo tienes que descargar el archivo jar testNG y añadirlo como biblioteca o incluirlo mediante maven.

<dependencia>

<><groupId org.testng /groupId>

<><artifactId testng /artifactId>

<><versión 6.10 /versión>

<><alcance prueba /alcance>

</dependency>

TestNG con la configuración de Eclipse

Para integrar TestNG con Eclipse IDE, podemos seguir los siguientes pasos que se indican en – TestNG.org. Para ello, podemos utilizar el Mercado Eclipse o la página de actualización.

A través de Eclipse Marketplace

Ve a la página TestNG del Market Place de Eclipse y arrastra el icono «Instalar» al escritorio.

Instalar desde la página de actualizaciones

  1. Selecciona «Ayuda / Instalar nuevo software…».
  2. En el campo «Trabajar con:», introduce la URL de la página de actualización:
    Página de actualización de la liberación – https://dl.bintray.com/testng-team/testng-eclipse-release/.
  3. Marca la casilla junto a la URL.
  4. Pulsa el botón «Siguiente».
  5. A continuación, sigue los pasos de la página de Eclipse.

Cuando hayas terminado, crea una prueba de muestra como se indica a continuación:

@Prueba

public void muestraPrueba() {

System.out.println(«¡Hola Mundo!»);

}

Ahora podemos ejecutar la prueba haciendo clic con el botón derecho en la clase y pulsando «Ejecutar como». A continuación, haz clic en «TestNG Test». Así podremos ejecutar los casos de prueba.

Como puedes ver, los resultados de la prueba se presentan en forma de Aprobado, Suspenso y Omitido. Entonces significa que nos hemos configurado correctamente.