ISTQB Foundation (CTFL v4.0) Examen de práctica #9 — Preguntas y respuestas

Todas las preguntas de este examen de práctica, con la respuesta correcta marcada y una justificación escrita para cada opción a continuación — para leer y repasar, no una prueba cronometrada.

Pregunta 1

Un desarrollador escribe código que calcula una fecha de entrega. El desarrollador teclea por error '-' en lugar de '+' en una fórmula. Como resultado, cuando un cliente compra un viernes, el sistema muestra una fecha de entrega en el pasado y el cliente se queja. Asocie estas tres observaciones con los términos ISTQB error, defecto y fallo.

Error = el desarrollador teclea mal; defecto = el operador incorrecto en el código; fallo = la fecha de entrega en el pasado mostrada al cliente.

Respuesta correcta

Asociación correcta: el desliz humano es el error, el código defectuoso es el defecto, la salida incorrecta observada es el fallo.

Error = la fecha en el pasado; defecto = la queja del cliente; fallo = el tecleo erróneo.

Invertido: la fecha y la queja son consecuencias (fallo), no el error; el tecleo es el error.

Error = el operador incorrecto en el código; defecto = el tecleo erróneo; fallo = la queja del cliente.

El operador incorrecto es el defecto, no el error; el tecleo es el error.

Los tres términos describen el mismo único evento y son intercambiables.

ISTQB separa deliberadamente la acción humana, el defecto estático y la manifestación dinámica — no son intercambiables.

Por qué

Un error es una acción humana que produce un resultado incorrecto; el defecto es el fallo resultante en el código; el fallo es el comportamiento incorrecto observado externamente.

Pregunta 2

¿Qué afirmación describe mejor una razón clave por la que las pruebas son necesarias en el desarrollo de software?

Las pruebas reducen el riesgo de que ocurran fallos en operación y aportan información sobre la calidad.

Respuesta correcta

Justificación central: las pruebas reducen el riesgo operativo e informan sobre la calidad.

Las pruebas garantizan que el software está completamente libre de defectos.

Las pruebas nunca pueden demostrar la ausencia de defectos; es una falacia conocida.

Las pruebas eliminan la necesidad de requisitos y diseño.

Las pruebas complementan, no sustituyen, las actividades de requisitos y diseño.

Las pruebas solo son necesarias cuando el cliente reporta un problema.

Esperar a los reportes del cliente contradice la detección temprana de defectos.

Por qué

Las pruebas reducen el riesgo de fallos en operación y ayudan a verificar que se cumplen los requisitos.

Pregunta 3

¿Qué afirmación refleja correctamente el principio de prueba conocido como 'paradoja del pesticida'?

Si se repiten las mismas pruebas muchas veces, terminan por no encontrar defectos nuevos, por lo que hay que revisar los casos de prueba con regularidad.

Respuesta correcta

Justo la paradoja del pesticida: los conjuntos estáticos pierden eficacia y deben actualizarse.

Los defectos tienden a agruparse en un número reducido de módulos.

Eso describe el 'agrupamiento de defectos', un principio distinto.

Las pruebas exhaustivas de todas las entradas son alcanzables con suficientes recursos.

Contradice 'las pruebas exhaustivas son imposibles'.

Probar pronto ahorra tiempo y dinero.

Cierto, pero ese es el principio de 'pruebas tempranas', no la paradoja del pesticida.

Por qué

Repetir las mismas pruebas deja de encontrar defectos nuevos; las pruebas deben revisarse y modificarse con el tiempo.

Pregunta 4

¿Cuáles DOS de las siguientes son objetivos válidos de las pruebas según el temario ISTQB? (Elija dos.)

Evaluar la calidad y generar confianza en el nivel de calidad.

Respuesta correcta

Un objetivo de prueba reconocido en el temario.

Encontrar defectos y fallos, reduciendo así el riesgo.

Respuesta correcta

Detectar defectos para reducir el riesgo de calidad inadecuada es un objetivo central.

Demostrar que el software no contiene defectos.

Imposible — las pruebas no pueden demostrar la ausencia de defectos.

Corregir los defectos encontrados.

Corregir es trabajo de depuración/desarrollo, no un objetivo de prueba.

Por qué

Las pruebas encuentran defectos y generan confianza en el nivel de calidad; no pueden demostrar la ausencia de defectos.

Pregunta 5

Durante el proceso de prueba, el equipo transforma objetivos generales en condiciones de prueba concretas y luego en casos de prueba. ¿Qué actividad de prueba se ocupa principalmente de identificar QUÉ probar (las condiciones de prueba) analizando la base de prueba?

Análisis de prueba

Respuesta correcta

El análisis de prueba examina la base de prueba para determinar características probables y definir condiciones (qué probar).

Diseño de prueba

El diseño elabora las condiciones en casos concretos (el cómo), después de que el análisis define el qué.

Implementación de prueba

La implementación organiza los casos en procedimientos/suites y prepara el entorno, tras el diseño.

Ejecución de prueba

La ejecución corre las pruebas y compara resultados reales con esperados — mucho más tarde.

Por qué

El análisis de prueba identifica qué probar (condiciones); el diseño de prueba determina cómo, generando casos de prueba.

Pregunta 6

¿Por qué cierto grado de independencia suele ser útil al probar software?

Los testers independientes tienden a reconocer defectos distintos que el autor por sesgos y suposiciones diferentes.

Respuesta correcta

La independencia reduce el sesgo del autor y revela defectos pasados por alto.

Los autores no pueden probar su propio código bajo ninguna circunstancia.

Los autores sí prueban su trabajo (p. ej. pruebas unitarias); la independencia es gradual, no una prohibición absoluta.

Los testers independientes siempre encuentran más defectos que los desarrolladores.

No está garantizado — la independencia ayuda pero no siempre rinde más defectos.

La independencia elimina por completo la necesidad de que los desarrolladores prueben.

Las pruebas de los desarrolladores siguen siendo valiosas; la independencia las complementa.

Por qué

Los testers independientes tienden a reconocer tipos distintos de defectos debido a suposiciones y sesgos diferentes.

Pregunta 7

Un jefe de proyecto afirma: 'Ejecutamos todas las pruebas planificadas y casi todas pasaron, así que el sistema está listo para lanzarse y los usuarios estarán satisfechos.' ¿Qué principio advierte contra este razonamiento?

La falacia de ausencia de errores.

Respuesta correcta

Encontrar y corregir defectos no sirve si el sistema es inusable o no cumple las necesidades del usuario.

Las pruebas muestran la presencia de defectos, no su ausencia.

Es un principio real, pero trata lo que demuestran las pruebas, no la brecha de aptitud de uso planteada.

Agrupamiento de defectos.

Trata la distribución de defectos entre módulos, ajeno a la satisfacción del usuario.

Las pruebas dependen del contexto.

Cierto en general, pero no advierte específicamente sobre equiparar pocos defectos con satisfacción.

Por qué

La falacia de ausencia de errores: un sistema puede tener pocos defectos y aun así no cumplir las necesidades y expectativas de los usuarios.

Pregunta 8

Un tester toma varios casos de prueba relacionados, los pone en el orden en que deben ejecutarse, añade los pasos de preparación necesarios antes del primero y guarda el resultado. En terminología ISTQB, ¿qué ha creado el tester?

Un procedimiento de prueba

Respuesta correcta

Correcto — un procedimiento de prueba es una secuencia de casos en orden de ejecución junto con las precondiciones y acciones preparatorias necesarias.

Un caso de prueba

Un caso de prueba especifica precondiciones, entradas, resultados esperados y postcondiciones de una sola prueba. Aquí se secuenciaron varios casos existentes, algo por encima del nivel de un caso.

Una suite de pruebas

Una suite es un conjunto de casos o procedimientos seleccionados para ejecutarse juntos, por ejemplo en un ciclo. Agrupa pruebas, pero no prescribe el orden interno ni los pasos de preparación propios de un procedimiento.

Una condición de prueba

Una condición de prueba indica qué debe probarse, por ejemplo una funcionalidad o característica de calidad. No contiene pasos de ejecución ni orden alguno.

Por qué

Un procedimiento de prueba especifica una secuencia de acciones para la ejecución, incluidos los casos de prueba en su orden de ejecución y las precondiciones o pasos preparatorios. Se crea durante la implementación de pruebas.

Pregunta 9

Un equipo adopta un enfoque 'shift-left'. ¿Cuál de las siguientes ilustra MEJOR el shift-left testing en la práctica?

Los testers revisan los requisitos y definen pruebas de aceptación en la fase de análisis, antes de escribir código.

Respuesta correcta

La revisión y el diseño temprano de pruebas es la esencia del shift-left.

Todas las pruebas se posponen hasta una fase dedicada tras finalizar el desarrollo.

Eso es lo contrario del shift-left — desplaza las pruebas a la derecha.

Las pruebas se realizan solo en producción mediante monitoreo.

El monitoreo en producción es 'shift-right'; no adelanta las pruebas.

Se reduce el número de testers y los desarrolladores hacen menos pruebas unitarias.

Reducir las pruebas tempranas contradice el shift-left.

Por qué

Shift-left adelanta las actividades de prueba, p. ej. revisar requisitos y escribir pruebas antes de terminar el código.

Pregunta 10

¿Cuál es el propósito principal de las pruebas de integración como nivel de prueba?

Probar las interfaces e interacciones entre componentes o sistemas integrados.

Respuesta correcta

La integración de componentes busca defectos en las interfaces e interacciones entre componentes.

Probar cada componente individual de forma aislada.

Eso es la prueba de componentes (unitaria), otro nivel.

Validar el sistema completo frente a los requisitos de negocio con usuarios finales.

Eso describe las pruebas de aceptación, no la integración.

Verificar el comportamiento del sistema integrado completo de extremo a extremo.

Probar el sistema completo de extremo a extremo es la prueba de sistema.

Por qué

Las pruebas de integración se centran en las interacciones e interfaces entre componentes o sistemas.

Pregunta 11

Un equipo de prueba mide la rapidez con que responde la aplicación bajo una carga de 500 usuarios concurrentes. ¿Qué tipo de prueba es y por qué?

Prueba no funcional, porque evalúa una característica de calidad (eficiencia de rendimiento) y no una función.

Respuesta correcta

El tiempo de respuesta bajo carga es una característica de eficiencia de rendimiento (no funcional).

Prueba funcional, porque la aplicación realiza sus cálculos.

El foco está en la rapidez, no en si el resultado es correcto — eso la hace no funcional.

Prueba de caja blanca, porque se basa en la estructura interna del código.

Medir el tiempo de respuesta no requiere conocer la estructura interna.

Prueba de confirmación, porque vuelve a ejecutar una prueba anterior.

La confirmación reprueba un defecto corregido; esto es una nueva medición de rendimiento.

Por qué

Medir el tiempo de respuesta bajo carga es una prueba no funcional (rendimiento/eficiencia) — prueba cómo de bien se comporta el sistema, no qué hace.

Pregunta 12

Una aplicación que lleva dos años en operación debe actualizarse porque se actualiza el sistema operativo en el que se ejecuta. La funcionalidad no cambia. ¿Qué tipo de prueba se desencadena principalmente y cómo se llama el desencadenante?

Prueba de mantenimiento, desencadenada por un cambio del entorno (actualización del sistema operativo).

Respuesta correcta

Las modificaciones del entorno operativo son un desencadenante reconocido del mantenimiento.

Prueba de aceptación, desencadenada por un nuevo requisito de negocio.

No hay un nuevo requisito de negocio; la funcionalidad no cambia.

Prueba de componentes, desencadenada por código nuevo escrito desde cero.

No se escribe código de funcionalidad nuevo; el sistema se migra.

Prueba de humo, desencadenada por la compilación diaria.

La compilación diaria no es el desencadenante; lo es la actualización del SO.

Por qué

Es una prueba de mantenimiento desencadenada por un cambio en el entorno (un desencadenante operativo/de migración).

Pregunta 13

¿Cuáles DOS afirmaciones distinguen correctamente las pruebas de confirmación de las de regresión? (Elija dos.)

La confirmación reejecuta las pruebas que antes fallaron, para verificar la corrección.

Respuesta correcta

Correcto — la confirmación verifica que el defecto original se resolvió.

La regresión verifica que el cambio no haya introducido o revelado defectos en partes no modificadas.

Respuesta correcta

Correcto — la regresión busca efectos secundarios no deseados de un cambio.

La confirmación siempre está totalmente automatizada y la regresión nunca.

Ambas pueden ser manuales o automatizadas; la automatización no las distingue.

La regresión solo se hace tras desplegar el software en producción.

La regresión se hace ante cualquier cambio de software o entorno, en cualquier nivel.

Por qué

La confirmación verifica que un defecto corregido ha desaparecido; la regresión verifica que el cambio no ha roto nada más.

Pregunta 14

En un entorno DevOps con integración continua (CI), ¿cuál es un beneficio clave para las pruebas?

Las pruebas automatizadas se ejecutan en cada integración, dando retroalimentación rápida y detección temprana.

Respuesta correcta

La retroalimentación rápida y automatizada en cada commit es un beneficio clave de CI/DevOps.

La CI elimina la necesidad de pruebas de regresión automatizadas.

La CI depende mucho de las pruebas de regresión automatizadas; no las elimina.

La CI garantiza que ningún defecto llegue a producción.

La CI reduce el riesgo pero no puede garantizar versiones sin defectos.

La CI implica probar solo manualmente al final del sprint.

La CI enfatiza pruebas automatizadas continuas, no pruebas manuales al final del sprint.

Por qué

La CI da retroalimentación rápida mediante pipelines automatizados de construcción y prueba, detectando defectos poco después de cada commit.

Pregunta 15

¿Qué afirmación contrasta correctamente las pruebas estáticas con las dinámicas?

Las pruebas estáticas encuentran defectos sin ejecutar el código, mientras que las dinámicas requieren ejecutar el software.

Respuesta correcta

Correcto — es la distinción fundamental entre ambas.

Las pruebas estáticas requieren ejecutar el código y las dinámicas no.

Esto invierte las definiciones.

Tanto las estáticas como las dinámicas requieren siempre ejecutar el software.

Las pruebas estáticas precisamente no ejecutan el software.

Ni las estáticas ni las dinámicas pueden encontrar defectos.

Ambas encuentran defectos; difieren en cómo.

Por qué

Las pruebas estáticas encuentran defectos directamente en los productos de trabajo sin ejecutar código; las dinámicas ejecutan el software y observan fallos.

Pregunta 16

¿Cuál de los siguientes es un beneficio que ofrece la prueba estática y que la prueba dinámica normalmente no puede ofrecer?

Detectar defectos directamente en requisitos o diseño antes de ejecutar código.

Respuesta correcta

La prueba estática examina productos de trabajo sin ejecución, hallando defectos antes y en su origen.

Medir el tiempo de respuesta real del sistema en ejecución.

Medir el comportamiento en ejecución requiere ejecutar — eso es prueba dinámica.

Observar fallos por fugas de memoria durante la ejecución.

Observar fallos en ejecución necesita ejecutar y es prueba dinámica.

Confirmar que un defecto corregido ya no causa un fallo en ejecución.

Eso es prueba de confirmación, que requiere ejecutar el software.

Por qué

La prueba estática puede encontrar defectos en productos de trabajo sin ejecutar código, p. ej. directamente en los requisitos, incluso antes de que exista código.

Pregunta 17

Un equipo necesita un tipo de revisión que sea el más formal, siga un proceso definido con criterios de entrada/salida documentados, use métricas y esté dirigido por un moderador capacitado. ¿Qué tipo de revisión encaja mejor?

Inspección

Respuesta correcta

La inspección es la revisión más formal: proceso definido, moderador capacitado, roles, métricas y criterios de salida.

Recorrido (walkthrough)

El recorrido lo dirige el autor y es menos formal, a menudo sin criterios estrictos ni métricas.

Revisión informal

La revisión informal no tiene proceso definido y genera poca o ninguna documentación.

Revisión técnica

La revisión técnica es bastante formal y dirigida por pares, pero la inspección es la más formal de las listadas.

Por qué

La inspección es el tipo de revisión más formal, con proceso definido, roles, criterios de entrada/salida y métricas.

Pregunta 18

Durante una reunión de revisión formal, ¿qué rol es responsable de registrar los defectos, decisiones y nuevos asuntos planteados durante la discusión?

El escriba (registrador).

Respuesta correcta

El escriba recopila y documenta las anomalías, decisiones y nuevos hallazgos durante la reunión.

El moderador (facilitador).

El moderador dirige y facilita la reunión; registrar es tarea del escriba.

El autor.

El autor creó el producto y responde preguntas, pero no registra la revisión.

El líder de revisión / gerente.

El gerente puede decidir la ejecución de revisiones, pero registrar en la reunión es del escriba.

Por qué

El escriba (registrador) documenta los defectos, decisiones y asuntos planteados durante la revisión.

Pregunta 19

Un formulario web acepta un campo 'cantidad' para un pedido en línea. La especificación dice: la cantidad debe ser un entero entre 1 y 50 inclusive. Las cantidades de 0 o menos se rechazan como 'cantidad inválida'; las de 51 o más como 'excede el máximo'. Usando partición de equivalencia, ¿cuántas particiones existen para el campo cantidad y cuál es el número mínimo de casos para cubrir cada partición una vez?

3 particiones; 3 casos.

Respuesta correcta

Válida 1–50, inválida ≤0, inválida ≥51 = tres particiones; cada una una vez = tres casos.

2 particiones; 2 casos.

Ignora que hay dos particiones inválidas distintas con manejo diferente.

4 particiones; 4 casos.

Solo hay una partición válida (1–50), no dos; el total es tres, no cuatro.

50 particiones; 50 casos.

La partición de equivalencia agrupa valores tratados igual; no prueba cada entero.

Por qué

Hay tres particiones (una válida: 1–50; dos inválidas: ≤0 y ≥51), se necesitan mínimo tres casos.

Pregunta 20

Para el mismo campo 'cantidad' (rango entero válido de 1 a 50 inclusive), aplica el análisis de valores límite (BVA) de 2 valores. El enfoque de 2 valores prueba, en cada límite, el valor límite y su vecino más cercano del otro lado. ¿Qué conjunto de valores representa exactamente los valores de prueba BVA de 2 valores para este campo?

0, 1, 50, 51

Respuesta correcta

Límite inferior 1 con vecino 0; límite superior 50 con vecino 51 — cuatro valores.

1, 50

Son solo los límites; el enfoque de 2 valores también necesita los vecinos 0 y 51.

0, 1, 2, 49, 50, 51

Ese es el enfoque de 3 valores (límite y ambos vecinos), no el de 2 valores.

1, 25, 50

25 es un valor medio (típico de EP), no un valor límite para BVA, y faltan 0/51.

Por qué

Los límites son 1 y 50; el enfoque de 2 valores usa {0, 1, 50, 51}.

Pregunta 21

Un motor de descuentos asigna un nivel de fidelidad según el gasto anual S (euros enteros): Bronce para 0–999, Plata para 1000–4999, Oro para 5000 o más. Usando el enfoque de 3 valores del análisis de valores límite (cada límite probado con el valor anterior, el del límite y el posterior), ¿cuántos valores de prueba distintos se requieren para cubrir todos los límites internos entre niveles? Considere solo los dos límites internos (Bronce/Plata y Plata/Oro).

6 valores de prueba distintos.

Respuesta correcta

Cada límite interno aporta tres valores; los conjuntos {999,1000,1001} y {4999,5000,5001} no se solapan — 6.

4 valores de prueba distintos.

Ese sería el enfoque de 2 valores (dos por límite), no el de 3 valores.

3 valores de prueba distintos.

Tres valores cubren solo un límite; aquí hay dos límites internos.

9 valores de prueba distintos.

Nueve supondría tres límites; solo se consideran dos límites internos.

Por qué

Límite 1000 → {999,1000,1001}; límite 5000 → {4999,5000,5001}; sin solapamiento, 6 valores distintos.

Pregunta 22

La siguiente tabla de decisión especifica las reglas de descuento y envío gratis en la caja de una tienda en línea. 'Member (loyalty)' = el cliente tiene cuenta de fidelidad, 'Cart total ≥ 100' = pedido de 100 euros o más, 'Coupon valid' = se introdujo un cupón válido. '–' significa 'no importa'.

Tabla de decisión R1–R7: condiciones Member, Cart total ≥ 100, Coupon valid; acciones Discount % y Free shipping

Un cliente de fidelidad hace un pedido de 120 euros y NO introduce cupón. Según la tabla, ¿qué regla aplica y cuáles son las acciones resultantes?

Regla R6: 10% de descuento y envío gratis.

Respuesta correcta

Member T, carrito ≥ 100 T, cupón F es exactamente R6 — 10% y envío gratis.

Regla R7: 20% de descuento y envío gratis.

R7 requiere un cupón válido (Coupon=T); aquí no se introdujo cupón.

Regla R4: 5% de descuento y sin envío gratis.

R4 requiere carrito ≥ 100 = F; aquí es 120 (≥100 = T).

Regla R1: 0% de descuento y sin envío gratis.

R1 es para no miembros con carrito menor a 100; este cliente es miembro con 120.

Por qué

Member=T, Cart≥100=T, Coupon=F coincide con R6 → 10% de descuento, envío gratis = Sí.

Pregunta 23

Observe de nuevo la tabla de decisión de descuentos de la caja de la tienda en línea.

Tabla de decisión R1–R7 con un 'no importa' (–) en la fila 'Coupon valid' de la regla R1

¿Por qué la regla R1 usa un valor 'no importa' (–) para la condición 'Coupon valid', y qué efecto práctico tiene en el número de columnas?

Como el resultado es idéntico con o sin cupón válido, las dos columnas correspondientes se fusionan en la única regla R1, reduciendo el tamaño de la tabla.

Respuesta correcta

Un 'no importa' combina combinaciones con las mismas acciones, reduciendo la tabla sin perder cobertura.

Porque la condición de cupón es una entrada inválida que nunca debería probarse.

La condición de cupón es válida y se prueba en otras reglas; '–' solo indica irrelevancia para esta regla.

Porque un valor faltante significa que la regla es inviable y puede eliminarse.

R1 es una regla válida y viable; '–' es un 'no importa' deliberado, no un valor faltante.

Porque duplica el número de columnas a probar.

Un 'no importa' reduce, no aumenta, el número de columnas/reglas.

Por qué

Cuando un no miembro tiene un carrito menor a 100, el resultado es el mismo sin importar el cupón, por lo que dos columnas se combinan en una (R1).

Pregunta 24

El siguiente diagrama de transición de estados modela una máquina expendedora simple. La máquina inicia en 'Idle'. Insertar una moneda la lleva a 'HasCredit'; más monedas añaden crédito (autotransición). Desde 'HasCredit', seleccionar un producto con crédito suficiente va a 'Dispensing'; seleccionar con crédito insuficiente va a 'Refunding'. Tras dispensar o reembolsar, vuelve a 'Idle'. 'cancel' desde 'HasCredit' reembolsa y vuelve a 'Idle'.

Diagrama de transición de la máquina expendedora con estados Idle, HasCredit, Dispensing, Refunding

¿Cuál de las siguientes secuencias de eventos es un camino VÁLIDO por el diagrama (es decir, cada transición existe)?

insertCoin, insertCoin, select [credit ≥ price], dispensed.

Respuesta correcta

Idle→HasCredit, autotransición con la segunda moneda, →Dispensing con crédito suficiente, →Idle al dispensar. Todas las transiciones existen.

select [credit ≥ price], insertCoin, dispensed.

Desde Idle no existe transición 'select'; el primer evento es inválido.

insertCoin, dispensed.

No hay transición 'dispensed' directa desde HasCredit; primero debe dispensar.

insertCoin, select [credit < price], dispensed.

Crédito insuficiente lleva a Refunding, desde donde no ocurre 'dispensed' (sino 'refunded').

Por qué

insertCoin → insertCoin → select(suficiente) → dispensed es válido: Idle→HasCredit→HasCredit→Dispensing→Idle.

Pregunta 25

¿Qué afirmación describe mejor cuándo una tabla de decisión es una técnica de diseño de pruebas especialmente adecuada?

Cuando distintas combinaciones de condiciones de entrada conducen a distintas acciones o salidas.

Respuesta correcta

Las tablas de decisión capturan sistemáticamente combinaciones de condiciones y sus acciones.

Cuando el sistema tiene un único rango numérico de entrada y nada más.

Un único rango se trata mejor con partición de equivalencia y análisis de valores límite.

Cuando el comportamiento depende de la secuencia de eventos en el tiempo.

El comportamiento secuencial se modela con pruebas de transición de estados, no tablas de decisión.

Cuando hay que ejercitar la estructura interna del código para cobertura.

La cobertura estructural es caja blanca; las tablas de decisión son técnica de caja negra.

Por qué

Las tablas de decisión son adecuadas cuando el comportamiento depende de combinaciones de condiciones que producen acciones distintas.

Pregunta 26

Considere esta rutina (con números de línea). Línea 1: read x. Línea 2: if x > 0 then. Línea 3: y = x * 2. Línea 4: end if. Línea 5: if x > 100 then. Línea 6: y = 100. Línea 7: end if. Línea 8: print y. Las sentencias ejecutables son las líneas 1, 2, 3, 5, 6, 8. Un único test se ejecuta con x = 50.

¿Qué cobertura de sentencias logra el único test x = 50?

Cerca del 83% (5 de las 6 sentencias).

Respuesta correcta

x=50 cumple x>0 (línea 3 se ejecuta) pero no x>100 (línea 6 omitida): 5/6 ≈ 83%.

100%.

La línea 6 (y = 100) nunca se alcanza con x = 50, así que no puede ser 100%.

50%.

Se ejecutan bastante más de la mitad; solo se omite una de seis.

67%.

67% serían 4 de 6 sentencias; aquí se ejecutan 5 de 6.

Por qué

Con x=50 se ejecutan las líneas 1,2,3,5,8 (5 de 6 sentencias); la línea 6 se omite → ~83%.

Pregunta 27

Una función contiene una única decisión: if (a AND b) then doX() else doY(). 'a' y 'b' son entradas booleanas independientes. Quiere lograr 100% de cobertura de decisiones (ramas) — deben ejercitarse tanto el resultado verdadero como el falso de la decisión.

¿Cuál es el número mínimo de casos de prueba para 100% de cobertura de ramas de esta decisión?

2 casos de prueba.

Respuesta correcta

Un caso hace (a AND b) verdadero (a=T,b=T → doX), otro falso (p. ej. a=F → doY); ambas ramas cubiertas.

1 caso de prueba.

Un caso ejercita solo un resultado de la decisión; la cobertura de ramas necesita ambos.

3 casos de prueba.

Tres no son necesarios para la cobertura de ramas simple de una decisión; dos bastan.

4 casos de prueba.

Cuatro cubrirían todas las combinaciones de a y b, más de lo que exige la cobertura de ramas.

Por qué

La cobertura de ramas exige que la decisión sea verdadera y falsa → 2 casos (p. ej. a=T,b=T y a=F).

Pregunta 28

¿Cuáles DOS de las siguientes son características de las técnicas de caja negra (basadas en especificación)? (Elija dos.)

Los casos se derivan de la especificación u otra descripción externa del comportamiento.

Respuesta correcta

Las técnicas de caja negra usan descripciones externas, no la estructura interna del código.

La partición de equivalencia y el análisis de valores límite son ejemplos.

Respuesta correcta

Ambas son técnicas clásicas de caja negra (basadas en especificación).

Miden la cobertura de sentencias y ramas del código fuente.

La cobertura de la estructura del código es una característica de caja blanca.

Requieren acceso y análisis del código fuente interno.

Necesitar el código interno es caja blanca, no caja negra.

Por qué

Las técnicas de caja negra derivan pruebas de las especificaciones sin referirse a la estructura interna; ejemplos: EP, BVA y tablas de decisión.

Pregunta 29

Un tester experimentado, sin usar una técnica formal, enumera entradas que probablemente causen problemas (campos vacíos, cero, números negativos, cadenas muy largas, caracteres especiales) según defectos pasados. ¿Qué técnica basada en la experiencia es esta?

Conjetura de errores (error guessing).

Respuesta correcta

La conjetura de errores usa la experiencia del tester para anticipar defectos probables.

Análisis de valores límite.

BVA es una técnica formal basada en especificación, no en la experiencia.

Prueba de sentencias.

La prueba de sentencias es una técnica estructural de caja blanca.

Pruebas basadas en listas de verificación.

Estas siguen una lista documentada; aquí el tester improvisa desde la experiencia sin una.

Por qué

Anticipar errores probables a partir de la experiencia es la conjetura de errores (error guessing).

Pregunta 30

Un equipo usa pruebas basadas en riesgos. Cada riesgo de producto se puntúa como nivel de riesgo = probabilidad × impacto, ambos de 1 (bajo) a 5 (alto). Cuatro riesgos: R1 probabilidad 2, impacto 5; R2 probabilidad 4, impacto 4; R3 probabilidad 5, impacto 2; R4 probabilidad 3, impacto 3. El equipo probará primero el de MAYOR nivel de riesgo. ¿Cuál se prueba primero y cuál es su nivel de riesgo?

R2, con un nivel de riesgo de 16.

Respuesta correcta

2×5=10, 4×4=16, 5×2=10, 3×3=9 → R2 (16) es el mayor y se prueba primero.

R1, con un nivel de riesgo de 10.

R1 obtiene 10, no es el mayor; R2 obtiene 16.

R3, porque tiene la mayor probabilidad.

La mayor probabilidad por sí sola no maximiza el nivel; R3 obtiene solo 10.

R1, porque tiene el mayor impacto.

El mayor impacto por sí solo no maximiza el nivel; R1 obtiene 10, por debajo de R2 con 16.

Por qué

R1=10, R2=16, R3=10, R4=9; el mayor es R2 con 16.

Pregunta 31

¿Cuáles DOS de los siguientes son ejemplos de riesgos de PRODUCTO (en lugar de riesgos de proyecto)? (Elija dos.)

El software podría calcular mal los intereses y mostrar saldos incorrectos.

Respuesta correcta

Un defecto en el software entregado que afecta la calidad es un riesgo de producto.

Bajo carga alta el sistema podría responder demasiado lento para los usuarios.

Respuesta correcta

El mal rendimiento del producto es un riesgo de producto relacionado con la calidad.

Testers clave podrían dejar el equipo antes de terminar la fase de prueba.

El personal/disponibilidad es un riesgo de proyecto, no de producto.

El entorno de prueba podría no ser entregado a tiempo por el proveedor.

Los retrasos de un proveedor que afectan el calendario son un riesgo de proyecto.

Por qué

Los riesgos de producto se refieren a la calidad del producto; los de proyecto, a la gestión del proyecto (plazos, personal, etc.).

Pregunta 32

Un líder de pruebas estima el esfuerzo de ejecutar una suite con la técnica de tres puntos (PERT): Estimación = (Optimista + 4 × Más probable + Pesimista) / 6. Optimista 4 días, más probable 7 días, pesimista 16 días. ¿Cuál es la estimación de tres puntos?

8 días.

Respuesta correcta

(4 + 28 + 16) / 6 = 48 / 6 = 8 días.

9 días.

9 resultaría de un error aritmético; la media ponderada correcta es 8.

7 días.

7 es solo el valor más probable, no la estimación ponderada de tres puntos.

9,5 días.

9,5 es un promedio simple mal calculado; la fórmula PERT pondera el valor más probable por 4.

Por qué

(4 + 4×7 + 16) / 6 = (4 + 28 + 16) / 6 = 48 / 6 = 8 días.

Pregunta 33

¿Cuál es el propósito principal del monitoreo y control de pruebas durante la ejecución?

Recopilar información sobre el progreso y usarla para guiar acciones correctivas hacia los objetivos.

Respuesta correcta

El monitoreo recopila métricas; el control actúa sobre ellas — juntos mantienen las pruebas en rumbo.

Escribir el código fuente que corrige los defectos encontrados.

Corregir código es desarrollo/depuración, no monitoreo y control de pruebas.

Garantizar que el proyecto terminará en la fecha planificada.

El monitoreo informa decisiones pero no puede garantizar el calendario.

Eliminar la necesidad de un plan de pruebas.

El monitoreo y control complementan el plan; no lo sustituyen.

Por qué

El monitoreo recopila información del progreso; el control la usa para tomar acciones correctivas y cumplir objetivos.

Pregunta 34

¿Cuáles DOS de los siguientes se documentarían normalmente en un plan de pruebas? (Elija dos.)

Los objetivos, el alcance y el enfoque de prueba a utilizar.

Respuesta correcta

Alcance, objetivos y enfoque son contenidos centrales de un plan.

Criterios de entrada y salida para las actividades de prueba.

Respuesta correcta

Los criterios de entrada/salida son elementos estándar de un plan.

El código fuente completo de la aplicación bajo prueba.

El código fuente no forma parte del plan de pruebas.

La descripción detallada paso a paso de cada defecto encontrado.

Los informes de defectos individuales son productos aparte, no el plan.

Por qué

Un plan de pruebas documenta alcance, objetivos, enfoque, calendario, recursos y criterios de entrada/salida — no los informes de defectos reales ni el código fuente.

Pregunta 35

En un equipo ágil, la 'definición de terminado' de una historia incluye 'todas las pruebas de aceptación pasan y no quedan defectos de severidad alta abiertos'. ¿A qué concepto de gestión de pruebas corresponde MÁS directamente la definición de terminado?

Criterios de salida.

Respuesta correcta

La definición de terminado especifica las condiciones para considerar el trabajo completo — es decir, criterios de salida.

Criterios de entrada.

Los criterios de entrada (definición de listo) deciden cuándo puede empezar el trabajo, no cuándo termina.

Datos de prueba.

Los datos de prueba son entradas para ejecutar pruebas, ajenos a las condiciones de finalización.

Un test charter.

Un test charter guía una sesión exploratoria; no es el criterio de finalización de una historia.

Por qué

Una definición de terminado actúa como criterios de salida — condiciones a cumplir antes de considerar el trabajo completo.

Pregunta 36

¿Qué DOS datos son esenciales en un buen informe de defecto para hacerlo accionable? (Elija dos.)

Pasos claros para reproducir el problema.

Respuesta correcta

Los pasos de reproducción permiten a los desarrolladores observar y diagnosticar el fallo.

El resultado esperado y el resultado real (observado).

Respuesta correcta

Esperado vs real define con precisión qué está mal.

El nombre del desarrollador culpable del defecto.

Culpar es contraproducente y no forma parte de un buen informe.

La suposición del tester sobre la línea exacta de código que causa el defecto.

Localizar la línea es diagnóstico del desarrollador, no un campo obligatorio.

Por qué

Un buen informe incluye los pasos para reproducir y los resultados esperado y real; culpar a alguien y la causa supuesta no son esenciales.

Pregunta 37

¿Cómo apoya la gestión de la configuración a las actividades de prueba?

Identifica y versiona de forma única los ítems y productos de prueba para que las pruebas sean reproducibles y trazables.

Respuesta correcta

Saber qué versiones se probaron hace los resultados fiables y reproducibles.

Escribe automáticamente los casos de prueba a partir de los requisitos.

La gestión de configuración controla versiones; no genera casos.

Garantiza que el software no tiene defectos de configuración.

Gestiona versiones pero no puede garantizar la ausencia de defectos.

Elimina la necesidad de saber en qué compilación se encontró un defecto.

Al contrario, es justo lo que permite rastrear la compilación/versión de cada defecto.

Por qué

La gestión de la configuración asegura que los productos y objetos de prueba estén identificados, versionados y trazables para que los resultados sean reproducibles.

Pregunta 38

Un gerente de pruebas decide cómo se realizarán las pruebas: qué técnicas, niveles y tipos usar, cuánto automatizar y cómo asignar el esfuerzo frente a los riesgos. ¿Cómo se llama este conjunto de decisiones?

El enfoque de prueba.

Respuesta correcta

El enfoque de prueba define cómo se adaptan e implementan las pruebas según el contexto y los riesgos.

La condición de prueba.

Una condición de prueba es un aspecto concreto a probar, no el enfoque global.

El caso de prueba.

Un caso de prueba es un conjunto de entradas/resultados esperados, no la estrategia.

El registro de prueba.

Un registro recoge lo ocurrido durante la ejecución, no cómo se planifica.

Por qué

Es el enfoque de prueba (estrategia de prueba) — cómo se implementan las pruebas según el contexto y los riesgos.

Pregunta 39

¿Cuáles DOS de los siguientes son ejemplos de herramientas que apoyan la ejecución y el registro de pruebas? (Elija dos.)

Una herramienta de ejecución que reproduce pruebas con scripts y registra resultados.

Respuesta correcta

Las herramientas de ejecución corren scripts automatizados y registran los resultados.

Un framework de pruebas unitarias que ejecuta pruebas de desarrollo e informa resultados.

Respuesta correcta

Los frameworks unitarios ejecutan pruebas y capturan/reportan los registros de resultados.

Una herramienta de gestión de requisitos para almacenar y trazar requisitos.

La gestión de requisitos apoya la gestión/trazabilidad, no la ejecución y el registro.

Una herramienta de análisis estático que inspecciona el código sin ejecutarlo.

El análisis estático apoya la prueba estática, no la ejecución dinámica y el registro.

Por qué

La ejecución y el registro de pruebas se apoyan en herramientas que ejecutan pruebas con scripts y capturan resultados, p. ej. herramientas de ejecución y frameworks de pruebas unitarias.

Pregunta 40

¿Qué afirmación describe, en conjunto, un beneficio realista Y un riesgo realista de la automatización de pruebas?

Beneficio: menos esfuerzo manual repetitivo y retroalimentación más rápida; Riesgo: los scripts requieren mantenimiento y las expectativas pueden ser demasiado altas.

Respuesta correcta

La automatización ahorra esfuerzo repetitivo pero añade costo de mantenimiento y riesgo de dependencia excesiva — visión equilibrada.

Beneficio: encuentra más tipos de defectos que cualquier humano; Riesgo: ninguno, una vez configurada.

La automatización no encuentra inherentemente más tipos de defectos y siempre conlleva riesgos de mantenimiento.

Beneficio: elimina la necesidad de diseño de pruebas; Riesgo: es más lenta que las pruebas manuales.

La automatización sigue necesitando buen diseño y suele ser más rápida, no más lenta, en ejecuciones repetidas.

Beneficio: garantiza una versión sin defectos; Riesgo: es demasiado barata para valer la pena.

Ninguna técnica garantiza una versión sin defectos, y el bajo costo no es un riesgo.

Por qué

La automatización puede reducir el esfuerzo manual repetitivo (beneficio) pero conlleva costos de mantenimiento y puede generar dependencia excesiva (riesgo).