Ejercicios
Este cuestionario aborda las pruebas de mutación como técnica para evaluar la eficacia de una suite de pruebas. Incluye operadores de mutación, mutantes eliminados, supervivientes y equivalentes, cálculo de la puntuación de mutación, mutación débil y fuerte, subsunción, selección de operadores y relación con la cobertura de código.
Responde las preguntas a continuación y revisa la explicación de cada respuesta.
0/12 respondidas
Audio automático activado: las próximas preguntas se leerán al hacer clic en Seguir.
Las pruebas de mutación introducen cambios controlados, llamados mutantes, y comprueban si la suite los detecta. Así se evalúa la capacidad real de las pruebas para revelar fallos.
El cambio sustituye el operador relacional > por >=. Este tipo de mutación ayuda a comprobar si se prueban correctamente los valores límite.
Un mutante sobrevive cuando ninguna prueba distingue su comportamiento del original. Esto puede revelar una carencia en la suite, pero también puede tratarse de un mutante equivalente.
Los equivalentes se excluyen del denominador. La puntuación es 18 dividido entre 18 + 2, es decir, 18/20 = 90 %.
Un mutante equivalente modifica la estructura del código, pero no su comportamiento observable. Por ello, ninguna prueba basada en resultados puede eliminarlo.
La mutación fuerte exige que el estado incorrecto se propague hasta una salida observable. Una diferencia interna inmediata corresponde al criterio de mutación débil.
Se reemplazó el conector lógico de conjunción && por el de disyunción ||. La mutación permite evaluar si las pruebas distinguen ambas condiciones lógicas.
Primero debe descartarse que el mutante sea equivalente. Si es distinguible, se analiza qué entrada activa la diferencia y qué aserción u oráculo puede observarla.
El conjunto de pruebas que elimina A es {T1}, incluido en el conjunto que elimina B, {T1, T2}. Por tanto, A subsume dinámicamente a B y resulta más difícil de eliminar.
La mutación selectiva limita los operadores utilizados para generar menos mutantes, procurando conservar la capacidad de evaluar la suite y reduciendo el coste computacional.
La cobertura confirma qué código se ejecuta, pero no si las pruebas detectan comportamientos incorrectos. La mayor puntuación de mutación de B evidencia una mejor detección de los cambios introducidos.
El efecto de acoplamiento plantea que los fallos complejos suelen estar vinculados a fallos simples. Por ello, una suite capaz de eliminar mutantes simples puede ser eficaz frente a defectos más complejos.
Miles de cursos online en vídeo, ebooks y audiolibros.
Para poner a prueba tus conocimientos durante los cursos en línea
Generado directamente desde la galería de fotos de tu celular y enviado a tu correo electrónico
Descarga nuestra aplicación a través del Código QR o los enlaces a continuación:.
+ 10 millones
estudiantes
Certificado gratuito y
válido con código QR
60 mil ejercicios
gratis
Calificación de 4.8/5
en tiendas de aplicaciones
Cursos gratuitos de
vídeo y audiolibros