"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Utilidad de depuración de Python

Utilidad de depuración de Python

Publicado el 2024-08-07
Navegar:357

Python Debugging utility

pdbdondeami

Objetivo

Este es un módulo de utilidad que ayuda a depurar fuentes de Python con las siguientes funciones

  • quién soy
  • Dónde estoy
  • Quien me llamo
  • llamadoárbol
  • Quién es papi

¿Dónde se usa?

Este módulo ayuda a los desarrolladores de varias maneras clave, especialmente cuando se trata de depurar y mantener el código. Estos son los principales beneficios:

1. Depuración:

  • Identificación de errores: Cuando se produce un error, conocer el número de línea y el archivo exactos puede reducir significativamente el tiempo dedicado a buscar la causa. Al llamar a estas funciones en los mensajes de error, los desarrolladores pueden identificar rápidamente dónde surgió un problema.
  • Trazabilidad: Al registrar el número de línea y el nombre del archivo, los desarrolladores pueden rastrear la ruta de ejecución del programa, especialmente cuando se trata de bases de código complejas o proyectos de múltiples archivos.

2. Registro:

  • Registros detallados: Incluir números de línea y nombres de archivos en los mensajes de registro proporciona un contexto detallado, lo que hace que los registros sean más informativos y más fáciles de interpretar.
  • Monitoreo automatizado: En sistemas grandes, las herramientas de monitoreo automatizado pueden usar estos detalles para marcar partes específicas del código que causan problemas con frecuencia, lo que ayuda en el mantenimiento proactivo.

3. Aserciones y compilaciones de depuración:

  • Aserciones: El uso de macros como afirmar () junto con whoami, dondeami, quién me llamó, llamado árbol y quién es papá ayuda a detectar errores lógicos durante el desarrollo. Cuando falla una aserción, imprime el número de línea y el nombre del archivo, lo que facilita la depuración.
  • Compilación condicional: Para compilaciones de depuración, se puede incluir información de diagnóstico adicional usando estas macros sin afectar las compilaciones de lanzamiento.

4. Documentación y Mantenimiento:

  • Revisiones de código: Durante las revisiones de código, tener registros de errores detallados puede ayudar a los revisores a comprender el flujo e identificar posibles áreas problemáticas de manera más eficiente.
  • Mantenimiento: Para el mantenimiento a largo plazo, tener informes de errores detallados con números de línea y nombres de archivos ayuda a los nuevos desarrolladores a comprender y solucionar problemas sin necesidad de estar profundamente familiarizados con todo el código base.

Al aprovechar whoami, Whereami, WhoCallme, Calltree y Whosdaddy, los desarrolladores pueden crear código más sólido, fácil de mantener y depurar.

¿Cómo usarlo?

from pdbwhereami import whoami, whereami, whocalledme, calledtree, whosdaddy

def debug_utility():
    whoami()
    whoami("I am in test_whoami function")

    print()

    whereami()
    whereami("I am in test_whereami")
    whereami(obsolete_path = True)
    whereami(path_depth=6)

    print()

    whocalledme()
    whocalledme(obsolete_path = True)
    whocalledme(path_depth=6)

    print()

    calledtree()
    tstr = calledtree(verbose=False)
    print(tstr)
    calledtree(tree_depth=1)
    calledtree(tree_depth=2)

    print()
    whosdaddy()

debug_utility()

producción

[debug_utility] ->
[debug_utility] -> I am in test_whoami function

[whereami/main.py:71]:debug_utility ->
[whereami/main.py:72]:debug_utility -> I am in test_whereami
[/home/bhagavan/whereami/main.py:73]:debug_utility ->
[/home/bhagavan/whereami/main.py:74]:debug_utility ->

[whereami/main.py:93]: ->
[/home/bhagavan/whereami/main.py:93]: ->
[/home/bhagavan/whereami/main.py:93]: ->

#1[/home/bhagavan/whereami/main.py:84]:debug_utility    ] ->

Instalación

Usando pepita

pip install pdbwhereami

Usando fuentes

git clone https://github.com/bhagavansprasad/pdbwhereami.git
cd pdbwhereami
pip insall ./
Declaración de liberación Este artículo se reproduce en: https://dev.to/bhagavan_prasad_d1496a96a/python-debugging-utility-kd1?1 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3