Saltar al contenido
DevPedia

Testing

Principios, estrategias y prácticas para evaluar el comportamiento y la calidad del software.

13 guías

Fundamentos

  1. ¿Qué es el testing?

    Qué podemos conocer sobre un sistema a través de las pruebas, qué límites tienen y cómo ayudan a evaluar su calidad.

Tests unitarios

  1. ¿Qué es un test unitario?

    Qué caracteriza a un test unitario, qué significa aislar una unidad y cómo evitar que la prueba dependa demasiado de la implementación.

  2. F.I.R.S.T.: principios para tests unitarios

    Cinco criterios para escribir tests rápidos, independientes y repetibles, con resultados claros y creados en el momento adecuado.

  3. AAA: cómo estructurar un test

    Preparar el escenario, ejecutar una acción y verificar el resultado. Cómo usar Arrange, Act, Assert para escribir tests fáciles de entender.

  4. Dobles de test: dummy, stub, spy, mock y fake

    Qué función cumple cada tipo de doble y cómo elegir el adecuado para controlar las dependencias de una prueba.

  5. Test-Driven Development (TDD)

    Cómo el ciclo de escribir un test, hacerlo pasar y refactorizar guía la implementación y ayuda a revisar el diseño.

Niveles de testing

  1. Testing de integración

    Qué problemas aparecen al conectar componentes y cómo probar esas interacciones más allá de los tests unitarios.

  2. Testing de sistema

    Cómo evaluar el comportamiento del sistema completo y en qué se diferencia de probar la integración entre componentes.

  3. Pruebas de aceptación de usuario (UAT)

    Cumplir una especificación no garantiza que el sistema responda a las necesidades del negocio. Cómo evaluar su aceptación y quiénes participan.

Testing no funcional

  1. Testing de performance

    Cómo evaluar tiempos de respuesta y capacidad bajo distintas cargas, sin depender solo de los promedios.

  2. Testing de seguridad

    Cómo evaluar controles de acceso y detectar vulnerabilidades con pruebas y análisis estático y dinámico. Qué aporta cada enfoque.

  3. Testing de usabilidad y su relación con UX

    Cómo evaluar si las personas pueden entender y usar el sistema, y en qué se diferencia de otras actividades de investigación de UX.

  4. Testing de compatibilidad

    Cómo verificar que el software funciona en los entornos previstos y que sus cambios mantienen la compatibilidad necesaria con versiones anteriores.

Buscá por concepto, patrón o práctica.