All Classes and Interfaces
Class
Description
Excepcion producida por la aplicacion antes situaciones que no deberian ocurrir pero que son controladas y
por tanto, la aplicacion se puede recuperar (validacion de datos, prerequisitos que no se cumplen, etc)
Clientes de la entidad bancaria, que seran mapeados a la tabla Cliente.
Logica de negocio: Spring autogenera todos los DAOs y otros metodos del repositorio, aqui solo se
implementan los metodos adicionales que se necesiten.
Obtiene datos, descuentos y promociones de clientes
Usada para evitar problemas con la configuracion al tener dos paquetes independientes de pruebas con
Cucumber (UT e IT)
Punto de entrada que arranca la aplicacion en el puerto 8080: Solamente personaliza la configuracion del
nombre de los paquetes donde se tienen los repositorios y las entidades (para simplificar el ejemplo, en
este caso se ponen bajo el mismo paquete)
Define el mapping (glue) de los pasos para el test descrito en Gherkin (descuento-database.story).
Cada una de las filas que muestran al usuario la lista de clientes y descuentos
Parametros del formulario que son enviados al controlador desde la vista de Descuentos
Define el mapping (glue) como en DescuentoDatabaseSteps pero con un contexto web de Spring.
Esta clase representa el Page Object inicial, que habitualmente seria la
pagina de login, en este caso es una pagina estatica.
Ejemplo de Page Object del formulario principal usando la implementacion Page Factory.
Ejemplo de Page Object del formulario principal.
Controlador REST para obtener los descuentos bajo una url /api/decuentos?
Controlador web para la funcionalidad de visualizacion descuentos de clientes.
Api cliente para acceder al microservicio de marketing (obtendion de promociones)
Cada una de las filas que muestran al usuario la lista de clientes y descuentos
Utilidades varias para uso en los tests con Selenium
Pruebas de la interaccion del usuario con la aplicacion web del ejemplo de descuentos a clientes, misma
implementacion que TestDescuentoPageObjects pero utilizando PageFactory
NOTA: el codigo duplicado se mantiene intencionadamente para tener ejemplos independientes en un unico
fichero
Pruebas de la interaccion del usuario con la aplicacion web del ejemplo de descuentos a clientes, misma
implementacion que TestDescuentoSelenium pero utilizando Page Objects
NOTA: el codigo duplicado se mantiene intencionadamente para tener ejemplos independientes en un unico
fichero
Pruebas del ejemplo de informe de descuentos de clientes leidos desde la base de datos (Problemas 3b y 3c):
Ilustra la configuracion necesaria para utilizar un runner diferente al de Spring Boot (en este caso se
trata de JUnitParamsRunner para ejecucion de pruebas parametrizadas).
Ilustra las principales al usar JUnit 4 en vez de JUnit 5/6.
Pruebas del ejemplo de informe de descuentos de clientes leidos desde la base de datos (Problemas 3b y 3c):
Ilustra la configuracion para pruebas unitarias de repositorios en Spring Boot.
Pruebas del ejemplo de informe de descuentos de clientes leidos desde la base de datos (Problemas 3b y 3c):
Ilustra la configuracion para pruebas de un servicio rest en Spring Boot (implementado en
DescuentoRestController.java).
Ejecutor de los tests cucumber de pruebas unitarias (UT) para DataJpaTest.
Las mismas pruebas que TestDescuentoSelenium (quitando los somentarios) pero usando un componente (selema)
que gestiona el driver de selenium, la grabacion de videos con selenoid, imagenes de los test que fallan, etc:
https://github.com/javiertuya/selema
Pruebas de la interaccion del usuario con la aplicacion web del ejemplo de descuentos a clientes (Problema
3d) utilizando Selenium (https://www.seleniumhq.org/): Ilustra la configuracion para pruebas de integracion
con el interfaz web de usuario en Spring Boot y el proceso basico de ejecucion y comparacion de resultados
con Selenium.
Ilustra la configuracion para pruebas unitarias de un controlador web utilizando mocks para el resto del
sistema.
Prueba web de Selenium fuera del entorno de Spring Boot.
Ejemplo de prueba del API fuera del entorno de Spring Boot con Zerocode
(https://github.com/authorjapps/zerocode) que permite especificar escenarios de prueba en Json y
ejecutarlos.
Prueba de un servicio con una implementacion incompleta: Ilustra el uso de Mocks y la carga datos de prueba
mediante ficheros externos.
Utilidades varias con metodos generales de serializacion, conversion a csv y conversion de fechas