TEMA 7 Flashcards
¿Qué son las pruebas parametrizadas en JUnit?
Son pruebas unitarias que permiten ejecutar múltiples veces un mismo test con diferentes valores de entrada.
¿Cuál es la principal ventaja de usar pruebas parametrizadas?
Reducen la repetición de código y facilitan probar múltiples entradas con un solo método de prueba.
¿Qué anotación de JUnit5 permite crear pruebas parametrizadas?
La anotación @ParameterizedTest.
¿Qué anotación proporciona directamente valores concretos para una prueba parametrizada?
La anotación @ValueSource.
¿En qué consiste la anotación @CsvSource en JUnit5?
Permite proporcionar múltiples pares de entradas y salidas esperadas mediante una lista en formato CSV.
¿Cuándo es especialmente útil utilizar @CsvSource en las pruebas parametrizadas?
Cuando se necesita definir múltiples parámetros para cada caso de prueba.
¿Para qué sirve la anotación @MethodSource en JUnit5?
Para proporcionar datos a la prueba parametrizada mediante un método generador de datos.
¿Cuál es la ventaja principal de usar @MethodSource sobre otras fuentes de datos?
Permite proporcionar datos complejos o generados dinámicamente desde métodos.
¿Qué se recomienda sobre la relación entre casos de prueba y métodos en pruebas parametrizadas?
Cada método parametrizado debe representar un solo caso de prueba lógico con múltiples entradas.
¿Cómo se especifican varios valores en la anotación @ValueSource?
Como un arreglo directamente en la anotación, por ejemplo: @ValueSource(ints = {1, 2, 3}).
¿Qué beneficio aporta integrar pruebas parametrizadas en el ciclo de construcción de Maven?
Automatiza la ejecución de múltiples casos, facilitando la detección temprana de errores en distintos escenarios.
¿Puede utilizarse la anotación @ParameterizedTest junto con otras anotaciones de JUnit como @BeforeEach o @AfterEach?
Sí, pueden combinarse perfectamente para gestionar configuraciones previas o posteriores al test parametrizado.
¿Qué ocurre si una prueba parametrizada falla para uno de los valores proporcionados?
La prueba se marca como fallida, indicando específicamente qué valor produjo el error.
¿Permite JUnit mostrar claramente qué valor específico produjo el fallo en una prueba parametrizada?
Sí, JUnit muestra claramente el valor concreto que causó el fallo en la salida del test.
¿Se pueden lanzar excepciones esperadas en pruebas parametrizadas de JUnit5?
Sí, utilizando assertions específicas como assertThrows dentro del método parametrizado.