Skip to content

TaskingWorld/curso-tdd

 
 

Repository files navigation

Curso de programación para QA -2ª edición

Build Status 💟 CircleCI DevQAGRX

En este curso trataremos de aprender las técnicas necesarias para tabajar en un entorno de desarrollo, para aplicaciones nativas en la nube o cualquier otra cosas. Será un curso conceptual, pero también práctico donde aprenderemos a desarrollar diferentes técnicas en cualquier lenguaje de programación y diferentes microframeworks.

Cada sesión será una parte teórica y una parte práctica; durante el curso se irá elaborando un proyecto en equipo de 2 o tres personas. Cada hito del proyecto se tendrá que entregar (y se evaluará de forma más o menos automática) al final de la misma. Cuando se completen todas las sesiones y objetivos generaré un badge para el repo donde se haya cumplido todo (y dependiendo del nivel en el que se haya alcanzado, se hará también una recomendación en LinkedIn o donde se solicite).

Planificación del curso

  • Sesión 1: Historias de usuario, requisitos funcionales, personas (historias de usuario), desarrollo por capas y todo lo que necesitamos para empezar.

    • Uso de issues/hitos en el desarrollo basado en test.
    • Material.
  • Sesión 2: Cómo crear las historias de usuario, comenzar la aplicación.

    • Documentación de las historias de usuario y traslado a issues.
    • Material.
  • Sesión 3: Task runners y cómo usarlos.

    • Diferentes tipos de task runners y por qué son útiles para todo.
    • Material.
  • Sesión 4: Preparando tu aplicación para testear: separation of concerns, inversión de dependencias, diseño.

    • Cómo asegurarnos desde el diseño de que se cumplen las historias de usuario.
    • Material.
  • Sesión 5: objetos de test, aserciones, marcos de pruebas, fases del test.

  • Qué es la integración continua y cómo usarla para ejecutar los tests automáticamente.

    • Hooks de git y cómo usarlos para testear todo el tiempo.
    • Diferentes sistemas de integración continua: Travis, GitHub Actions...
    • Acelerando con Dockerfiles.
    • Material.
  • Tests de cobertura y por qué son importantes.

  • Tests funcionales/de integración

    • Cómo testear microservicios y sistemas basados en tareas.
    • BDD y algunos frameworks.
    • Mocks.
    • Material.
  • Tests adicionales

    • Tests de front-end.
    • Tests de regresión.
    • Material.

Proyectos inicialmente propuestos

Se puede usar esta plantilla para los proyectos.

Lugar

Aula de usos múltiples, 5ª planta de la ETSIIT

Clases

Presenciales, lunes 2 a viernes 6 de marzo, jueves y viernes 12 y 13 de marzo, 13:30 a 15:00.

Título

A los que superen todos los hitos y actividades planteados en el curso se les hará una recomendación en LinkedIn por parte del profesor.

Inscripción

Añade tu nick de GitHub y perfil de LinkedIn a esta tabla mediante un pull request. La inscripción es gratuita y abierta a quien lo desee, pero los asistentes tendrán que traer su propio portátil y conexión a Internet (si no tienen acceso al WiFi de la universidad).

Proyectos realizados

Los proyectos en elaboración se enlazarán en en esta página.

Instrucciones de uso

make y pandoc deben estar presentes para generar los PDFs.

make

o

make doc

generará los proyectos en un solo PDF.

About

Curso de desarrollo para asegurar la calidad del software

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Raku 47.3%
  • Perl 36.6%
  • Python 12.9%
  • Dockerfile 2.4%
  • Makefile 0.8%