2.13.14 SE/Prácticas Avanzadas de Pruebas
Temas:
Core
- Desarrollo de pruebas
- Desarrollo guiado por pruebas
- Pruebas orientadas a objetos, uso de mocks e inyección de dependencias
- Técnicas de prueba de caja opaca (anteriormente, caja negra) y caja transparente (anteriormente, caja blanca)
- Herramientas de prueba, incluyendo cobertura de código, análisis estático y fuzzing
- Verificación y validación en el ciclo de desarrollo
- Revisiones de código
- Automatización de pruebas, incluyendo automatización de herramientas
- Pruebas pre-commit y post-commit
- Compensaciones entre cobertura de pruebas y rendimiento/latencia de las pruebas
- Seguimiento y priorización de defectos: reproducibilidad de los defectos reportados
- Desafíos de verificación y validación específicos del dominio
- Pruebas de rendimiento y evaluación comparativa (benchmarking)
- Asincronía, paralelismo y concurrencia
- Crítico para la seguridad (safety-critical)
- Numérico
Aprendizaje esperado (Learning Outcomes):
Core:
- Identificar los principios fundamentales de los métodos de desarrollo guiado por pruebas y explicar el papel de las pruebas automatizadas en estos métodos [Analizar]
- Discutir problemas relacionados con las pruebas de software orientado a objetos [Debatir]
- Describir el uso de mocks y la inyección de dependencias y su aplicación [Describir]
- Realizar, como parte de una actividad en equipo, una revisión de código de un segmento de código de tamaño mediano [Evaluar]
- Describir el papel que las herramientas pueden desempeñar en la validación del software [Describir]
- Automatizar las pruebas en un proyecto de software pequeño [Diseñar]
- Explicar los roles, pros y contras de las pruebas pre-commit y post-commit [Explicar]
- Discutir las compensaciones entre la cobertura de pruebas y el rendimiento/latencia de las pruebas y cómo esto puede afectar la verificación [Debatir]
- Usar una herramienta de seguimiento de defectos para gestionar defectos de software en un proyecto de software pequeño [Usar]
- Discutir las limitaciones de las pruebas en ciertos dominios [Debatir]
Generado por Ernesto Cuadros-Vargas , Sociedad Peruana de Computación-Peru, basado en el modelo de la Computing Curricula de IEEE-CS/ACM