Saltar al contenido principal

Usar el depurador

Cómo usar el depurador a nivel de fuente de DevTools.

Primeros pasos

#

DevTools incluye un depurador completo a nivel de fuente, compatible con puntos de interrupción, ejecución paso a paso e inspección de variables.

Cuando abres la pestaña del depurador, deberías ver el código fuente del punto de entrada principal de tu app cargado en el depurador.

Para explorar más fuentes de tu aplicación, haz clic en Libraries (arriba a la derecha) o presiona Ctrl / Cmd + P. Esto abre la ventana de librerías y te permite buscar otros archivos fuente.

Captura de pantalla de la pestaña del depurador

Establecer puntos de interrupción (breakpoints)

#

Para establecer un punto de interrupción, haz clic en el margen izquierdo (la regla de números de línea) en el área de código fuente. Hacer clic una vez establece un punto de interrupción, el cual también debería aparecer en el área Breakpoints a la izquierda. Hacer clic de nuevo elimina el punto de interrupción.

Las áreas de pila de llamadas y variables

#

Cuando tu aplicación encuentra un punto de interrupción, se pausa allí, y el depurador de DevTools muestra la ubicación de ejecución pausada en el área de código fuente. Además, las áreas Call stack y Variables se pueblan con la pila de llamadas actual para el isolate pausado, y las variables locales para el frame seleccionado. Seleccionar otros frames en el área Call stack cambia el contenido de las variables.

Dentro del área Variables, puedes inspeccionar objetos individuales desplegándolos para ver sus campos. Pasar el cursor sobre un objeto en el área Variables llama a toString() para ese objeto y muestra el resultado.

Depuración paso a paso por el código fuente

#

Cuando se pausa, los tres botones de paso a paso se activan.

  • Usa Step in para entrar en una invocación de método, deteniéndote en la primera línea ejecutable en ese método invocado.
  • Usa Step over para pasar sobre una invocación de método; esto avanza a través de las líneas de código fuente en el método actual.
  • Usa Step out para salir del método actual, sin detenerte en ninguna línea intermediaria.

Además, el botón Resume continúa la ejecución regular de la aplicación.

Salida de consola

#

La salida de consola para la app en ejecución (stdout y stderr) se muestra en la consola, debajo del área de código fuente. También puedes ver la salida en la Logging view.

Interrumpir en excepciones

#

Para ajustar el comportamiento de detenerse en excepciones, cambia el desplegable Ignore en la parte superior de la vista del depurador.

Interrumpir en excepciones no capturadas solo pausa la ejecución si el punto de interrupción es considerado no capturado por el código de la aplicación. Interrumpir en todas las excepciones causa que el depurador se pause independientemente de si el punto de interrupción fue capturado o no por el código de la aplicación.

Problemas conocidos

#

Al realizar un Hot Restart para una aplicación Flutter, los puntos de interrupción del usuario se limpian.

Otros recursos

#

Para obtener más información sobre depuración y perfilado, consulta la página de Debugging.