Para depurar pruebas mediante un proyecto ejecutable, primero debe compilarse el proyecto de prueba como un ejecutable que pueda iniciarse directamente o al que pueda asociarse el depurador. En WINDEV, puede probar y depurar el proyecto actual en el editor, ejecutar y depurar el ejecutable correspondiente al proyecto actual o depurar un ejecutable que ya esté ejecutándose en el equipo de desarrollo.
Los proyectos de prueba de MTP se compilan como ejecutables que se pueden ejecutar (o depurar) directamente. No hay una consola o comando adicional para ejecutar pruebas. La aplicación se cierra con un código de salida distinto de cero si se produce un error, que es típico para la mayoría de los ejecutables.
Qué significa agregar un proyecto ejecutable para depurar pruebas
La prueba de todo el proyecto permite simular el inicio de la aplicación con el ejecutable. Puede probar toda la aplicación, incluso si aún no ha completado la fase de desarrollo. Cuando se produce un problema al ejecutar el proyecto, puede iniciar el depurador para identificar y solucionar el problema.
La prueba de un proyecto puede ejecutarse independientemente del elemento actual en el editor. WINDEV incluye un amplio conjunto de pruebas de aplicaciones que pueden ejecutarse desde el equipo de desarrollo:
- Probar y depurar el proyecto actual en el editor.
- Ejecutar y depurar el ejecutable correspondiente al proyecto actual.
- Depurar un ejecutable ya ejecutado en el equipo de desarrollo.
La Depuración de programas es el proceso por el cual se identifican y corrigen errores de programación. Generalmente, en el argot de programación se utiliza la palabra debugging, que significa localización y eliminación de bichos (bugs) o errores de programa.
Durante la depuración, los desarrolladores utilizan herramientas y técnicas para localizar y resolver problemas en el código, como errores de sintaxis, fallos lógicos, o comportamientos inesperados.

Preparar el proyecto de prueba como ejecutable
Publicar el project de prueba mediante dotnet publish y ejecutar la aplicación directamente es otra manera de ejecutar las pruebas. Por ejemplo, ejecutando el ./Contoso.MyTests.exe.
En algunos escenarios también es viable usar dotnet build para generar el archivo ejecutable, pero puede haber casos perimetrales que se deben tener en cuenta, como AOT nativo.
El comando dotnet run se puede usar para compilar y ejecutar el project de prueba. Esta es la manera más sencilla, aunque a veces más lenta, de ejecutar las pruebas.
El uso de dotnet run es práctico al editar y ejecutar pruebas localmente, ya que garantiza que la project de prueba se vuelva a compilar cuando sea necesario. dotnet run también buscará el proyecto automáticamente en la carpeta actual.
dotnet run --project Contoso.MyTests
El comando dotnet exec o dotnet se usa para ejecutar (o ejecutar) un project de prueba ya compilado, es una alternativa a ejecutar la aplicación directamente.
dotnet exec requiere la ruta de acceso al archivo DLL del proyecto de prueba compilado.
dotnet exec Contoso.MyTests.dll o dotnet Contoso.MyTests.dll
Proporcionar la ruta de acceso al archivo ejecutable del proyecto de prueba (*.exe) produce un error.
A partir del SDK de .NET 10, dotnet test tiene un modo MTP dedicado. Seleccione MTP a través de global.json, o use la variable de entorno DOTNET_TEST_RUNNER con .NET 11 Preview 6 o posterior.
El modo dedicado admite proyectos, soluciones, módulos de prueba integrados y tipos de entrada adicionales en versiones más recientes del SDK.
dotnet test --test-modules Contoso.MyTests.dll
| Forma de ejecución | Uso principal |
|---|---|
| dotnet run | Compilar y ejecutar el proyecto de prueba |
| dotnet publish | Publicar el proyecto y ejecutar la aplicación directamente |
| dotnet exec | Ejecutar un proyecto de prueba ya compilado mediante su archivo DLL |
| dotnet test --test-modules | Ejecutar módulos de prueba con el modo MTP |
Probar y depurar el proyecto actual en WINDEV
Iniciar la prueba del proyecto
Para probar un proyecto desde el editor:
- En la pestaña "Proyecto", en el grupo "Modo de prueba", despliegue "Modo de prueba" y seleccione "Depurar proyecto" (Ctrl + F9).
- También tiene la posibilidad de pulsar en los botones de acceso rápido.
- Si aún no ha definido la primera ventana del proyecto, aparece una ventana que le permite seleccionarla.
El editor se minimiza automáticamente y el proyecto se ejecuta.
Al inicio de la prueba del proyecto, antes de abrir la primera ventana del proyecto, se ejecutan los siguientes eventos de WLanguage:
- declarando clases,
- inicialización del proyecto,
- declarando las variables globales de la primera ventana,
- inicializando la primera ventana,
- inicializar los controles que se encuentran en la primera ventana,
- ganando el foco (primera ventana),
- entrar en el primer control de la primera ventana (si este control está asociado a un evento de entrada WLanguage).
Configurar el modo de prueba
Para configurar el modo de prueba, ve a la pestaña "Proyecto", al grupo "Modo de prueba", despliega "Modo de prueba" y selecciona "Configuración del modo de prueba".
Mantener abierto el editor durante la prueba
Durante una prueba, el editor se minimiza de forma predeterminada.
Dependiendo de la configuración del hardware (pantalla ancha, 2 pantallas, etc.), puede que no necesite minimizar el editor.
Para mantener abierto el editor:
- En la pestaña "Inicio", en el grupo "Entorno", despliegue "Opciones" y seleccione "Opciones del editor de código".
- En la pestaña "Depurador", deseleccione la opción "Minimizar editor durante el modo de prueba".
- Validar.
Ejecutar y depurar el archivo ejecutable
Algunos problemas solo se pueden reproducir cuando se prueba el ejecutable en condiciones de uso real. Este modo de prueba permite depurar un archivo ejecutable una vez que se instala en el equipo de desarrollo.
En este caso, el código ejecutado proviene de las bibliotecas (y no del código de los elementos en el equipo). Por lo tanto, el código del proyecto actual y el código del archivo ejecutable pueden desincronizarse.
El código desincronizado se resalta en color rosa durante la depuración.
Pasos para ejecutar el ejecutable con el depurador
- Abra el proyecto asociado al ejecutable en el editor.
- En la pestaña "Proyecto", en el grupo "Modo de prueba", despliegue "Modo de prueba", vaya a "En un ejecutable" y seleccione "Ejecutar".
- Especifique las opciones que deben tenerse en cuenta durante la prueba.
- Validar.
- Se realiza la prueba.
El ejecutable a ejecutar debe corresponder al proyecto abierto en el editor.
También puede especificar la línea de comandos a ejecutar, si es necesario.
Puede especificar la cuenta de Windows que debe utilizarse para iniciar el ejecutable.
Si esta cuenta difiere del usuario actual, el usuario debe haber sido definido en el ordenador actual.
Debe especificarse su nombre de usuario, su contraseña y su dominio.
Qué debe comprobarse antes de iniciar el ejecutable
- El proyecto abierto en el editor debe estar asociado al ejecutable seleccionado.
- El ejecutable debe corresponder a una versión del proyecto que pueda analizarse con el código y los símbolos disponibles.
- La línea de comandos debe contener los parámetros necesarios para reproducir el problema.
- La cuenta de Windows debe tener una configuración válida en el ordenador actual.
El código ejecutado proviene de las bibliotecas y no del código de los elementos en el equipo. Por lo tanto, el código del proyecto actual y el código del archivo ejecutable pueden desincronizarse.
El código desincronizado se resalta en color rosa durante la depuración.
Depurar un ejecutable que ya está en ejecución
Algunos problemas solo se pueden reproducir cuando se prueba el ejecutable en condiciones de uso real. Este modo de prueba permite encontrar un problema que solo ocurre en tiempo de ejecución (y no en modo de prueba).
En este caso, el código ejecutado proviene de las bibliotecas (y no del código de los elementos en el equipo). Por lo tanto, el código del proyecto actual y el código del archivo ejecutable pueden desincronizarse.
El código desincronizado se resalta en color rosa durante la depuración.
Asociar el depurador a un ejecutable en ejecución
- Abra el proyecto asociado al ejecutable en el editor.
- Se puede incluir un punto de interrupción en el código que desencadena el depurador.
- En la pestaña "Proyecto", en el grupo "Modo de prueba", expanda "Modo de prueba", vaya a "En un ejecutable" y seleccione "Adjuntar a un ejecutable en ejecución".
- La ventana que se muestra enumera todos los ejecutables WINDEV actualmente en ejecución.
- Seleccione el ejecutable a depurar.
- Validar.
El depurador está vinculado a la ejecución del ejecutable.
Asociar el depurador a un proceso externo
El depurador también puede asociarse a aplicaciones que se ejecutan en procesos fuera de Visual Studio, incluido en dispositivos remotos.
Después de adjuntarte a una aplicación, puedes usar el depurador de Visual Studio.
Es posible que las características de depuración estén limitadas.
Depende de si la aplicación se creó con información de depuración, si tiene acceso al código fuente de la aplicación y si el compilador JIT realiza el seguimiento de la información de depuración.
Para asociar a un proceso en ejecución:
- Con la aplicación en ejecución, seleccione Depurar>Asociar al proceso.
- En el cuadro de diálogo Asociar al proceso, seleccione el proceso en la lista Procesos disponibles y, a continuación, seleccione Asociar.
El depurador no se conecta automáticamente a un proceso secundario iniciado por un proceso depurado, aunque el proyecto secundario esté en la misma solución.
Para depurar un proceso secundario, adjunte al proceso secundario después de iniciarlo o configure el Editor del Registro de Windows para iniciar el proceso secundario en una nueva instancia del depurador.
Configurar proyectos de inicio en soluciones con varios proyectos
Visual Studio puede depurar una solución que tenga varios procesos.
Puede iniciar y cambiar entre procesos, interrumpir, continuar y depurar paso a paso el código fuente, detener la depuración y finalizar o desasociarse de procesos individuales.
Cuando más de un proyecto en una solución de Visual Studio se puede ejecutar de forma independiente, usted puede seleccionar qué proyecto debe iniciar con el depurador.
El proyecto de arranque actual se muestra en negrita en Solution Explorer.
Establecer un proyecto de inicio
- Para cambiar el proyecto de inicio, en el Explorador de soluciones, haga clic con el botón derecho en otro proyecto y seleccione Establecer como proyecto de inicio.
- Para iniciar la depuración de un proyecto desde el Explorador de soluciones sin convertirlo en el proyecto de inicio, haga clic con el botón derecho en el proyecto y seleccione Depurar>Iniciar nueva instancia o Paso a nueva instancia.
Configurar uno o varios proyectos de inicio
- Seleccione la solución en el Explorador de soluciones y, a continuación, seleccione el icono Propiedades de la barra de herramientas o haga clic con el botón derecho en la solución y seleccione Propiedades.
- En la página Propiedades, seleccione Propiedades comunes>Proyecto de inicio.
- Seleccione Selección actual, Proyecto de inicio único y un archivo de proyecto o Varios proyectos de inicio.
- Si selecciona Varios proyectos de inicio, puede cambiar el orden de inicio y la acción que se realizarán para cada proyecto: Iniciar, Iniciar sin depurar o Ninguno.
- Seleccione Aplicar o Aceptar para aplicar y cerrar el cuadro de diálogo.
Usar puntos de interrupción
Estos puntos pueden ser determinados por el propio programador a lo largo del código fuente de su aplicación.
Un Breakpoint es un lugar en el programa en el que la ejecución se detiene.
Estos puntos se insertan en una determinada línea del código, entonces el programa se pone en funcionamiento y cuando el flujo de ejecución llega hasta él, la ejecución queda congelada y un puntero indica el lugar en el que la ejecución se ha detenido.
El depurador muestra los valores de las variables tal y como están en ese momento de la ejecución.
Cualquier discrepancia entre el valor actual y el valor que deberían tener supone una importante información para el proceso de depuración.
Ejecutar el código paso a paso
El depurador también nos permite ejecutar un programa paso a paso, es decir, línea por línea.
A través de esta herramienta podremos seguir el progreso de ejecución de nuestra aplicación y supervisar su funcionamiento.
Cuando la ejecución no es la esperada quizá estemos cerca de localizar un error o bug.
En ocasiones, si utilizamos métodos procedentes de la biblioteca estándar no necesitaremos hacer un recorrido paso a paso por el interior de éstos métodos, ya que es seguro que no contendrán errores internos y podremos ahorrar tiempo no entrando en su interior paso a paso.
El debugger ofrece la posibilidad de entrar o no en dicho métodos.
3 Depuración de errores con puntos de interrupción
Iniciar el depurador durante la prueba
Iniciar el depurador con Ctrl + Pausa
Se pueden utilizar varios métodos para iniciar el depurador durante la prueba del ejecutable:
- Pulsar Ctrl + Pausa.
La acción realizada una vez pulsadas las teclas Ctrl + Pausa (clic en un botón, . ) iniciará el depurador.
Este método puede utilizarse antes de pulsar un botón, por ejemplo.
Este método también se puede utilizar para iniciar el depurador cuando un proceso largo (que contiene sentencias Multitarea) parece entrar en un bucle sin fin.
Iniciar el depurador desde el editor
Iniciar el depurador desde el editor.
En este caso, realice las siguientes operaciones:
- Haga clic en el icono WINDEV de la barra de tareas.
- En "¿Desea detener la prueba?", seleccione "No".
- Vaya al panel "Debugger", grupo "Debug", y haga clic en el icono .
Iniciar el depurador mediante un punto de interrupción
También se puede incluir un punto de interrupción en el editor de código delante de la línea de código deseada.
El depurador se mostrará automáticamente cuando se ejecute la línea correspondiente.
Una vez que el depurador se está ejecutando:
- el editor de código WINDEV muestra la pestaña "Depurador". El texto de la pestaña aparece en rojo.
- la barra de estado se muestra en naranja.
Detener la prueba y controlar el proceso
Detener una prueba en WINDEV
Existen varios métodos para detener la prueba:
Método 1: Cierre la aplicación que se está probando.
WINDEV vuelve al editor que estaba abierto cuando se inició la prueba.
Método 2: Vuelva al editor con la barra de tareas (o pulse Alt + Tab) y confirme el final de la prueba.
WINDEV vuelve al editor que estaba abierto cuando se inició la prueba.
Si se han realizado cambios en la interfaz de usuario durante la prueba del proyecto (por ejemplo, cambiar el tamaño o mover los controles), al final de la prueba, WINDEV le permite cambiar la interfaz de las ventanas correspondientes.
Detener una prueba desde la línea de comandos
Para una parada controlada, pulsa Ctrl+C una vez para solicitar la cancelación.
La ejecución de pruebas puede finalizar el desmontaje.
Para finalizar inmediatamente, presione Ctrl+C de nuevo.
Códigos de salida
La aplicación se cierra con un código de salida distinto de cero si se produce un error, que es típico para la mayoría de los ejecutables.
Puede omitir un código de salida de específico mediante la opción de línea de comandos --ignore-exit-code.
También puede establecer opciones de línea de comandos que se aplican a un proyecto de prueba específico en el archivo de proyecto mediante la propiedad TestingPlatformCommandLineArguments MSBuild.
Un caso de uso común es para los proyectos de prueba que tienen todas las pruebas ignoradas, que normalmente se cerrarán con el código de salida 8 (la sesión de prueba ejecutó cero pruebas).
En este escenario, puede agregar lo siguiente bajo un PropertyGroup en su archivo de proyecto:
<TestingPlatformCommandLineArguments>$(TestingPlatformCommandLineArguments) --ignore-exit-code 8</TestingPlatformCommandLineArguments>
Finalizar o desvincular procesos
De forma predeterminada, al seleccionar Depurar>Detener depuración, el depurador finaliza o se desasocia de todos los procesos.
Si el proceso actual se inició en el depurador, se finalizará el proceso.
Si ha adjuntado el depurador al proceso actual, el depurador se desvincula del proceso y lo deja en ejecución.
Si empieza a depurar un proceso desde una solución de Visual Studio, adjunte a otro proceso que ya se está ejecutando y, a continuación, elija Detener depuración, finaliza la sesión de depuración.
El proceso que se inició en Visual Studio finaliza, mientras que el proceso asociado a sigue ejecutándose.
Para controlar la forma en que Detener depuración afecta a un proceso individual, en la ventana Procesos, haga clic con el botón derecho en un proceso y, a continuación, active o desactive la casilla Desasociar al detener la depuración.
| Comando | Descripción |
|---|---|
| Depuración>Detener depuración | A menos que se cambie el comportamiento en la ventana Procesos, los procesos iniciados por el depurador finalizan y los procesos adjuntos se desasocian. |
| Depurar>Finalizar todo | Se finalizan todos los procesos. |
| Depurar>Desprender Todo | El depurador se desvincula de todos los procesos. |
| Desasociar proceso | El depurador se desconecta del proceso seleccionado. Otros procesos mantienen su estado existente (suspendido o en ejecución). |
| Ventana de Procesos>Finalizar Procesos | El proceso seleccionado ha finalizado. Otros procesos mantienen su estado existente (suspendido o en ejecución). |
Depurar varios procesos
Al depurar una aplicación con varios procesos, los comandos de interrumpir, paso a paso y continuar del depurador afectan a todos los procesos de manera predeterminada.
Por ejemplo, cuando un proceso se suspende en un punto de interrupción, la ejecución de todos los demás procesos también se suspende.
Puede cambiar este comportamiento predeterminado para obtener más control sobre los destinos de los comandos de ejecución.
Controlar la suspensión de todos los procesos
Para cambiar si todos los procesos se suspenden cuando se interrumpe un proceso:
- En el panel Herramientas (o Depurar) >Opciones, expanda la sección Todas las opciones>de depuración>general.
- En el cuadro de diálogo Herramientas (o Depurar) >Opciones, expanda la sección Depuración>General.
- Active o desactive la casilla Interrumpir todos los procesos cuando se interrumpa un proceso.
| Comando | Opción seleccionada | Opción deseleccionada |
|---|---|---|
| Depurar>Pausar Todo | Todos los procesos se interrumpen. | Todos los procesos se rompen. |
| Depurar>Continuar | Todos los procesos se reanudan. | Todos los procesos suspendidos se reanudan. |
| Depurar>Entrar, Salir, o Reanudar | Todos los procesos se ejecutan durante los pasos actuales del proceso. A continuación, todos los procesos se interrumpen. | Pasos actuales del proceso. Los procesos suspendidos se reanudan. Los procesos en ejecución continúan. |
| Depurar>Entrar al proceso actual, Saltar el proceso actual o Salir del proceso actual | N/A | Pasos actuales del proceso. Otros procesos mantienen su estado existente (suspendido o en ejecución). |
| Punto de interrupción de la ventana de origen | Todos los procesos se interrumpen. | Solo se interrumpen los procesos de ventana de origen. |
| Ventana fuente Ejecutar hasta el cursor | Todos los procesos se ejecutan mientras el proceso de ventana de origen se ejecuta hasta el cursor y, a continuación, se interrumpe. A continuación, todos los demás procesos se interrumpen. | El proceso de ventana de origen se ejecuta al cursor. Otros procesos mantienen su estado existente (suspendido o en ejecución). |
| Proceso de> de la ventana Procesos | N/A | Interrupciones de proceso seleccionadas. Otros procesos mantienen su estado existente (suspendido o en ejecución). |
| Ventana de procesos>Continuar proceso | N/A | El proceso seleccionado se reanuda. Otros procesos mantienen su estado existente (suspendido o en ejecución). |
Cambiar entre procesos
Puede asociarse a varios procesos al depurar, pero solo hay un proceso activo en el depurador en un momento dado.
Puede establecer el proceso activo o actual en la barra de herramientas Ubicación de depuración o en la ventana Procesos.
Para cambiar entre procesos, ambos procesos deben estar en modo de interrupción.
Para establecer el proceso actual desde la barra de herramientas de ubicación de depuración:
- Para abrir la barra de herramientas Ubicación de depuración, seleccione Ver>Barras de herramientas>Ubicación de depuración.
- Durante la depuración, en la barra de herramientas Ubicación de depuración, seleccione el proceso que desea establecer como proceso actual en la lista desplegable Proceso.
Para establecer el proceso actual desde la ventana Procesos:
- Para abrir la ventana Procesos, durante la depuración, seleccione Depurar>procesos de>.
- En la ventana Procesos, el proceso actual se marca mediante una flecha amarilla.
- Haga doble clic en el proceso que desea establecer como proceso actual.
Al cambiar a un proceso, se establece como el proceso actual para fines de depuración.
Las ventanas del depurador muestran el estado del proceso actual y los comandos de paso a paso afectan solo al proceso actual.
Localizar la causa del error
La depuración de programas es una tarea fundamental en el desarrollo de software.
Cuando escribimos código en cualquier lenguaje de programación, hay altas probabilidades de que genere errores durante la ejecución.
Cuando un error no se descubre de un vistazo rápido al código fuente, algo que suele ocurrir cuando el número de líneas de código aumenta, es totalmente recomendable utilizar el depurador.
Al principio cuesta hacerse con la rutina de depurar, pero es el método más efectivo para encontrar errores.
Ningún programador puede ser eficiente si no utiliza convenientemente el depurador de código.
Compilación, enlazado y ejecución
Hay tres etapas por las que un programa pasa cuando éste es desarrollado y que pueden generar errores:
Compilación
Compilación: Una vez que hemos terminado de afinar un programa, solemos pasar generalmente cierto tiempo eliminando errores de compilación.
El compilador de Java mostrará una serie de chequeos en el código, sacando a la luz errores que pueden no apreciarse a simple vista.
Una vez que el programa es liberado de los errores de compilación, obtendremos de él algunos resultados visibles pero quizá no haga aún lo que queremos.
Enlazado
Enlazado: Todos los programas hacen uso de librerías de métodos y otros utilizan métodos generados por los propios programadores.
Un método es enlazado (linked) sólo cuando éste es llamado, durante el proceso de ejecución.
Pero cuando el programa es compilado, se realizan comprobaciones para saber si los métodos llamados existen y sus parámetros son correctos en número y tipo.
Así que los errores de enlazado son detectados durante la etapa de compilación.
Ejecución
Ejecución: Cuando el programa entra en ejecución, es muy frecuente que éste no funcione como se esperaba.
De hecho, es normal que el programa falle.
Algunos errores serán detectados automáticamente y el programador será informado, como acceder a una parte de un array que no existe (error de índices) por ejemplo.
Otros son más sutiles y dan lugar simplemente a comportamientos no esperados, debido a la existencia de errores ocultos (bugs) en el programa.
De ahí los términos bug y debugging.
Proceso de investigación
El problema de la depuración es que los síntomas de un posible error son generalmente poco claros, hay que recurrir a una labor de investigación para encontrar la causa.
La depuración de programas es algo así como ser doctor: existe un síntoma, hemos de encontrar la causa y entonces determinar el problema.
El trabajo de eliminación de errores puede ser interesante.
La depuración y la prueba suelen requerir una cantidad de tiempo considerable en comparación con el tiempo dedicado a la primera codificación del programa.
Pero no te preocupes, es normal emplear más tiempo en este proceso.
Relación entre pruebas y depuración
En el mundo del desarrollo ágil, donde la velocidad y la flexibilidad son claves, las pruebas y la depuración no son actividades separadas, sino dos caras de la misma moneda.
Ambas son esenciales para garantizar la calidad del software y mantener el ritmo del desarrollo.
Qué es la depuración
La depuración, en el contexto del desarrollo de software, se refiere al proceso de identificar, analizar y corregir errores o defectos en el código de un programa.
Este proceso es esencial para garantizar que el software funcione según lo esperado y cumpla con los requisitos establecidos.
Qué son las pruebas
Las pruebas son como una evaluación médica para el software.
Se realizan para verificar que cumple con los requisitos y funciona correctamente en diferentes escenarios.
Cómo se relacionan
Si estamos probando al software (prueba dinámica) podemos encontrar fallas que son causadas por defectos.
En este caso, el proceso de depuración se ocupa de encontrar la causa raíz de la falla (defecto), analizarlo y eliminarlo, o sea que las etapas son: reproducimos la falla, diagnosticamos (encontramos la causa raíz) y se corrige la causa.
Luego, se realizan las pruebas de confirmación para comprobar si las correcciones han resuelto el incidente que originó la falla.
Además y como una buena práctica, se pueden realizar pruebas de regresión con el fin de verificar si las correcciones han causado fallas en otras partes del objeto.
Si estamos probando al objeto de prueba (prueba estática) podemos encontrar directamente defectos, y en este caso la depuración se encarga de eliminar el defecto sin necesidad de reproducir o diagnosticar ya que no podrán causar fallas.
Pruebas de caja negra y caja blanca
Dentro de las pruebas a realizar se encuentran las conocidas como pruebas de caja negra o pruebas de caja blanca.
Técnica de pruebas de software en la cual la funcionalidad se verifica sin tomar en cuenta la estructura interna de código, detalles de implementación o escenarios de ejecución internos en el software.
Pruebas de sistemas software que se centran en los detalles procedimentales, por lo que su diseño está fuertemente ligado al código fuente.
Herramientas y prácticas de depuración
Depuradores integrados
¿Y cómo llevamos a cabo la depuración de nuestros programas?, pues a través del debugger o depurador del sistema de desarrollo Java que estemos utilizando.
Este depurador será una herramienta que nos ayudará a eliminar posibles errores de nuestro programa.
Podremos utilizar depuradores simples, como el jdb propio de Java basado en línea de comandos.
O bien, utilizar el depurador existente en nuestro IDE (en nuestro caso NetBeans).
Este último tipo de depuradores muestra los siguientes elementos en pantalla:
- El programa en funcionamiento,
- el código fuente del programa
- y los nombres y valores actuales de las variables que se seleccionen.
Otras herramientas
A modo de ejemplo, comparto cinco herramientas que permiten llevar a cabo el proceso de depuración (debug) de errores:
- Entorno de desarrollo integrado (IDE): Los IDEs como Visual Studio Code, IntelliJ IDEA o Eclipse ofrecen funcionalidades como resaltado de sintaxis, autocompletado y depuración integrada.
- Permiten ejecutar el código línea por línea, examinar variables y valores, e identificar la causa del error.
- Depuración remota: Permite depurar código que se ejecuta en un dispositivo diferente al que está usando el desarrollador.
- Esto es útil para depurar aplicaciones web, aplicaciones móviles o software embebido.
- Algunas herramientas populares para la depuración remota son Chrome DevTools, Android Debug Bridge (ADB) y GDB.
- Herramientas de análisis de código: Estas herramientas analizan el código fuente y detectan posibles errores, como errores de sintaxis, código muerto o fugas de memoria.
- Algunos ejemplos de herramientas de análisis de código son SonarQube, CodePro Analytix y Coverity.
- Herramientas de registro: Permiten registrar información sobre la ejecución del programa, como mensajes de error, valores de variables y llamadas a funciones.
- Esta información puede ser muy útil para identificar la causa de un error.
- Algunas herramientas de registro populares son Log4j, NLog y ELK Stack.
- Rastreadores de errores: Permiten registrar y gestionar errores y bugs.
- Facilitan la comunicación entre los desarrolladores y otros miembros del equipo, y permiten realizar un seguimiento del progreso de la resolución de errores.
- Algunos rastreadores de errores populares son Jira, Bugzilla y Mantis Bug Tracker.
Elegir una herramienta de depuración
Algunos consejos para elegir la herramienta adecuada:
- Considerar el tipo de software en desarrollo en cuanto a la tecnología a usar.
- Considerar las características y funcionalidades que se requieran.
- Considerar el presupuesto disponible.
- Probar diferentes herramientas para encontrar la que mejor se adapte a las necesidades del proyecto.
Cuando se requiere implementar una herramienta en un área se necesitan toda una serie de autorizaciones y cumplimentar ciertos protocolos internos, además de lograr un acuerdo entre las áreas involucradas que por lo general pueden ser infra, seguridad y arquitectura.
La mejor herramienta de debug es la que mejor se adapte a tus necesidades específicas.
No existe una herramienta única que sea la mejor para todos los casos.
Información de símbolos y archivos fuente
Para navegar por el código fuente de un proceso, el depurador necesita acceso a sus archivos de código fuente y archivos de símbolos.
Si no puede acceder a los archivos de un proceso, puede navegar mediante la ventana Desensamblado.
Procesos iniciados automáticamente
A veces, es posible que tenga que depurar el código de inicio de una aplicación iniciada por otro proceso.
Algunos ejemplos son los servicios y las acciones de configuración personalizadas.
Puede hacer que el depurador se inicie y se acople automáticamente a la aplicación.
- Inicie el Editor del Registro de Windows ejecutando regedit.exe.
- En el Editor del Registro, vaya a HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options.
- Seleccione la carpeta de la aplicación que desea iniciar en el depurador.
- Si la aplicación no aparece como una carpeta secundaria, haga clic con el botón derecho en Opciones de ejecución de archivos de imagen, seleccione Nueva>clave y escriba el nombre de la aplicación.
- O bien, haga clic con el botón derecho en la nueva clave del árbol, seleccione Cambiar nombre y escriba el nombre de la aplicación.
- Haga clic con el botón derecho en la nueva clave del árbol y seleccione Nuevo>valor de cadena.
- Cambie el nombre del nuevo valor de Nuevo valor #1 a debugger.
- Haga clic con el botón derecho sobre el depurador y seleccione Modificar.
- En el cuadro de diálogo Editar cadena, escriba vsjitdebugger.exe el cuadro Datos de valor y, a continuación, seleccione Aceptar.
Importancia de las pruebas y la depuración
Las pruebas y la depuración son fundamentales para el éxito de cualquier proyecto de software.
Sin ellas, el software puede tener errores que frustran a los usuarios, dañan la reputación del producto e incluso generan costos adicionales.
La fase de pruebas de una aplicación software es una etapa fundamental que en numerosas ocasiones puede suponer un tanto por ciento importante del tiempo de desarrollo del proyecto.
Esta fase es planificada por los desarrolladores/analistas de acuerdo a los requisitos establecidos en la etapa de análisis, por lo tanto, no se trata de una fase improvisada.
Prácticas para mejorar el proceso
- Automatización: Automatizar las pruebas te permite ejecutarlas con mayor frecuencia y rapidez, lo que ayuda a encontrar errores antes de que afecten a los usuarios.
- Colaboración: Es importante que los desarrolladores, testers y otros miembros del equipo trabajen juntos para identificar y corregir errores.
- Herramientas: Hay una gran cantidad de herramientas disponibles para ayudarte a realizar pruebas y depuración de forma más eficiente.
- Formación: Invertir en la formación de tu equipo en pruebas y depuración les ayudará a mejorar sus habilidades y ser más eficientes.
Integración en equipos ágiles
En un entorno ágil, el liderazgo es crucial para garantizar que las pruebas y la depuración se integren correctamente en el proceso de desarrollo.
Los líderes ágiles deben:
- Crear una cultura que valore la calidad: Es importante que todos en el equipo comprendan la importancia de las pruebas y la depuración.
- Fomentar la comunicación y la colaboración: Los líderes ágiles deben crear un entorno donde los desarrolladores, testers y otros miembros del equipo puedan trabajar juntos de forma efectiva.
- Proporcionar las herramientas y la formación necesarias: Los líderes ágiles deben asegurarse de que el equipo tenga las herramientas y la formación que necesitan para realizar pruebas y depuración de forma eficiente.
En resumen, las pruebas y la depuración son dos prácticas esenciales para el desarrollo de software de calidad.
Al integrarlas en el proceso de desarrollo ágil y fomentar una cultura de colaboración, los equipos pueden crear software que sea confiable, eficiente y que satisfaga las necesidades de los usuarios.
tags: #agregar #proyecto #ejecutable #para #depurar #test
Publicaciones populares:
- Filtro HEPA compatible con purificadores Duux
- Propiedades hidrorepelentes de la piel tratada
- Cómo dimensionar la depuradora para una piscina de 16.000 litros
- Guía práctica: usar agua destilada para los bornes de la batería del coche
- Filtro de aire de alto flujo para buggy 1100cc - Alibaba
