Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Duración:                     20 horas

Perfil:                            Experto

Dirigido a

Esta acción formativa va dirigida a Programadores, Analistas y Jefes de proyecto.

Requisitos previos 

Los alumnos necesitarán tener experiencia con el lenguaje de programación Java o C# previos para poder comprender la materia del curso con éxito. 

Objetivos

Conocer y aplicar los diferentes metodologías de desarrollo conducido de test o por comportamiento durante el ciclo de vida de desarrollo de una aplicación. Saber aplicar conceptos de programación extrema en sus proyectos o utilizar metodologías ágiles para sus desarrollos.


Contenido

  1. Conceptos previos
    1. Introducción a las metodologías ágiles
    2. Prácticas esenciales en XP
    3. Test Driven Development
    4. Pruebas de caja negra y caja blanca
    5. Probando que funcione el software
    6. Probando las cualidades del software
    7. Calidad o ¿Por qué no se puede codificar sin errores?
    8. Imposible probar todo
    9. Los requerimientos, casos de uso y su impacto en pruebas
    10. Principios de diseño de software
      1. Diseño simple
      2. Dile, no preguntes
      3. SOLID
  1. Un vistazo a la gestión de pruebas
    1. ¿Quién debe hacer, Qué, Cuándo?
    2. Roles y responsabilidades
    3. El esfuerzo de prueba y el factor de certeza
  2. Métodos de prueba
    1. MITs Most Important Test
    2. MIM Most Important Metrics
  3. Inventario de pruebas
  4. Análisis de Datos
    1. Valores frontera
    2. Como reducir los datos
  5. Análisis de rutas y bifurcaciones
    1. ¿Qué es la complejidad ciclomatica?
    2. Divide y vencerás
    3. De casos de uso a casos de prueba
  6. Metodología Test Driven Development (TDD)
    1. Requisitos
    2. Ciclo de desarrollo conducido por pruebas
    3. Ventajas
  7. Junit
    1. Tests y Suites
    2. Anotaciones
    3. Asertos
      1. Hamcrest: Libreria para predicados
    4. Testeando excepciones
    5. Restricciones Temporales
    6. Test paramétricos
    7. Teorías
  8. Uso de Mocks, Fakes y Stubs
    1. Mockito
  9. Cobertura de las pruebas (Code Coverage)
    1. EclEmma
    2. Cobertura
  10. Calidad del código
  11. Refactorizaciones
    1. Principios de refactorización
    2. Malos olores en el código
    3. Construcción de pruebas
    4. Hacia un catálogo de Refactorizaciones
    5. Composición de los métodos
    6. Traslado de funciones entre objetos
    7. Organizando los datos
    8. La simplificación de las expresiones condicionales
    9. Simplificación de la realización de Métodos
    10. Tratar con la generalización
    11. Grandes Refactorizaciones
    12. Reutilización
    13. Herramientas de refactorización: Eclipse
  12. Pruebas de Aceptación (ATDD/BDD)
    1. Definiendo los requisitos de su proyecto
    2. Configurar su entorno para pruebas de aplicaciones web
    3. Escribe tus historias en un lenguaje fácil de usar
    4. La anatomía de un escenario textual
    5. Escribir y anotar los métodos
    6. Pasando parámetros a método
    7. Compartir datos entre métodos
    8. Organizando tus escenarios
    9. Configuración y Limpieza
  13. Herramientas BDD
    1. Concordion
    2. Cucumber
    3. Fitnesse


Documentación Recomendada

Mastering Software Testing with JUnit 5
Boni García

Octubre 2017| 350 páginas

ISBN: 9781787285736