Depuración del código de proxy

La depuración del código de proxy es una parte esencial del proceso de desarrollo del proxy para la determinación de problemas. El código proxy que contiene el archivo JAR o el archivo de conjunto .Net con la extensión .dll se carga en el proceso de la aplicación sometida a la prueba (AUT). Para depurar el código proxy, adjunte el depurador respectivo al proceso de la AUT después de que los archivos binarios de proxy se hayan cargado en la AUT.

Preparación del entorno de depuración

Por qué y cuándo se efectúa esta tarea
Antes de depurar el código de proxy, realice las siguientes tareas:

Establecimiento del tiempo de espera de invocación

La depuración de proxies es sensible al tiempo y, de forma predeterminada, se produce un tiempo de espera en la invocación una vez transcurridos dos minutos. Para ajustar el tiempo de espera de la depuración, añada DWORD value InvocationTimeout en milésimas de segundo en HKEY_LOCAL_MACHINE\SOFTWARE\Rational Software\RationalTest\8\Options en el Registro de Windows. Un tiempo de espera durante la depuración muestra una excepción SpyMemory MutexTimeout.

Depuración de grabación

El método getChildAtPoint() es el punto de entrada de la depuración de proxy para la grabación. Cualquier acción del usuario llama al método processMouseEvent(), incluso antes de que la AUT vea el suceso. Functional Tester procesa las acciones del usuario, por ejemplo si la acción es un clic o un arrastre y la especificación y los argumentos del método se generan en correspondencia. Para obtener los mejores resultados posibles, utilice estos métodos para iniciar la inserción de puntos de interrupción.

Depuración de reproducción

El método getMappableChildren() es el punto de entrada de la depuración de proxy para la reproducción. Durante el desarrollo del proxy, la mayoría de los problemas de ObjectNotFound que se producen se deben a una discrepancia entre la jerarquía de objetos que genera la grabación y la reproducción generada durante la reproducción. Asegúrese de que los métodos getMappableParent() y getMappableChildren() sean simétricos.

Comentarios