Repaso
English
TestingAvanzadoTST-11

¿Qué hace el property-based testing (por ejemplo Hypothesis)?

Opciones

  1. Prueba solo las propiedades de cada objeto
  2. Genera entradas aleatorias para comprobar invariantes (Opción correcta)
  3. Mide cuánta cobertura de código tienen los tests
  4. Graba tráfico HTTP para reproducirlo

Respuesta

Genera muchas entradas aleatorias para comprobar que los invariantes siempre se cumplen, y reduce los fallos a un ejemplo mínimo

Por qué

En lugar de escribir ejemplos uno a uno, describes una regla que debe cumplirse SIEMPRE, y la librería prueba cientos de entradas generadas, incluidas las más difíciles (vacías, enormes, unicode, negativas).

Regla de ejemplo: ordenar dos veces da el mismo resultado que ordenar una, y conserva la longitud.

Cuando encuentra un fallo, lo reduce a la entrada más pequeña que sigue fallando, lo que facilita la depuración.

Recuerda

Property-based = probar reglas con muchas entradas generadas.

Términos clave

Practica esta pregunta en Repaso