Resumen:
A menudo, resulta difícil determinar si la salida de un programa es correcta o no. Esto es lo que se conoce como el «problema del oráculo», y supone un reto enorme para la detección de errores en el software. Las pruebas metamórficas abordan este problema desde una perspectiva original: en lugar de analizar las salidas del programa de forma individual, las pruebas metamórficas explotan las relaciones existentes entre las entradas y salidas de dos o más ejecuciones del programa. Dos décadas después de su introducción, las pruebas metamórficas se han convertido en una técnica madura y ampliamente aceptada, con aplicaciones en motores de búsqueda (ej. Google), compiladores (ej. GCC), APIs Web (ej. Spotify), sistemas de conducción autónoma (ej. Apollo), traductores (ej. Google Translate) o sistemas de telemetría (ej. NASA), entre muchos otros. En este seminario repasaremos los aspectos básicos de la técnica, su evolución, casos de éxito y algunos de los retos futuros.