Durante la ejecución de una sesión de Citrix, la prueba utiliza los sucesos de la ventana o el reconocimiento de imagen, para garantizar que se mantiene el seguimiento de las acciones con intervención del usuario correcto con los sucesos de la aplicación que provienen del servidor Citrix.
El mecanismo de sincronización permite a la prueba seguir sincronizada sin tener que utilizar la coordinación, que varía en función de la carga del servidor Citrix.
La sincronización varía según los puntos de verificación.
Los puntos de verificación comprueban algunos valores de la aplicación como, por ejemplo, los títulos de ventanas, y generan un estado de prueba: correcto, ha fallado, error o no concluyente.
La sincronización se utiliza para la ejecución de pruebas y genera tiempos de espera excedidos correspondientes a la sincronización en el historial de ejecución de pruebas, cuando la prueba no puede reconocer la salida del servidor.
La sincronización se produce en los sucesos de ventana o a través del reconocimiento de un área de la pantalla especificada por el usuario.
- La sincronización de un suceso de ventana se produce automáticamente a través del grabador de pruebas.
Cuando se ejecuta la prueba, los usuarios virtuales envían acciones de usuario emulado al servidor como, por ejemplo, acciones de teclado o de ratón, y el servidor responde con sucesos de ventana como create, activate, move, resize o destroy. La prueba espera que se produzcan los sucesos de ventana esperados antes de enviar las siguientes acciones de usuario al servidor. La prueba utiliza los estilos, las ubicaciones y tamaños de ventana para reconocerlas.
- La sincronización de imagen le permite añadir un reconocimiento adicional de los contenidos de un área de la pantalla. La prueba puede sincronizar un código hash exclusivo del mapa de bits que se calcula a partir de la imagen o de un texto recuperado de la imagen a través del reconocimiento óptico de caracteres. Durante la grabación, puede añadir manualmente sincronización de imagen en los momentos más importantes de la prueba. La sincronización de imagen es particularmente útil para la comprobación de aplicaciones cuando hay pocos cambios en los objetos de la ventana, pero se producen actualizaciones frecuentes del contenido de las ventanas, por ejemplo, el caso del navegador Internet Explorer.
Durante la ejecución de la prueba, la prueba espera que el suceso de ventana o el reconocimiento de la imagen sincronice las acciones del usuario independientemente de la carga del servidor. Si un suceso de ventana previsto no se produce o bien si no se reconoce una imagen, la prueba genera un tiempo de espera excedido de sincronización que se registra en el historial de ejecuciones de prueba. La prueba intentará reanudar la ejecución en el siguiente punto de la sincronización.
El retardo básico del tiempo de espera excedido está especificado en las preferencias de generación de pruebas Citrix; sin embargo, el retardo real varía en función del nivel de sincronización.
En el editor de pruebas, se pueden especificar en cada elemento tres niveles de sincronización para los sucesos de ventana y las imágenes:
- Condicional: es el comportamiento por omisión para las principales ventanas y recuadros de diálogo. Si la sincronización no se puede realizar, la prueba intenta continuar y el tiempo de espera excedido de sincronización se registra en el informe de rendimiento Citrix y en el historial de ejecuciones de prueba como un aviso.
- Obligatorio: si la sincronización no se puede realizar después de haber obtenido tres retardos básicos de tiempo de espera excedido, la prueba finaliza con un estado de error.
- Opcional: la sincronización no es necesaria pero se registra en el historial de ejecuciones de prueba como un aviso, si se produce un tiempo de espera excedido después de 2 segundos.
El grabador de pruebas establece automáticamente el nivel de sincronización recomendado para los sucesos de la ventana en función de su naturaleza. Por ejemplo, los elementos de información sobre herramientas se establecen en opcional y las ventanas y los recuadros de diálogo principales se establecen en condicional.
Para el reconocimiento de imagen, el valor por omisión es condicional.