studio
2024.10
true
UiPath logo, featuring letters U and I in white
Guía de usuario de Studio
Last updated 18 de nov. de 2024

Automatización de IU

Importante: los procesos de automatización que utilizan actividades de UIAutomation no pueden ejecutarse bajo una pantalla bloqueada.

En ocasiones, la rutina manual habitual no es la manera óptima de automatizar.Explora cuidadosamente el comportamiento de la aplicación y la integración/características de UiPath antes de adoptar un enfoque determinado.

Nota: El uso de la actividad Paralela con las actividades Automatización de IU no es compatible y a menudo tendrá consecuencias imprevistas.

Automatización de escritorio

La automatización de IU se usa mejor cuando robots y aplicaciones se ejecutan en la misma máquina, ya que UiPath se puede integrar directamente con la tecnología tras la aplicación para identificar elementos, desencadenar eventos y obtener datos tras las cámaras.

Métodos de entrada

Hay tres métodos que UiPath utiliza para desencadenar una actividad en una aplicación de Hacer clic o de Escribir en.Estas actividades se muestran como propiedades en todas las actividades que tratan de la automatización de IU.

Las propiedades SimularTipo y SimularClic

Si se seleccionan las propiedades SimularTipo o SimularClic, Studio se conecta a la aplicación y desencadena el controlador de eventos de un elemento de IU indicado (botón, cuadro de texto).El resultado siempre depende de la tecnología de destino, por ejemplo un navegador web o aplicación empresarial.

Se recomienda comprobar el estado del elemento de IU destino antes de la ejecución cuando se habilite SimularTipo o SimularClic para las siguientes actividades:

Se debe tener en cuenta la misma recomendación para las siguientes aplicaciones, ya que usan las propiedades SimularTipo o SimularClic de forma predeterminada y no se pueden cambiar:

La propiedad AlterarSiEstáDeshabilitado

Esta propiedad dice a la actividad de destino si debe interactuar o no con elementos deshabilitados.Tenga en cuenta que esta propiedad solo se tiene en cuenta si se ha habilitado SimularTipo o SimularClic.Puede encontrar la propiedad AlterarSiEstáDeshabilitado para las siguientes actividades:

La propiedad EnviarMensajesDeWindows

Si se selecciona la propiedad EnviarMensajesDeWindows, Studio envía los detalles del evento en el buzón de mensajes de la aplicación y el proceso de la ventana de la aplicación lo envía de forma interna al elemento de IU de destino.



Studio señala los controladores del sistema con eventos de hardware si no se ha seleccionado ninguna de las opciones anteriores y permite al sistema operativo enviar los detalles hacia el elemento de destino.



Estos métodos deben probarse en el orden en que se han presentado, ya que las propiedades SimularClic y EnviarMensajesDeWindows son más rápidas y también funcionan en segundo plano, pero dependen principalmente de la tecnología subyacente a la aplicación.

Los eventos de hardware funcionan al completo mientras Studio realiza acciones de forma similar a un operador humano, por ejemplo mover el puntero del ratón y hacer clic en una ubicación concreta. Sin embargo, en este caso la aplicación que se está automatizando debe verse en la pantalla. Esto puede considerarse una desventaja, ya que existe el riesgo de que el usuario pueda interferir con la automatización.

Selectores

A veces, los selectores generados automáticamente proponen valores de atributo volátiles para identificar elementos y se requiere intervención manual para calibrar los selectores. Un selector fiable debe identificar siempre correctamente el mismo elemento bajo cualquier condición, en entornos de desarrollo, prueba y producción, sin importar los nombres de usuario que hayan iniciado sesión en las aplicaciones.

A continuación ofrecemos algunos consejos sobre cómo mejorar un selector en el Editor de selector o el Explorador de IU:

  • Sustituya los atributos con valores volátiles por atributos que parezcan estables y significativos.
  • Sustituya partes variables del valor de un atributo por comodines (*).
  • Si el valor de un atributo se compone completamente de comodines (p. ej.name=’*’) entonces se debe eliminar ese atributo.
  • Si modificar los atributos no resulta útil, intente añadir más contenedores intermediarios.
  • Evite usar el atributo idx a menos que su valor sea un número muy pequeño, como 1 o 2.


En el selector anterior hemos observado que el título de página tiene una referencia a la hora en que se grabó el selector y también que algunos atributos tienen ID aparentemente aleatorias. Al retocar los atributos podemos proponer un selector mejor que el propuesto por el grabador de UiPath.



Contenedores

Al igual que las rutas de archivo, los selectores pueden ser completos o parciales (relativos). Los selectores completos comienzan con una ventana o un identificador HTML y contienen toda la información necesaria para encontrar un elemento en todo el escritorio, mientras que los selectores parciales solo funcionan dentro de un contenedor/adjunto que especifica la ventana de nivel superior a la cual pertenecen los elementos:

  • AbrirNavegador
  • AbrirAplicación
  • AdjuntarNavegador
  • AdjuntarVentana

Aquí hay un poco más de información sobre Selectores completos frente a selectores parciales.

Hay varias ventajas para usar contenedores con selectores parciales en lugar de selectores completos:

  • Agrupan visualmente actividades que funcionan en la misma aplicación.
  • Son ligeramente más rápidos, ya que no han de buscar constantemente la ventana superior.
  • Hacen que sea más sencillo gestionar selectores de nivel superior en caso de que hagan falta actualizaciones manuales.
  • Son esenciales al trabajar en dos instancias de la misma aplicación.

Automatización de imagen

El reconocimiento de imagen es el último enfoque para automatizar aplicaciones si no hay nada más que funcione para identificar elementos de IU en pantalla (como selectores o atajos de teclado). Como la coincidencia de imagen requiere que los elementos sean totalmente visibles en la pantalla y que todos los detalles visibles sean durante la ejecución los mismos que durante el desarrollo, al recurrir a la automatización de imagen hay que tener cuidado adicional para garantizar la fiabilidad del proceso. Seleccionar más o menos de una imagen de lo que es necesario podría resultar en que no se encuentre una imagen o en una coincidencia positiva falsa.

Consideraciones de resolución

La coincidencia de imagen depende de variaciones de entorno como el tema del escritorio o la resolución de pantalla. Cuando la aplicación se ejecuta en Citrix, la resolución debe mantenerse mayor o igual que cuando se grabaron los flujos de trabajo. De lo contrario, las pequeñas distorsiones de imagen se pueden compensar reduciendo ligeramente el factor de precisión de la imagen capturada. Compruebe cómo se ajusta a diferentes resoluciones el diseño de la aplicación para garantizar la proximidad de los elementos visuales, especialmente en caso de técnicas basadas en coordenadas como las de clic relativo y extracción relativa.

Si la automatización es compatible con diferentes resoluciones, las grabaciones paralelas se pueden colocar dentro de una actividad ElegirRama, y el robot usará cualquier coincidencia.

Motores OCR

Si el OCR devuelve buenos resultados para la aplicación, la automatización de texto es una buena alternativa para minimizar la influencia del entorno.El motor Tesseract de Google funciona mejor para áreas más pequeñas, mientras que MODI de Microsoft lo hace para áreas más grandes.

El uso del motor MODI en automatizaciones de bucle puede a veces crear fugas de memoria.Por eso se recomienda que la extracción realizada con MODI se invoque mediante un flujo de trabajo separado usando la propiedad Aislado.

Sincronización de IU

Es posible que se produzca un comportamiento inesperado si la aplicación está en un estado diferente al que el flujo de trabajo asume que está.Lo primero que se debe revisar es el tiempo que tarda la aplicación en responder a las interacciones del robot.

La propiedad MSDeRetardo le permite esperar un tiempo a que la aplicación responda.Sin embargo, hay situaciones en la que se debe validar el estado de una aplicación antes de continuar con ciertos pasos en un proceso.Las medidas pueden incluir el uso de actividades adicionales que esperan al estado de la aplicación deseado antes de otras interacciones.Las actividades útiles para ello incluyen:

Automatización en segundo plano

Si se pretende que una automatización comparta el escritorio con un usuario humano, toda la interacción de IU debe implementarse en segundo plano.Esto significa que la automatización debe trabajar con objetos elemento de la IU directamente, por tanto permitiendo que la ventana de aplicación se oculte o minimice durante el proceso.

Procedimientos

Cómo ejecutar la automatización de Chrome/Edge/Firefox en PiP sin interrumpir tu trabajo en la sesión principal

Cuando se ejecuta la automatización web con navegadores Chrome/Edge/Firefox en la sesión secundaria del modo PictureInPicture (PiP) y se quiere continuar utilizando el explorador en la sesión principal, ten en cuenta que tanto Chrome como Edge no pueden ejecutarse de forma simultánea, en distintas sesiones, utilizando el mismo directorio de datos de usuario.

La carpeta predeterminada es creada por el explorador la primera vez que se inicia. En Windows, la ubicación predeterminada de la carpeta es %LOCALAPPDATA%\Google\Chrome\User Data. Los datos de los perfiles de tu explorador se guardan aquí y cada nuevo perfil de explorador que crees tendrá su propio espacio: historial de navegación, marcadores y cookies.
Si, como usuario, por cualquier razón, decides iniciar el explorador con tu propia carpeta de datos personalizada, puedes hacerlo iniciando el navegador mediante el siguiente comando: chrome.exe --user-data-dir=c:\foo. Todos tus datos de perfiles se guardarán en esa carpeta personalizada.

Para omitir esta limitación, las actividades UtilizarAplicaciónNavegador moderna y AbrirNavegador clásica proporcionan una solución lista para usar: las propiedades ModoDeCarpetaDeDatosDelUsuario y RutaDeLaCarpetaDeDatosDelUsuario que instruyen la actividad al iniciar el navegador con su carpeta predeterminada, la generada automáticamente por la actividad o bien una personalizada, especificada por la última propiedad.

Echemos un vistazo más de cerca a cómo funcionan estas propiedades.

Caso 1

No necesitas conocer todos los detalles acerca de la carpeta de datos del usuario, solo quieres la automatización para iniciar el navegador en PiP y que haga su trabajo, lo que te permite a ti hacer el tuyo en la sesión principal. Luego, solo tienes que dejar vacío el ModoCarpetaDeDatosDelUsuario. Su valor predeterminado se heredará como Automático de la sección Configuración/AplicaciónNavegador del proyecto: el UiPath Robot creará automáticamente para ti una carpeta de datos temporales para ejecutar la automatización en PiP.

Caso 2

Querrás ejecutar la automatización en PiP con la carpeta de datos de usuario predeterminada, ya que contiene tu perfil predeterminado y todo el historial de inicio de sesión de tus apps empresariales y de las cookies. Establece el ModoDeCarpetaDeDatosDelUsuario a CarpetaPredeterminada. Ten en cuenta que simplemente iniciar el explorador en tu sesión de trabajo no será posible hasta que la automatización PiP termine y/o el explorador PiP se detenga.

Caso 3

Sabes lo que haces y comprendes tanto la limitación del explorador como las capacidades proporcionadas por UiPath. Configura ModoDeCarpetaDeDatosDelUsuario como CarpetaPersonalizada y la RutaDeLaCarpetaDeDatosDelUsuario como una ruta de tu elección.

Para todos los casos anteriores, recomendamos instalar la extensión según la política por grupo. De esta manera, la extensión está disponible y activada para cualquier perfil de explorador, independientemente de si se crean en carpetas de datos de usuario predeterminadas o personalizadas.

¿Te ha resultado útil esta página?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Uipath Logo White
Confianza y seguridad
© 2005-2024 UiPath. Todos los derechos reservados.