miércoles, 27 de agosto de 2014

Generic Controls Test: Traza de tiempos por controles

Generic Controls Test

 Traza de tiempos por controles 

Herramienta que permite el trazado de tiempos de ejecución de controles basados en la interfaz generic.asp, con el objetivo de facilitar al desarrollador el análisis de impacto de los controles individualmente.


Para la versión de Doors 7.0.0.233, se incluye el asp GenericControlsTest.asp y RenderFunctionsControl.asp, que tras su configuración permite identificar el tiempo de ejecución de rendering individual de los controles de un documento determinado.

Para configurar esta característica de evaluación de tiempos, debe seguir los siguientes pasos

Dos maneras de  ejecutar esta configuración.

Modificando la dirección de un determinado documento.
Para esta configuración es necesario obtener la dirección url del documento abierto
ejemplo:
presionado botón derecho sobre el documento opción Propiedades obtenemos la url como muestra la Figura N° 1.



y reemplazar generic.asp por genericControlsTest.asp quedando :


Modificando el formulario
Identificar el formulario al que pertenece el documento al cual se le harán las mediciones de sus controles.
Este paso se puede realizar consultando Propiedades de la carpeta en la solapa Tipo de Carpeta,  como muestra la Figura N°2, donde figura el nombre del formulario.
Figura N° 2


Luego de identificarlo, dirigirse dentro de Carpetas de Sistema a la carpeta Forms, como muestra la Figura N°3 , y editar formulario correspondiente
Figura N° 3


Modificar la dirección URL Raw que presenta el formulario (Figura N° 4), reemplazando :
[APPVIRTUALROOT]/forms/generic.asp

por

[APPVIRTUALROOT]/forms/genericControlsTest.asp

Figura N° 4

IMPORTANTE:
Tener en cuenta que esta modificación,basada en la modificación de la url modificando el form va a afectar a todos los documentos de esta carpeta que sean abiertos por todos los usuarios.

Lectura de tiempos.

Independientemente de la configuración elegida,al abrir el documento con esta modificación aparece un contador de tiempo por control (inclusive los no visibles), ver Figura N° 1, que permite identificar con un recuadro rojo, los controles que demoran más tiempo y de esta manera poder trabajar sobre su implementación.

Nota: Los controles tienen tiempos diferentes dado que cada control en su lógica, puede requerir mayor procesamiento, que implica una demora superior respecto de otro, pero esto de ninguna manera demuestra una mala implementación sino simplemente la identificación de los que implican más tiempo.

Figura N° 3

(Control origen tuvo un tiempo de renderizado, es decir su lógica de negocio mas el dibujado del control) de 0,34 segundos.)

Además de esta característica , es posible establecer el tiempo utilizado para resaltar el tiempo.
Para esto es necesario agregar en la url un parámetro maxTime indicando el tiempo a utilizar como medida , por ejemplo


Esta configuración implica el resaltado de todos los controles que en su construccion y ejecucion de eventos ScriptBeforeRender demora un tiempo superior a 0,400 ms

No hay comentarios:

Publicar un comentario