No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

¿Qué es la depuración?

24/29
Recursos

Hacer testing o depuración son dos actividades diferentes. Mientras el testing sirven para encontrar defectos, la depuración nos permitirá entender por qué esta sucediendo este defecto y que actividades están implicadas en el. Ambas pueden ir de la mano y son muy importantes.

Debugger: Es una herramienta que nos ayuda a encontrar todos estos errores ya sea de sintaxis, advertencias de seguridad, etc. Nos permite ejecutar línea por línea, detener la ejecución temporalmente, visualizar el contenido de las variables, cambiar el valor del entorno de ejecución para poder ver el efecto de una corrección en el programa.

Beneficiados

  • Programador: Requiere cada vez que programa ir depurando lo que ejecuta y escriba para que cumpla con su objetivo
  • Tester: Le ayuda a reducir el tiempo de análisis que después puede ser asignado para el desarrollador
  • Analista: Puede ser para analisis de encontrar información de un historial sobre cómo se comporta un sistema.

Objetivo: Vamos a analizar cómo se comporta el sistema, cómo se transfieren los datos, cómo se procesa la información. Tenemos la capacidad de tener nuestro código en cualquier momento para conocer cómo funciona.

Aportes 51

Preguntas 4

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Apuntes:

¿Qué es la Depuración?

“Uno de los principales problemas al desarrollar aplicaciones son los errores de ejecución”

Depurando (Debugging)

Actividad que sirve para encontrar, analizar y arreglar defectos.

Beneficiados

• Programador
• Tester
• Analista / Investigador

Objetivo de la depuración

Vamos a analizar lo que estamos observando de variables, cómo se comporta el sistema, cómo se transfieren los datos de un lugar a otro, cómo se procesa la información. La ventaja es que, cualquiera que usa un debugger, interno o externo, tiene la capacidad de tener en cualquier momento el código para observar cómo está pasando la información.

Errores

Oportunidades para mejorar.

Síntomas de errores

• Obtención de salida incorrecta
• Realización de operaciones fuera de lo normal
• No finalización del programa (ciclos infinitos, p. ej.)
• Caídas del programa

El depurador (debugger) permite:

• Ejecutar línea a línea
• Detener ejecución temporalmente
o En una línea de código concreta
o Bajo determinadas condiciones
• Visualizar el contenido de las variables
• Cambiar el valor del entorno de ejecución para poder ver el defecto de una corrección en el programa

Tipos de herramientas:

• Debugger
• Manual
• Local / Remota

Herramientas

• Mensaje de advertencia
• Estándares de compilación
• Verificación sintáctica y lógica

En el Curso de Python intermedio y en el Curso de Debugging con Chrome DevTools
Les enseñan a hacer debugging y ¡son buenísimos!

El primer bug de la historia:

El 9 de septiembre de 1945, operadores de la computadora de Harvard Mark II encontraron un error en la máquina. Al hacerle un seguimiento al mal funcionamiento para dar con la causa, se encontraron con una polilla atrapada en un relé de la computadora, al que ellos atribuyeron el problema.

Pycharm para Python. IDE + Debugger

Testing

Este se deriva de hacerle pruebas al sistema con el fin de encontrar errores, solamente encontrarlos.

Debugging

Esta es una técnica donde nosotros podemos identificar donde están los bugs y solucionarlos. Pero en esta fase nosotros ya sabemos cuales son esos bugs, ya que eso se hizo en el testing

Uno de los principales problemas al desarrollar aplicaciones son los errores de ejecucion.
Hacer testing o depuración son dos actividades diferentes. Mientras el testing sirven para encontrar defectos, la depuración nos permitirá entender por qué esta sucediendo este defecto y que actividades están implicadas en el. Ambas pueden ir de la mano y son muy importantes.
Debugging
Actividad que sirve para encontrar, analizar y arreglar errores
Debugger
Es una herramienta que nos ayuda a encontrar todos estos errores ya sea de sintaxis, advertencias de seguridad, etc. Nos permite ejecutar línea por línea, detener la ejecución temporalmente, visualizar el contenido de las variables, cambiar el valor del entorno de ejecución para poder ver el efecto de una corrección en el programa.
Beneficiados
Programador: Requiere cada vez que programa ir depurando lo que ejecuta y escriba para que cumpla con su objetivo
Tester: Le ayuda a reducir el tiempo de análisis que después puede ser asignado para el desarrollador
Analista: Puede ser para analisis de encontrar información de un historial sobre cómo se comporta un sistema.
Objetivo
Vamos a analizar cómo se comporta el sistema, cómo se transfieren los datos, cómo se procesa la información. Tenemos la capacidad de tener nuestro código en cualquier momento para conocer cómo funciona.
Errores
Oportunidades de mejorar
Sintomas de errores
Obtencion de salida incorrecta
Realizaccion de operaciones fuera de lo normal
No finalizacion del programa (ciclos infinitos, etc.)
Ciadas del programa
El depurador (debugger) permite:
Ejecutar linea a linea
Detener la ejecuccion temporalmente
En una linea de codigo concreta
Bajo determinadas condiciones
Visualizar el contenido de las variables
Cambiar el valor del entorno de ejecucion para poder ver el efecto de una correccion en el programa
Tipo de herramientas
Debugger
Manual
Local / Remota
¿que deben de tener las herramientas?
Mensajes de advertencia
Estandares de compilacion
Verificacion sintactica y logica

Sería genial ver un ejercicio de cómo un QA o Developer usan una herramienta para depurar código. Poder ver su paso a paso y cómo resuelve los problemas.

El testing sirve para encontrar defectos, el debugging sirve para localizarlos y entender cómo funciona el defecto.

Uno de los principales problemas al desarrollar aplicaciones son los errores de ejecución

Se dice que por cada 10 líneas de código, hay un defecto.

Los beneficiarios de hacer debugging son; el programador, el tester y el analista o investigador.

Síntomas de errores:

  • Obtención de salida de errores
  • Realización de operaciones fuera de lo normal
  • No finalización del programa (ciclos infinitosm etc)
  • Caídas del programa

El debugger permite:

  • Ejecutar línea a línea
  • Detener la ejecución temporalmente
    • En una línea de código concreta
    • Bajo determinadas condiciones
  • Visualizar el contenido de las variables
  • Cambiar el valor del entorno de ejecución para poder ver el efecto de una corrección en el programa

Herramientas:

  • Mensajes de advertencia
  • Estándares de compilación
  • Verificación sintáctica y lógica

Mockito y JUnit para Java

Visual studio code cuenta con un Debugger. Antes de conocerlo, lo hacía imprimiendo lo que mandaba en cada capa de un portal web con arq. MVC.

En el Curso de Python intermedio y en el Curso de Debugging con Chrome DevTools
Les enseñan a hacer debugging y ¡son buenísimos!

Qué es la DEPURACIÓN?

Hacer testing o depuración son dos actividades diferentes. Mientras el testing sirven para encontrar defectos, la depuración nos permitirá entender por qué esta sucediendo este defecto y que actividades están implicadas en el. Ambas pueden ir de la mano y son muy importantes.

Debugger: Es una herramienta que nos ayuda a encontrar todos estos errores ya sea de sintaxis, advertencias de seguridad, etc. Nos permite ejecutar línea por línea, detener la ejecución temporalmente, visualizar el contenido de las variables, cambiar el valor del entorno de ejecución para poder ver el efecto de una corrección en el programa.

Beneficiados

  • Programador: Requiere cada vez que programa ir depurando lo que ejecuta y escriba para que cumpla con su objetivo
  • Tester: Le ayuda a reducir el tiempo de análisis que después puede ser asignado para el desarrollador
  • Analista: Puede ser para analisis de encontrar información de un historial sobre cómo se comporta un sistema.

Objetivo: Vamos a analizar cómo se comporta el sistema, cómo se transfieren los datos, cómo se procesa la información. Tenemos la capacidad de tener nuestro código en cualquier momento para conocer cómo funciona.

Detecta Síntomas de Errores:

  1. Obtención de salida incorrecta
  2. Realización de operaciones fuera de lo normal
  3. No finalización del programa(ciclos infinitos p. ej).
  4. Caídas del programa

Entonces, el depurador (debugger) permite:

  • Ejecutar linea a linea
  • Visualizar el contenido de las variables
  • Cambiar el valor del entorno de ejecución para poder ver el efecto de una correción en el programa
  • Detener la ejecucion temporalmente(En una linea de código incorrecta, o bajo determinadas condiciones.

Algunos elementos no se acomodan correctamente en tu pagina web, o ejecutas una acción que no devuelve un mensaje de error o confirmación. Al contrario, recibes mensajes de confirmacion pero los datos no se actualizan.

Tipos de herramientas:

Debugger

Manual

Local / Remota

Cosas a observar y prestar atención:

  • Mensajes de Advertencia
  • Estándares de compilación
  • Verificación sintáctica y lógica

En el equipo de trabajo ocupamos una técnica de depuración es el LOGS , ayuda muchísimo.

Yo lo uso en Py Importando la libreria unittets y su metodo TestCase se encarga de analizar todo el codigo si es nesesario o modulo por modulo como lo programes

Este mensaje me apareció al tratar de publicar un comentario en esta sección.

(https://static.platzi.com/media/user_upload/mensaje_de_error-f8088027-dfe4-495a-9f21-10dd3b022466.jpg))

Eclipse cuenta con un debbugin que se usaba para ver el programa corriendo linea por linea y nos servia para identificar donde estuvo el error.

Hacer testing o depuración son dos actividades diferentes. Mientras el testing sirven para encontrar defectos, la depuración nos permitirá entender por qué esta sucediendo este defecto y que actividades están implicadas en el. Ambas pueden ir de la mano y son muy importantes.

Debugger: Es una herramienta que nos ayuda a encontrar todos estos errores ya sea de sintaxis, advertencias de seguridad, etc. Nos permite ejecutar línea por línea, detener la ejecución temporalmente, visualizar el contenido de las variables, cambiar el valor del entorno de ejecución para poder ver el efecto de una corrección en el programa.

Beneficiados

Programador: Requiere cada vez que programa ir depurando lo que ejecuta y escriba para que cumpla con su objetivo
Tester: Le ayuda a reducir el tiempo de análisis que después puede ser asignado para el desarrollador
Analista: Puede ser para analisis de encontrar información de un historial sobre cómo se comporta un sistema.
Objetivo: Vamos a analizar cómo se comporta el sistema, cómo se transfieren los datos, cómo se procesa la información. Tenemos la capacidad de tener nuestro código en cualquier momento para conocer cómo funciona.

La depuración es diferente al testing, la depuración nos permite identificar como están ocurriendo los errores.

**Quien se beneficia **
-Tester
-Analistas
-Programador

El debugging es nos permite analizar los errores para encontrar sus causas y con esa información saber donde se deben de hacer los correcciones.

En la depuración se puede observar el flujo de los datos en un proceso de nuestra aplicación.

**
SITOMAS DE ERRORES**

-Obtención de salida incorrecta
-Realización de operaciones fuera de lo normal
-No finalización del programa
-Caída del programa

EL DEPURADOR PERMITE

-Ejecuar linea a linea
-Detener ejecución
-Visualizar el contenido de las variables
-Cambiar el valor del entornno de ejecución para poder ver el efecto de una corrección en el programa

Debugger: Es una herramienta que nos ayuda a encontrar todos estos errores ya sea de sintaxis, advertencias de seguridad, etc. Nos permite ejecutar línea por línea, detener la ejecución temporalmente, visualizar el contenido de las variables, cambiar el valor del entorno de ejecución para poder ver el efecto de una corrección en el programa.

Beneficiados

Programador: Requiere cada vez que programa ir depurando lo que ejecuta y escriba para que cumpla con su objetivo
Tester: Le ayuda a reducir el tiempo de análisis que después puede ser asignado para el desarrollador
Analista: Puede ser para analisis de encontrar información de un historial sobre cómo se comporta un sistema.
Objetivo: Vamos a analizar cómo se comporta el sistema, cómo se transfieren los datos, cómo se procesa la información. Tenemos la capacidad de tener nuestro código en cualquier momento para conocer cómo funciona.

Tambien esta la tecnica del patito de hule. Consiste en hablarle al pato y explicarle en voz alta que es lo que hace tu codigo paso por paso… si funciona haha

VS Code + python utilizando Page Object Model

Depuración: Actividad que sirve para encontrar, analizar, y arreglar defectos.
"Uno de los principales problemas al desarrollar aplicaciones son los errores de ejecución."
Errores: Oportunidades para mejorar
Síntomas:

  • Salida incorrecta
  • Operaciones fuera de lo normal
  • No finaliza el programa
  • Caídas del programa.

Herramientas:

  • Mensajes de advertencia
  • Estándares de compilación
  • Verificación sintáctica y lógica

Herramientas: VS Code + python utilizando Page Object Model (POO)

yo uso DevTools de google chorme la cual reconoce el telefono en modo depuracion con ayuda de el adb o android studio

Yo uso IntelliJ Idea que tiene incluida la opción de ejecutar con debug, cuando inicié en este mundo hacía debug con el famoso System.out.print de Java.

Una sugerencia es encontrar software que recorren el código para encontrar defectos, la mayoría no son open source, pero valen la pena la implementación en las empresas

yo utilizo la depuracion manual con el print o select en SQL.

La herramienta por excelencia en lenguajes web es la consola del navegador.

Xdebug en [email protected] usando MacOS Big Sur

Me gustaría ver más ejemplos de tipos de herramientas local / remota

Vs code tiene una herramienta preinstalada par hacer debugging 🐞
Funciona bien con Python

yo personalmente para hacer debuggin, uso en lo web las herramientas de firefox y chrome, para mi trabajo de seguridad uso el debugger x64dbg

El debugin o depuración es una herramienta muy util para desarrolladores, tester y analistas de seguridad.

Pero dicha herramienta no garantiza que los errores vayan a desaparecer, solamente garantiza la revisión de bloques de codigos en particular.

Que pasa cuando el debugging parece no estar funcionando?
Pueden generarse estos escenarios:

Obtención de salida incorrecta.
Realización de operaciones fuera de lo normal.
No hay finalización del programa
Caídas del programa.

El debugger o depurador permite:

Ejecutar línea a línea
Detener la ejecución temporalmente
Bajo determinadas condiciones
En una linea de código concreta
Visualizar el contenido de las variables
Cambiar el valor del entorno de ejecución para poder ver el efecto de una corrección en el programa.

El testing sirve para encontrar defectos y la depuración es una herramienta con la cual localizo y entiendo como están funcionando los defectos.

debugging
The process of finding, analyzing and removing the causes of failures in software.

Yo hago depuración mas que todo a nivel de bases de datos, es de mucha ayuda cuando no entiendes como funciona la aplicación y armar escenarios de pruebas.

Actualmente soy nueva aprendiendo sobre el como hacer pruebas, pero me gustaría saber cual es la mejor herramienta para realizar la depuración.

TestStand ayuda a depurar aplicaciones de pruebas más rápido con herramientas integradas de depuración para inspeccionar e investigar código. Con TestStand se reproduce y se implementa de manera eficiente para automatizar.

las herramientas para hacer debugger nos permiten tener mensajes de alerta, tener mejoras continua y permite una validación mas eficaz del codigo

Sentry es una excelente herramienta para conocer errores que le suceden al usuario.

visual studio empresarial es una herramina bastante completa, especialmente a la hora de realizar tareas de debugger, incluye paquetes nuGet que mejoran la tarea, realiza un seguimiento y control de variables locales, personales. Hace la tarea en modo local y de capas (si tienes los permisos).

Como tester uso la herramienta que trae el mismo explorador sobre el cual esté probando. Me ayuda revisando si alguna petición salió o no del cliente, si obtuve respuesta, cual respuesta, que datos se envían en las solicitudes… etc

Android Studio
Charles Proxy

En Desarrollo web el inspecionador algunas veces es tu mejor debuger

Las herramientas de Debugging nativas de VSCode, me han ayudado incluso a aprender la sintaxis y uso de diversas funciones.

En desarollo web, el inspeccionador ayuda mucho para realizar revisión manual, así cómo el registrar información en los logs.

Aprendiendo términos muy diferentes.

Yo uso el debugger de VSCode 😃

Cuando hacía pruebas de caja blanca usaba el debugger de cada IDE de desarrollo como Eclipse, Visual Studio o SQL Server.

El mismo navegador es muy buena herramienta para hacer debugs!

No sabia que podía haber debuggers en el propio lenguaje de programación

En mi personal punto de visto, cuando yo veo un mensaje de advertencia, es cuando le hago mas caso