/DAW1-ED-Pruebas-Ejemplo1

Pruebas unitarias en Java con JUnit4 (Gradle)

Primary LanguageJavaGNU General Public License v3.0GPL-3.0

DAW1-ED-Pruebas-Ejemplo1

Build Status SonarCloud

Build Status codecov Sonar

JDK 8 Gradle JUnit 4

GitHub issues GitHub forks GitHub stars GitHub license HitCount

Pruebas unitarias en Java con JUnit4 (Gradle)

Código a testear (pruebas de unidad)

El código de la aplicación lo componen 3 clases:

  • Main (Clase principal)
  • Aritmética
  • Utilidades

La clase Main es la que hace uso de los métodos definidos en Aritmética y Utilidades.

Dentro de Aritmética tenemos 4 métodos estáticos:

  • int suma (int num1, int num2)
  • int resta (int num1, int num2)
  • int multiplicacion (int num1, int num2)
  • double division (int num1, int num2)

Dentro de Utilidades tenemos 1 métodos estático:

  • int [] ordenar (int num1, int num2, int num3) (para ordenar un array de 3 enteros)

Requisitos

Es necesario el uso del sistema de construcción (build) gradle. Si trabajamos con NetBeans deberemos instalar el plugin para gradle.

Asimismo, en el archivo build.gradle añadiremos la línea apply plugin: "jacoco" (Java Code Coverage), para poder realizar cobertura de código.

Clases de prueba

Las clases de prueba son:

  • MainTest
  • AritméticaTest
  • UtilidadesTest

Servicios web utilizados

Se utilizan 3 servicios web:

Es importante tener un archivo .travis.yml adecuado. Aquí tienes el utilizado en este proyecto:

Análisis estático de código con SonarQube

Para realizar un análisis de la calidad del código (bugs, vulnerabilidades, code smells y demás) nos hemos registrado con nuestra cuenta de GitHub en https://sonarcloud.io, hemos generado un token y hemos añadido este proyecto.

Al principio del archivo build.gradle debemos escribir las líneas:

plugins {
  id "org.sonarqube" version "2.6"
}

Para realizar el análisis, ejecutamos localmente la sentencia:

./gradlew sonarqube \
  -Dsonar.organization=jamj2000-github \
  -Dsonar.host.url=https://sonarcloud.io \
  -Dsonar.login=<token>

NOTA: Debemos sustituir <token> por el generado previamente.

Análisis de calidad del código

Análisis estático de código con FindBugs en Netbeans

Una forma más sencilla de realizar análisis estático de código es utilizar el plugin FindBugs de Netbeans.

Deberemos primeramente instalar dicho plugin en el caso de no tenerlo ya instalado.

Para ello seguimos los siguientes pasos: Herramientas -> Plugins

Herramientas -> Plugins

En la pestaña Plugins disponibles buscamos findbugs

Buscando plugin FindBugs

Si no lo tenemos instalado, nos aparecerá en la parte izquierda para instalarlo. Lo marcamos y pulsamos en instalar. Después seguimos el asistente.

Pulsar en siguiente

Una vez instalado el plugin, ya podremos hacer uso de él para realizar análisis estático de código.

Para ello pulsamos en Fuente -> Inspect.

En Scope podemos escoger entre cuatro ámbitos, de más general a más específico:

  • Open Projects
  • Current Project
  • Current Package
  • Current File

Scope

En Configuration podemos escoger entre distintas opciones. Seleccionaremos All Analyzers.

All Analizers

A continuación se muestra Netbeans con la pestaña Inspector para la clase AritmeticaTest.

Clase AritmeticaTest

A continuación se muestra Netbeans con la pestaña Inspector para todos los proyectos abiertos.

Todos los proyectos abiertos