Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/javiertuya/samples-test-java
Ejemplos sobre pruebas en entorno Java con swing y MVC
https://github.com/javiertuya/samples-test-java
bdd java jbehave junit maven mvc swing testing
Last synced: about 1 month ago
JSON representation
Ejemplos sobre pruebas en entorno Java con swing y MVC
- Host: GitHub
- URL: https://github.com/javiertuya/samples-test-java
- Owner: javiertuya
- License: mit
- Created: 2022-08-23T09:56:17.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-09T05:55:23.000Z (4 months ago)
- Last Synced: 2024-09-09T06:42:35.541Z (4 months ago)
- Topics: bdd, java, jbehave, junit, maven, mvc, swing, testing
- Language: Java
- Homepage:
- Size: 152 KB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
[![Build Status](https://github.com/javiertuya/samples-test-java/actions/workflows/test.yml/badge.svg)](https://github.com/javiertuya/samples-test-java/actions/workflows/test.yml)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=my%3Asamples-test-java&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=my%3Asamples-test-java)
[![Javadoc](https://img.shields.io/badge/%20-javadoc-blue)](https://javiertuya.github.io/samples-test-java/)# samples-test-java
Este proyecto es utilizado 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.Existe una variante simplificada de este proyecto para usar como plantilla en las prácticas de estas asignaturas:
https://github.com/javiertuya/samples-test-dev[Descargar la última versión](https://github.com/javiertuya/samples-test-java/releases) -
[Ver más detalles en el javadoc](https://javiertuya.github.io/samples-test-java/)## Contenido
Permite ilustrar, entre otros:
- Repaso del uso de JDBC para acceder a bases de datos
- Un conjunto de utilidades para simplificar el acceso a base de datos y el uso de tablas en Swing
- Implementación de MVC con Swing
- Automatización de pruebas unitarias con varias versiones de JUnit
- Automatización de pruebas de un interfaz de usuario AssertJ Swing
- Automatización de pruebas BDD con JBehave (unitarias y de interfaz de usuario)
- Estructura y configuración de un proyecto Maven
con separacion de pruebas unitarias (UT) y de integración (IT) y diferentes reportsContiene los siguientes paquetes principales:
- `giis.demo.jdbc`: Repaso de acceso a base de datos con jdbc
- `giis.demo.tkrun`: Ilustra estructura de proyecto MVC con Swing (TicketRun)
- `giis.demo.tkrun.ut`: Ilustra pruebas con JUnit para TicketRun
- `giis.demo.tkrun.it`: Ilustra pruebas con AssertJ Swing para TicketRun
- `giis.demo.descuento.*`: Ilustra lo anterior para Descuento, más pruebas BDD con JBehave
- `giis.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ón
- `src/test/java`: Pruebas unitarias
- `src/it/java`: Pruebas de integración con el interfaz de usuario
- `target`: Generado con el codigo objeto y reports## Requisitos e Instalación
- [Descargar la última versión](https://github.com/javiertuya/samples-test-java/releases)
y disponer al menos de Java 8 JDK- Desde línea de comandos con [Apache Maven](https://maven.apache.org/download.cgi):
- Asegurarse de que JAVA_HOME apunta a un JDK y no JRE
- Ejecución completa: `mvn install`, incluye generación del Javadoc
- Solo pruebas unitarias: `mvn test`, todas las pruebas: `mvn verify`
- Ejecución sin tests: `mvn install -DskipTests=true`, genera todos los jar incluyendo javadoc- Desde Eclipse con M2Eclipse instalado (las distribuciones recientes ya lo incluyen).
Desde la raiz del proyecto:
- Asegurarse de que esta configurado JDK: Desde build path, editar JRE System Library y en Environment
comprobar que JavaSE-1.8 apunta a un JDK en vez de un JRE
- *Maven->Update Project*: Actualiza todas las dependencias y permite usar el proyecto como si hubiera sido creado desde el propio Eclipse
- *Run As->Maven install*: Ejecuta este (o otros) comandos maven desde EclipsePrograma principal (aplicaciones swing): `giis.demo.util.SwingMain`
## Reports
La instalacion anterior compilará, ejecutará pruebas y dispondrá de los reports en carpetas dentro de `target`:
- `reports/testapidocs/index.html`: javadoc del proyecto
- `site/surefire-report.html`: report de las pruebas unitarias (ut)
- `site/failsafe-report.html`: report de las pruebas del interfaz de usuario (it)
- `site/junit*`: report consolidado de todas las pruebas con el formato que genera junit
- `site/jacoco*`: reports de cobertura de código consolidado, y separado para ut e it
- `jbehave`: reports estandar de jbehave