Depuración, pruebas de software y refactorización: conceptos clave
Resumen
El documento explica los comandos básicos de un depurador para controlar la ejecución del código, clasifica las pruebas de software en unidad, integración y sistema, y define la refactorización como técnica para reestructurar código sin cambiar su comportamiento externo. También introduce las pruebas de regresión, de integración, los stubs y los mocks, así como las pruebas de cobertura.
Puntos clave
- Un depurador permite analizar el código mientras se ejecuta de forma controlada, observando datos en tiempo de ejecución.
- Step Over ejecuta la línea actual y se detiene en la siguiente; Step Into entra en el método llamado; Step Return vuelve al método llamante; Terminate finaliza la depuración.
- Las pruebas se clasifican en unidad, integración y sistema.
- La refactorización reestructura el código interno sin alterar su comportamiento externo.
- Las pruebas de regresión verifican que las modificaciones no han causado efectos no deseados.
- Los stubs son llamadas que no devuelven respuesta; los mocks son objetos preprogramados aplicados a la orientación a objetos.
Comandos Esenciales en la Depuración de Código (Debugger)
Un depurador es la herramienta de software que permite analizar el código mientras se ejecuta de forma controlada. El objetivo es proporcionar un entorno donde se puedan observar, en tiempo de ejecución, los datos asociados con la ejecución del proceso, interactuando con este.
Operaciones de Control de Flujo en Debugging
- Step Over: Ejecuta la línea de código actual y se detiene en la línea siguiente.
- Step Into: Navega al código del método que está siendo llamado, deteniéndose en su primera línea.
- Step Return: Avanza la ejecución hasta que se retorna al método llamante, lugar en el que se detiene.
- Terminate: Termina la depuración del programa.
Tipos de Pruebas de Software (UIS)
Clasificación Principal de Pruebas
Se distinguen tres tipos fundamentales de pruebas:
- Unidad: Enfocadas en una sección específica del código.
- Integración: Verifican las interfaces y cómo los componentes se integran entre sí.
- Sistema: Aseguran que el sistema completo funcione correctamente sin causar fallos inesperados.
Concepto de Refactorización
Definición y Propósito
- Técnica para reestructurar un bloque existente de código fuente, alterando su estructura interna sin cambiar su comportamiento externo.
Patrones de Refactorización Más Usuales (7)
La refactorización se realiza mediante una serie de pequeñas transformaciones para mejorar la calidad del código:
- Componer métodos
- Mover características entre objetos
- Organizar datos
- Simplificar expresiones condicionales
- Simplificar las llamadas a métodos
- Tratar la generalización
- Grandes refactorizaciones
Medición de la Calidad del Código: Pruebas de Cobertura
Fórmulas de Cobertura (PRCC)
*Cobertura = Proposiciones - Ramificaciones - Condiciones - Caminos
Pruebas Adicionales y Componentes de Integración
Pruebas de Regresión
Pruebas de regresión: Son las pruebas de un sistema que verifican que las modificaciones no han causado efectos no deseados y que todo sigue funcionando correctamente.
Pruebas de Integración
Pruebas de integración: Son pruebas en las que módulos individuales de software son combinados y probados como un grupo.
Componentes Auxiliares en Pruebas de Integración
- Stubs: Llamadas recibidas durante la prueba que no proporcionarán ningún tipo de respuesta.
- Mock: Son objetos pre-programados, similares a los stubs, pero aplicados a la orientación a objetos y con sutiles diferencias.
Refactorización y Documentación
La refactorización es una técnica para la reestructuración de un bloque existente de código fuente, alterando su estructura interna sin cambiar su comportamiento externo. Su objetivo es realizar una serie de pequeñas transformaciones para mejorar la mantenibilidad del código.
Descargar
PDF Word HTMLPreguntas frecuentes
¿Qué hace la opción Step Over de un depurador?
Ejecuta la línea de código actual y se detiene en la línea siguiente. No entra en el interior de los métodos que se llaman.
¿Qué es la refactorización?
Es una técnica para reestructurar un bloque existente de código fuente, alterando su estructura interna sin cambiar su comportamiento externo. Su objetivo es mejorar la mantenibilidad del código.
¿Qué son las pruebas de regresión?
Son pruebas de un sistema que verifican que las modificaciones no han causado efectos no deseados y que todo sigue funcionando correctamente.
Ponte a prueba
Tarjetas de repaso
Pulsa una tarjeta para ver la respuesta.
Test
Preguntas generadas con IA a partir del documento: comprueba las respuestas con el texto.