Arquisoft/InciManager_e3b

Segregar pruebas unitarias de las pruebas de integración

Open

#56 opened on May 22, 2018

 (3 comments) (0 reactions) (1 assignee)Java (4 forks)auto 404
IntegraciónTestbughelp wanted

Repository metrics

Stars
 (0 stars)
PR merge metrics
 (PR metrics pending)

Description

Las pruebas unitarias ejecutadas en la fase mvn test (Maven Surefire Plugin) están pensadas para ejecutarse de forma autónoma sin necesidad de depender de servicios externos como PostgreSQL, Apache Zookeeper, Apache Kafka u el resto de módulos. Por ese motivo deben hacer uso de los mockups o fixtures necesarios como por ejemplo la utilización de bases de datos en memoria sin necesidad de lanzar dichos servicios.

A su vez las pruebas de integración (entre las que se incluyen las de aceptación y rendimiento), ejecutadas en la fase mvn verify (Maven Failsafe Plugin) han sido configuradas para lanzar automáticamente la ejecución de los contenedores (mvn pre-integration-test) y una vez ejecutas exitosamente o no las pruebas, detener también automáticamente los contenedores implicados (mvn post-integration-test).

Dado que la fase de construcción del contenedor (mvn docker:build) precisa que se ejecute previamente la fase de empaquetado (mvn package) y esta a su vez depende de que se ejecuten correctamente las pruebas unitarias (mvn test), dichas pruebas no pueden depender de un contenedor que aun no se ha construido (dependencia cruzada).

Hasta que se solucione este problema, se han desactivado temporalmente la ejecución por defecto de todas las pruebas.

Referencias:

Ver también: Issue: #20, Arquisoft/Inci_e3b_modules#5

Contributor guide