> For the complete documentation index, see [llms.txt](https://elguerre.gitbook.io/de0an/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://elguerre.gitbook.io/de0an/capitulo-6-la-construccion.-testeando-desde-el-principio/que-hemos-aprendido.md).

# ¿Qué hemos aprendido?

Resumimos a continuación los puntos más importantes a modo de Checklist para recordar lo aprendido. De la misma manera, un listado de las referencias más importantes y usuales nos ayudarán a extender y profundizar en ese aprendizaje.

**Tabla 3.- Checklist sobre la puesta en marcha**

| La Checklist                                                                                                                                                                                                                                        |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <img src="https://240651724-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfrvHBNivOTy0fVKROgzo%2Fuploads%2Fgit-blob-eeac6be43a27a98103366b9271063e131e9368ee%2Fchecklist.png?alt=media" alt="Checklist" data-size="original"> | <ol><li><strong>La necesidad de hacer pruebas.</strong> Ahorro y Eficiencia<strong>.</strong></li><li><strong>Diferentes tipos de pruebas.</strong></li><li><strong>Métricas y análisis de código</strong></li><li><strong>Cobertura de código</strong></li><li><p><strong>Creación de Mocks.</strong></p><ol><li>Manualmente con anónimos y delegados.</li><li>Automáticamente con Fakes.</li></ol></li><li><strong>Pruebas Unitarias Inteligentes.</strong> Analizan el código y generan por nosotros pruebas unitarias de manera automática. ¡Ahorramos en esfuerzo!</li><li><strong>Pruebas de UI Codificadas.</strong> Una clase “BaseUITest” ayuda a la creación de pruebas.</li><li><strong>Un plan de pruebas “inevitable”.</strong> Debemos crearlo en la fase de diseño una vez conocidos los requisitos de la aplicación. Continuamos su evolución a medida que avanzamos<strong>.</strong></li><li><strong>Configuración de Builds.</strong> La Integración Continua y la ejecución automática de pruebas garantiza la calidad de la aplicación.</li></ol> |

**Tabla 4.- Referencias sobre la puesta en marcha**

| Las Referencias                                                                                                                                                                                                                                        |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <img src="https://240651724-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfrvHBNivOTy0fVKROgzo%2Fuploads%2Fgit-blob-263749394d903cb2298b3e876750f66464806d9b%2Freferences.png?alt=media" alt="Referencias" data-size="original"> | <ul><li>Tipos de pruebas: <a href="http://es.wikipedia.org/wiki/Pruebas_de_software"><http://es.wikipedia.org/wiki/Pruebas_de_software></a></li><li>Pruebas Unitarias Inteligentes: <a href="https://msdn.microsoft.com/es-es/library/dn823749(v=vs.140).aspx"><https://msdn.microsoft.com/es-es/library/dn823749(v=vs.140).aspx></a></li><li>Creación y definición de un plan de pruebas: <a href="http://msdn.microsoft.com/es-es/library/vstudio/dd286583(v=vs.110).aspx"><http://msdn.microsoft.com/es-es/library/vstudio/dd286583(v=vs.110).aspx></a></li></ul> |

## Notas

1. Integración continua (o *continuous integration*) consiste en hacer compilaciones y ejecución de pruebas automáticas de un proyecto lo más a menudo posible para así poder detectar fallos cuanto antes.
2. Área: Agrupación de elementos de trabajo (o work items) en categorías útiles lógicas, físicas o funcionales.
3. Iteración: Agrupación de elementos de trabajo (o work items) en hitos o ciclos.

   Tanto las áreas como las iteraciones permiten controlar el acceso a las mismas, así como la creación rápida de consultas e informes sobre el progreso del trabajo.
