Este proyecto es utilizado como proyecto base o plantilla para el desarrollo y a modo de ejemplo para ilustrar algunos aspectos del desarrollo y automatización de pruebas para las asignaturas relacionadas con ingenieria del software, sistemas de información y pruebas de software.
Descargar la última versión - Ver más detalles en el javadoc
Permite ilustrar, entre otros:
Contiene los siguientes paquetes principales:
giis.demo.jdbc
: Repaso de acceso a base de datos con jdbcgiis.demo.tkrun
: Ilustra estructura de proyecto MVC con Swing (TicketRun)giis.demo.tkrun.ut
: Ilustra pruebas con JUnit para TicketRungiis.demo.util
: Diferentes utilidades de uso por parte de los anterioresLa estructura es la estándar de maven:
src/main/java
: Codigo fuente de aplicaciónsrc/test/java
: Pruebas unitariastarget
: Generado con el codigo objeto y reportsEste proyecto requiere un mínimo de Java 8 JDK.
Preparación del proyecto:
<> Code
en esta página) o desde ReleasesUse this template
en esta página)samples-test-dev
por el nombre del nuevo proyecto
(se puede hacer desde el propio repositorio creado) en los ficheros:
.project
: cambiar <name>samples-test-dev</name>
para incluir el nombre del proyectopom.xml
: cambiar <artifactId>samples-test-dev</artifactId>
para incluir el nombre del proyectomvn install
, incluye generación del Javadocmvn test
, todas las pruebas: mvn verify
mvn install -DskipTests=true
, genera todos los jar incluyendo javadocsrc/main/test
o el programa principal (aplicación swing)
en la clase giis.demo.util.SwingMain
La instalacion anterior compilará, ejecutará pruebas y dispondrá de los reports en carpetas dentro de target
:
site/testapidocs/index.html
: javadoc del proyectosite/surefire-report.html
: report de las pruebas unitarias (ut)site/junit*
: report de todas las pruebas con el formato que genera junitsite/jacoco-ut
: reports de cobertura de códigoEste proyecto está configurado con los correspondientes scripts de Dependabot (para actualización de versiones de dependencias) y GitHub actions (para realizar acciones automáticas cuando se realiza un pull request hacia main o un push de una rama). A continuación se describen y se indican las posibles personalizaciones a realizar:
.github/workflows/test.yml
: Ejecuta automáticamente un build y todas las pruebas unitarias.
Aunque se puede eliminar o desactivar. Si se mantiene,
en el caso de que no se tengan pruebas unitarias, modificarlo para que compile la aplicación de la siguiente forma:
verify
por compile
en la acción run: mvn verify ...
- name: Publish surefire test report
.github/workflows/pages.yml
: Exporta el javadoc de la aplicación a GitHub pages, e indiará fallo
si no se ha configurado el repositorio para ello, por lo que se puede eliminar..github/dependabot.yml
: Permite que Dependabot cree una pull request cuando hay alguna dependencia
que precisa actualización. Se recomienda mantenerlo.