/
[HDP-050] JUnit con Java. Test Driven Development

[HDP-050] JUnit con Java. Test Driven Development

Este curso enseña a realizar pruebas unitarias, de integración y funcionales, aplicando metodologías ágiles y TDD. Incluye el uso de herramientas como JUnit, Mockito y Selenium para asegurar la calidad del software, cubrir pruebas, y mejorar el rendimiento mediante pruebas automatizadas y regresión.

Duración:                     20 horas

Perfil:                            Básico

Dirigido a

Esta acción formativa va dirigida a programadores, analistas, ingenieros de QA y jefes de proyecto que deseen mejorar sus habilidades en la creación de software de calidad utilizando metodologías ágiles, TDD (Test Driven Development) y BDD (Behavior Driven Development), implementando prácticas de pruebas automáticas.

Requisitos previos 

Los alumnos necesitarán tener experiencia con el lenguaje de programación Java, así como una idea básica del patrón MVC para poder comprender la materia del curso con éxito. 

Objetivos

  • Entender la importancia de las pruebas en el desarrollo ágil y las prácticas esenciales de TDD (Test Driven Development).
  • Aplicar herramientas de pruebas unitarias como JUnit, DBUnit y Mockito para validar el comportamiento del software.
  • Dominar técnicas de pruebas funcionales y de rendimiento mediante Selenium y JMeter.
  • Asegurar la cobertura de código y la calidad del software utilizando herramientas como EclEmma.
  • Implementar pruebas de aceptación y regresión para garantizar la estabilidad del producto.


Contenido

  1. Introducción y Fundamentos de Testing
    1. Metodologías ágiles: Principios y beneficios
    2. Prácticas esenciales en Extreme Programming (XP)
    3. Introducción al Test Driven Development (TDD)
    4. Pruebas de caja negra y caja blanca: Conceptos y diferencias
    5. Estrategias para validar el funcionamiento del software
    6. Evaluación de cualidades no funcionales del software
    7. Importancia de la calidad y la prevención de errores en el desarrollo
    8. Limitaciones en la cobertura total de pruebas
    9. Impacto de los requerimientos y casos de uso en las pruebas
  2. Pruebas Unitarias y de Integración
    1. JUnit:
      1. Creación de tests y suites
      2. Uso de anotaciones en JUnit
      3. Aserciones y validación de resultados con Hamcrest
      4. Pruebas de excepciones y manejo de errores
      5. Restricciones
      6. Tests paramétricos y teorías
      7. Análisis y evaluación de resultados
    2. DBUnit:
      1. Configuración de escenarios de BD
      2. Verificación del estado de la BD tras los tests
    3.  HtmlUnit / HttpUnit:
      1. Envío de peticiones y simulación de navegación
      2. Gestión de hipervínculos y formularios
      3. Manejo de marcos y ventanas
    4. Mocks y Simulaciones:
      1. Uso de Mockito para crear mocks, fakes y stubs
    5. Cobertura de los tests:
      1. Uso de EclEmma para análisis de cobertura
      2. Técnicas para mejorar la cobertura de los tests
  3. Pruebas Funcionales
    1.  Uso de Selenium IDE para pruebas automáticas
    2. Selenium RC para pruebas avanzadas de interfaces
  4. Pruebas de Rendimiento
    1. JMeter:
      1. Configuración de grupos de hilos
      2. Creación de elementos y planes de prueba
  5. Pruebas de Aceptación (ATDD/BDD) y Regresión
    1. Implementación de pruebas de aceptación con Concordion
    2. Técnicas para realizar pruebas de regresión efectivas
  6. Calidad del Código y Buenas Prácticas



Documentación Recomendada

JUnit in Action, Third Edition
Cătălin Tudose
November 2020 | 560 pages

https://www.manning.com/books/junit-in-action-third-edition

Related pages