🇺🇦 Слава Україні! Consulta cómo puedes ayudar a Ucrania desde España u otros países en supportukrainenow.org.

JUnit 4

JUnit es un framework de pruebas para la plataforma Java que permite realizar pruebas unitarias sobre código escrito en el lenguaje de programación Java o lenguajes que sean compatibles con Java. Por medio de JUnit se puede realizar de forma automatizada pruebas unitarias que permitan asegurar que los programadores no introducen regresiones en sus códigos fuente. A lo largo de los capítulos de este curso de JUnit 4, aprenderás los fundamentos con los que puedes hacer tu trabajo con el lenguaje de programación Java mucho más eficiente mediante la introducción de suites de test que te permitan pasar más tiempo programando y realmente corrigiendo defectos, y menos tiempo encontrando errores. Aunque este taller trate sobre JUnit 4, todavía quedan muchos equipos utilizándolo, motivo por el cual puede ser de ayuda a la hora de migrar a JUnit 5 o de mantener un proyecto legacy.

8 episodios 53:56 minutos Gratis

2 Tu primera prueba de JUnit

En este episodio creamos una prueba unitaria usando JUnit, y así vemos cómo funciona la anotación Test y las funciones fail() y assertEquals(). JUnit incorpora un montón de asertos, como assertEquals(), y muchos de ellos se caracterizan por tener al menos dos parámetros: expected, para representar el valor que debería devolver la llamada a la función de nuestro programa o biblioteca, y actual, para compararlo contra el valor real que se obtiene de su ejecución. En este vídeo, vemos también cómo ejecuta Eclipse las pruebas utilizando su interfaz gráfica.

Duración: 6:59

3 Anotaciones Before y After

Con las anotaciones Before y After se puede indicar código que debe ser ejecutado antes y después de cada uno de los Test que se ejecuten con JUnit. La anotación Before se puede aprovechar para ejecutar código antes de un test, y típicamente se usa para preparar código que de otro modo tendríamos que repetir en cada uno de los Tests que conforman un test case, mientras que con After podemos ejecutar un código después de cada uno de los tests para no tener que repetirlo uno a uno, como por ejemplo, la rutina de vaciado de una tabla de base de datos usada para pruebas.

Duración: 6:34

4 Los asertos que trae JUnit

Una enumeración de los principales tipos de asertos que hay en JUnit 4. En particular, en este vídeo te hablo sobre assertEquals y sobre por qué hay tantos métodos que se llaman igual. También vemos otros como assertNotEquals, assertSame, assertNotSame, assertTrue, assertFalse, assertNull y assertNotNull. Para assertEquals, existen variaciones según si queremos usar un mensaje personalizado o no, y también tenemos que considerar el uso de deltas a la hora de comprobar si dos valores de coma flotante son iguales.

Duración: 10:03

5 Excepciones con expected y límites de tiempo con timeout

Dos propiedades de la anotación Test que nos permiten hacer pruebas avanzadas para algunos casos especiales. Con Expected podemos comprobar que dentro de un test se tira una excepción. Si le ponemos este atributo a una anotación Test, el test fallará si alcanza el final de la función y no se ha lanzado ninguna ocurrencia de la excepción proporcionada, y es el método que usaremos en caso de querer probar excepciones. Por otro lado, timeout es un parámetro que podemos usar para forzar al test a fallar si supera un tiempo determinado de ejecución.

Duración: 5:57

6 Anotaciones BeforeClass y AfterClass

En este episodio nos centramos en dos anotaciones más: BeforeClass y AfterClass. La primera sirve para ejecutar código antes de cualquier prueba en una clase. AfterClass lo mismo pero después. Ambas se suelen usar típicamente para preparar recursos compartidos que son costosos de inicializar y que, por lo tanto, preferiríamos instanciar una única vez antes de lanzar toda la suite de tests, pero que queremos reutilizar a lo largo de todos los casos de prueba que se ejecutan dentro de una clase, reservando el AfterClass para poder limpiar ese recurso si hace falta. En este vídeo lo vemos dentro de un flujo de ejecución y lo comparamos con Before y After.

Duración: 5:32

7 Pruebas parametrizadas con Parameterized

En las pruebas parametrizadas, podemos conseguir que JUnit repita rápidamente una o varias pruebas unitarias sin tener que repetir la función, mediante el uso de casos de prueba que se proporcionan a través de una anotación. En JUnit 4, el runner Parameterized nos permite etiquetar una clase de tests como que define un método que se usa para exportar la lista de parámetros que luego van a poder ser usados para pasarle a la clase y que componga sus pruebas. En este vídeo hago una demostración de cómo se pueden crear pruebas parametrizadas desde cero, incluyendo el constructor, las anotaciones y los métodos que devuelven el array.

Duración: 7:02

8 Creación de test suites con el runner Suite

Para este último episodio de mi taller de JUnit 4, os explico cómo se pueden correr varias pruebas unitarias, una detrás de otra, por medio del uso de los test suites. Con un test suite podemos agrupar varias clases que contienen pruebas similares, de tal forma que correr la clase que define un test suite provoque que se ejecuten todas las otras clases anidadas de tests, y son una forma de agrupar varias clases que deben ser probadas juntas.

Duración: 5:03