MyLeoNes™

Probar programas — Informática, 7–10

Un programa puede funcionar sin bloquearse y aun así dar una respuesta equivocada. Probar significa usar ejemplos pensados, incluidos casos poco habituales, para comprobar si se comporta como debe antes de que alguien dependa de él.

Hacer preguntas al programa

Probar es como comprobar una linterna con pilas nuevas antes de salir. Das una entrada al programa, predices el resultado, lo ejecutas y comparas lo ocurrido con lo que debería ocurrir. Una prueba que sale bien es útil, pero no demuestra que todos los casos sean correctos.

¿Por qué probar?

Los programas reciben muchas entradas posibles, y una persona puede entender mal una regla u olvidar un caso límite. Una prueba encuentra esos problemas mientras el programa aún se está creando, cuando es más fácil cambiarlo. No se prueban solo programas que parecen rotos: una respuesta silenciosa pero incorrecta puede ser más peligrosa que un bloqueo.

Probar una regla de puntuación

Un juego dice que un jugador recibe 3 puntos por cada estrella. Primero, predice una prueba con 0 estrellas: la puntuación debería ser 0. Después, prueba con 2 estrellas: 2 × 3 da 6. Luego prueba con 10: la respuesta debería ser 30. Si el programa dice 9 con 2 estrellas, hay que revisar la regla o el código.

Si funciona, debe estar bien

Un programa que se abre y responde puede parecer terminado, así que es normal confiar en él. Pero ejecutarlo solo demuestra que ha recorrido ese camino; no comprueba todas las entradas o decisiones. Prueba valores normales, cero, el menor y el mayor valor permitido, y algo inesperado si las reglas dicen que debe aceptarse.

Probar en la vida real

Antes de confiar en una aplicación del tiempo, una máquina de billetes o un horario escolar, sus creadores prueban muchas situaciones. Pueden comprobar un día muy caluroso, un tren lleno o una fecha de vacaciones. También pruebas cuando haces una receta nueva o revisas un modelo de puente: comparas lo esperado con lo que ocurre.

Sigue explorando

Otros idiomas

Cargando MyLeoNes™…