AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

¡Nueva funcionalidad de WINDEV 28!
  • Esta lección abarcará los siguientes temas
  • ¿Qué es una auditoría?
  • Auditoría estática
  • Control Tabla (UI)
  • Procedimiento no ejecutado
  • Elemento huérfano
  • Limpiar el proyecto
  • Auditoría dinámica
Lección 6.2. Auditorías del proyecto
Esta lección abarcará los siguientes temas
  • ¿Qué es una auditoría y cuál es su propósito?
  • Iniciar y analizar la auditoría estática.
  • Iniciar y analizar la auditoría dinámica.
Duración de la lección

Tiempo estimado: 15 min
Lección anteriorTabla de contenidoSiguiente lección
¿Qué es una auditoría?
Las auditorías proporcionan un conjunto de funcionalidades que permiten:
  • mejorar automáticamente la calidad y el rendimiento de un proyecto.
  • controlar cómo se pone en producción.
Hay dos tipos de auditorías disponibles:
  • La auditoría estática. La auditoría estática analiza un proyecto y sus elementos. Esta auditoría se realiza desde el editor del proyecto.
  • La auditoría dinámica. La auditoría dinámica analiza el comportamiento de un proyecto durante su ejecución. Esta auditoría puede realizarse en modo de prueba o en el entorno de producción.
Realizaremos estas auditorías en el proyecto "WD Optimization".
Auditoría estática
La auditoría estática es una funcionalidad del entorno que permite analizar el código fuente de un proyecto con el fin de detectar diferentes problemas y proponer mejoras.
  • Inicie la auditoría estática en el proyecto "WD Optimization":
    1. En la pestaña "Proyecto", en el grupo "Auditoría y rendimiento", despliegue "Auditoría estática" y seleccione "Iniciar auditoría estática".

      Nota

      La auditoría estática del proyecto también puede iniciarse desde el cuadro de mando del proyecto, a través del widget "Auditoría estática y Compilación".
      Para ello:
      • active el widget si es necesario (haga clic en el enlace "Haga clic para reactivar").
      • haga clic en la flecha.
        Widget de auditoría estática
    2. El asistente se abre. Vamos a definir el objetivo de la auditoría estática.
      Auditoría estática
    3. Seleccione "Ejecutar auditoría estática en todo el proyecto".
    4. Valide el asistente.
    5. El reporte de auditoría se abre:
      Reporte de auditoría
La auditoría estática incluye:
  • La auditoría estática del proyecto.
  • La auditoría del contenido de la biblioteca de la aplicación.
  • La auditoría del contenido de la instalación.
  • Veamos con más detalle los puntos presentados en el reporte.

Control Tabla (UI)

En nuestro proyecto, la auditoría indica que un control Tabla utiliza el modo de búsqueda estándar. Este modo ('Comienza por') busca los elementos que empiezan por los caracteres especificados. La auditoría recomienda utilizar un filtro de tipo 'Contiene' para la búsqueda predeterminada.
El ciclo de vida de algunos proyectos WINDEV dura varios años. A menudo, estos proyectos utilizan características útiles en el momento en que se creó el proyecto (tecnologías que ahora están obsoletas, o que han sido reemplazadas por alternativas más seguras), opciones que se han vuelto inútiles o ineficientes.
En este ejemplo, el control Tabla utiliza una búsqueda de tipo 'Comienza por' que puede reemplazarse por una búsqueda de tipo 'Contiene', que es mucho más común y práctica para los usuarios.
  • Para solucionar este problema:
    1. Haga clic en el botón [...] para obtener más información. Una ventana con sugerencias para mejorar la UI se abre.
      Mejoras en la UI
    2. En la ventana "WIN_UnusedWindow", el control "TABLE_Product" puede mejorarse. Esta ventana permite:
      • realizar la mejora ("Mejorar"). En este caso, la mejora se realiza inmediatamente.
      • ignorar la mejora ("Ignorar"). En este caso, la sugerencia de mejora no volverá a mostrarse.
    3. En nuestro ejemplo, haremos este cambio. Haga clic en "Mejorar".
    4. Para aplicar todas las mejoras seleccionadas (solo una en nuestro ejemplo), haga clic en "Confirmar acciones".
  • En la ventana de auditoría estática, haga clic en el botón "Actualizar" para actualizar el reporte de auditoría.

Procedimiento no ejecutado

En nuestro proyecto, la auditoría indica que un procedimiento nunca se ejecuta.
En proyectos grandes, es posible que desee crear uno o varios procedimientos para realizar un proceso y que, tras una reorganización del código, el procedimiento ya no se utilice pero permanezca en el proyecto. Los procedimientos no utilizados sobrecargan innecesariamente los recursos distribuidos a los usuarios finales.
  • Para solucionar este problema:
    1. Haga clic en el botón [...] para obtener más información. La ventana que contiene la lista de código muerto se abre.
      Procedimiento no ejecutado - Código muerto
    2. Nunca se llama al procedimiento "ObsoleteProcedure". Esta ventana permite:
      • especificar que el procedimiento se sigue utilizando (botón "Marcar como útil"). En este caso, el procedimiento no se volverá a tener en cuenta en la auditoría.
      • eliminar el procedimiento si no se utiliza (botón "Eliminar").
      • ver el procedimiento (botón "Ver").
      • buscar usos en las cadenas (botón "Buscar").
    3. En nuestro caso, este procedimiento no se utiliza, haga clic en "Eliminar".
    4. Una ventana le pide que confirme la eliminación. Haga clic en "Eliminar" para confirmar la eliminación.
    5. Cierre la ventana de código muerto (haga clic en la "X" de la esquina superior derecha).
  • En la ventana de auditoría estática, haga clic en el botón "Actualizar" para actualizar el reporte de auditoría.

Elemento huérfano

La auditoría indica que nuestro proyecto contiene un elemento huérfano.
Al igual que con los procedimientos, puede que se creen ventanas o reportes para realizar una prueba rápida, y luego se guarden y se olviden. La presencia de elementos huérfanos en el ejecutable consume de manera innecesaria los recursos distribuidos a los usuarios finales.
  • Para solucionar este problema:
    1. Haga clic en el botón [...] para obtener más información. La ventana que muestra los elementos huérfanos se abre.
      Elemento huérfano
    2. Nunca se llama a la ventana "WIN_UnusedWindow". La ventana que muestra la lista de elementos huérfanos permite:
      • especificar que el elemento se sigue utilizando (botón "Marcar como útil"). En este caso, la ventana no se volverá a tener en cuenta en la auditoría. Esta opción puede ser útil cuando se utiliza una ventana de prueba específica para el desarrollo, por ejemplo.
      • eliminar el elemento si realmente no se utiliza (botón "Eliminar").
      • ver el elemento (botón "Ver").
      • buscar usos en las cadenas (botón "Buscar").
    3. En este caso, la ventana "WIN_UnusedWindow" no se utiliza, haga clic en "Eliminar".
    4. Cierre la ventana de elementos huérfanos (haga clic en la "X" de la esquina superior derecha).
  • En la ventana de auditoría estática, haga clic en el botón "Actualizar" para actualizar el reporte de auditoría.

Limpiar el proyecto

Nuestro proyecto contiene varios archivos que no se utilizan. Puede limpiar el proyecto para conservar solo los elementos necesarios. El ejecutable y la instalación cliente no se sobrecargan con imágenes no utilizadas, archivos externos (u otros).
  • Para solucionar este problema:
    1. Haga clic en el botón [...] para obtener más información.
    2. El asistente de limpieza del proyecto se abre. Este asistente muestra los archivos no utilizados que se pueden eliminar.
    3. Pase a la etapa siguiente.
    4. Seleccione el tipo de limpieza. Es posible:
      • crear un archivo zip con los archivos no utilizados.
      • mover los archivos no utilizados a un directorio específico.
    5. Valide la opción propuesta de forma predeterminada y vaya a la etapa siguiente.
    6. Finalice el asistente.
El proyecto se ha optimizado siguiendo todos los consejos de la auditoría estática.
La auditoría estática permite obtener el estado general del código fuente del proyecto. Nuestro consejo: ¡realícela de forma regular!
Veamos qué ocurre en tiempo de ejecución cuando se inicia la auditoría dinámica.
Auditoría dinámica
La auditoría dinámica permite analizar la ejecución de la aplicación. La auditoría detecta problemas como:
  • Consumo excesivo de la memoria,
  • Lentitud de los algoritmos utilizados,
  • Errores "ocultos" en tiempo de ejecución,
  • etc.
Una auditoría dinámica puede realizarse en un entorno de pruebas o en una aplicación real.
El proyecto "WD Optimization" contiene una ventana específica que provoca errores que pueden ser detectados por la auditoría dinámica.
Vamos a iniciar la auditoría dinámica y la prueba del proyecto al mismo tiempo.
  • Para iniciar la auditoría dinámica en el proyecto "WD Optimization":
    1. En la pestaña "Proyecto", en el grupo "Modo de prueba", despliegue "Modo de prueba" y seleccione "Depurar proyecto con la auditoría activada". La prueba del proyecto inicia.

      Nota

      La auditoría dinámica del proyecto también puede iniciarse desde el cuadro de mando del proyecto, a través del widget "Auditoría dinámica". Para ello:
      • active el widget si es necesario (haga clic en el enlace "Haga clic para reactivar").
      • despliegue la flecha y seleccione "Prueba detallada del proyecto (Go)".
        Widget en el cuadro de mando
      Observación: La auditoría dinámica se ejecuta automáticamente cada vez que se prueba la aplicación mediante la opción GO. Un reporte se muestra automáticamente en el cuadro de mando del proyecto:
      Widget en el cuadro de mando
    2. Haga clic en el botón "Test window of dynamic audit".
    3. Haga clic en los diferentes botones de la ventana. Al final de cada proceso, se muestra un mensaje toast para indicar que el proceso ha terminado. Para la opción "Aserción y Excepción", se muestra una aserción: haga clic en "Continuar" para ver el mensaje como un toast.
    4. Detenga la prueba de la aplicación.
    5. La ventana de reporte de la auditoría dinámica se abre.
Reporte de la auditoría dinámica
  • Analicemos esta ventana:
    • La parte superior de la ventana le permite elegir las opciones de visualización de los datos. Es posible:
      • seleccionar una visualización cronológica (basada en el orden en que ocurrieron los eventos), o una visualización general para agrupar los diferentes tipos de problemas. En este caso, la línea de tiempo permite ver la posición e importancia de los problemas.
      • seleccionar el tipo de problema que se mostrará (error, aserción, etc.). Esto le permite centrarse en los errores más graves, etc.
    • La parte inferior de la ventana muestra los diferentes eventos que ocurrieron y que pueden causar problemas en la aplicación.
  • En este ejemplo, la auditoría dinámica detecta varios problemas:
    • Un texto excesivamente largo asignado mediante programación,
    • Un bucle SWITCH para el que no se ejecuta ningún CASE,
    • Se desencadena una aserción en lugar de una excepción,
    • Apertura de un archivo que no existe,
    • La asignación de un archivo de imagen que no existe a un control Imagen.
    Por cada problema, un botón "... " permite acceder a los detalles del evento. Si el evento está relacionado con una línea de código específica, el botón le permite abrir el editor de código directamente en el lugar correspondiente para solucionar el problema.
  • Cierre la ventana de la auditoría dinámica.

Nota

La auditoría dinámica de un proyecto también se puede realizar cuando se implementa una aplicación en los equipos de los usuarios.
Es posible:
  • modificar la aplicación y utilizar la función dbgEnableAudit para iniciar la auditoría.
  • utilizar un archivo de texto en el directorio de la aplicación. Esta solución le permite no modificar el ejecutable. Simplemente cree un archivo en el mismo directorio y con el mismo nombre que el ejecutable, pero con una extensión ".WX".
La auditoría genera un archivo ".wdaudit", este archivo debe cargarse en el entorno de desarrollo para analizar el resultado.
Para obtener más información, consulte Auditoría dinámica.
Lección anteriorTabla de contenidoSiguiente lección
Versión mínima requerida
  • Versión 28
Comentarios
Haga clic en [Agregar] para publicar un comentario