- Notas relacionadas
- Primeros pasos
- Instalación y configuración
- Proyectos de automatización
- Acerca de la publicación de proyectos de automatización
- Diseñar automatizaciones
- Gestionar paquetes de actividades
- Configuración de los Ajustes del Proyecto de Actividades
- Firma de paquetes
- Control
- Importar entidades
- Experiencia de diseño moderna
- Vincular un proyecto a una idea en Automation Hub
- Usar Data Manager
- Dependencias
- Tipos de flujos de trabajo
- Flujo de control
- Comparación de archivos
- Mejores prácticas de automatización
- Integración del control de código fuente
- Depuración
- Registro
- La herramienta de diagnóstico
- Analizador de flujo de trabajo
- Acerca del analizador de flujo de trabajo
- ST-NMG-001: convención sobre nombres de variables
- ST-NMG-002: convención de nombres de argumentos
- ST-NMG-004: duplicación de nombres de visualización
- ST-NMG-005: anulación de variables
- ST-NMG-006: argumentos de anulación de variables
- ST-NMG-008: longitud variable excedida
- ST-NMG-009: variables de datos prefijados
- ST-NMG-011: argumentos de prefijo Datatable
- ST-NMG-012: valores predeterminados de los argumentos
- ST-NMG-016: longitud del argumento excedida
- ST-NMG-017: el nombre de la clase coincide con el espacio de nombres predeterminado
- ST-DBP-002: recuento de Argumentos elevado
- ST-DBP-003: bloque de Catch vacío
- ST-DBP-007: múltiples capas de diagramas de flujo
- ST-DPB-010: varias instancias de [Flujo de trabajo] o [Caso de prueba]
- ST-DBP-020: propiedades de salida no definidas
- ST-DBP-021: tiempo de espera codificado
- ST-DBP-023: flujo de trabajo vacío
- ST-DBP-024: comprobación de actividad de persistencia
- ST-DBP-025: requisito previo para la serialización de variables
- ST-DBP-026: retraso en el uso de la actividad
- ST-DBP-027: mejor práctica de persistencia
- ST-DBP-028: requisito de serialización de argumentos
- ST-USG-005: argumentos de actividad codificados
- ST-USG-009: variables no utilizadas
- ST-USG-010: dependencias sin utilizar
- ST-USG-014: restricciones de los paquetes
- ST-USG-020: mensajes de registro mínimos
- ST-USG-024: guardado sin usar para más adelante
- ST-USG-025: uso incorrecto de los valores guardados
- ST-USG-026: restricciones de actividad
- ST-USG-027: paquetes necesarios
- ST-USG-028: Restringir la invocación de plantillas de archivo
- ST-USG-032 - Etiquetas obligatorias
- ST-USG-034 - URL Automation Hub
- Variables
- Argumentos
- Espacios de nombres importados
- Automatizaciones codificadas
- Introducción
- Registrar servicios personalizados
- Contextos Antes y Después
- Generando código
- Generar casos de prueba codificados a partir de casos de prueba manuales
- Automatización atendida basada en desencadenadores
- Grabación
- Elementos de la IU
- Selectores
- Repo. de objetos
- Extracción de datos
- Automatización de imágenes y texto
- Acerca de la automatización de imágenes y texto
- Actividades con el ratón y el teclado
- Ejemplo de uso de la automatización de ratón y teclado
- Actividades de texto
- Ejemplo de uso de la automatización de texto
- Actividades de OCR
- Actividades de imagen
- Ejemplo de uso de la automatización de OCR y la automatización de imágenes
- Automatizar las tecnologías de Citrix
- Automatización RDP
- Automatización de VMware Horizon
- Automatización de Salesforce
- Automatización SAP
- macOS UI Automation
- La herramienta ScreenScrapeJavaSupport
- El protocolo WebDriver
- Extensiones
- Acerca de las extensiones
- Herramienta SetupExtensions
- UiPathRemoteRuntime.exe no se está ejecutando en la sesión remota
- UiPath Remote Runtime impide que la sesión de Citrix pueda cerrarse
- UiPath Remote Runtime provoca una fuga de memoria
- Las versiones de UiPath Remote Runtime y UiPath Remote Runtime no coinciden
- La extensión de UiPath necesaria no está instalada en la máquina remota
- Configuración de la resolución de la pantalla
- Directivas de grupo de Chrome
- No se puede comunicar con el navegador
- La extensión de Chrome se elimina automáticamente
- Es posible que la extensión se haya dañado
- Comprueba si la extensión para Chrome está instalada y habilitada
- Check if ChromeNativeMessaging.exe is running
- Check if ComSpec variable is defined correctly
- Habilitar el acceso a las URL de archivos y el modo de incógnito
- Multiple browser profiles
- Group Policy conflict
- Known issues specific to MV3 extensions
- Lista de extensiones para Chrome
- Extensión de Chrome en Mac
- Directivas de grupo de Edge
- No se puede comunicar con el navegador
- La extensión de Edge se elimina automáticamente
- Es posible que la extensión se haya dañado
- Check if the Extension for Microsoft Edge is installed and enabled
- Check if ChromeNativeMessaging.exe is running
- Check if ComSpec variable is defined correctly
- Enable access to file URLs and InPrivate mode
- Multiple browser profiles
- Group Policy conflict
- Known issues specific to MV3 extensions
- Lista de extensiones para Edge
- Extensión para Safari
- Extensión para VMware Horizon
- Extensión para Amazon WorkSpaces
- Complemento SAP Solution Manager
- Add-in de Excel
- Conjunto de pruebas - Estudio
- Solución de problemas
- Acerca de la resolución de problemas
- Compatibilidad y limitaciones de Microsoft App-V
- Solución de problemas de Internet Explorer x64
- Problemas de Microsoft Office
- Identificación de elementos de la interfaz de usuario en PDF con opciones de accesibilidad
- Reparar Soporte Active Accessibility
- Validation of large Windows-legacy projects takes longer than expected
Búsqueda aproximada
Un selector contiene una etiqueta de nivel superior que hace referencia a la ventana o pestaña del navegador de destino. Contiene atributos como el título, el nombre del proceso, la URL, el nombre de la ventana y otros, que te ayudan a identificar correctamente los elementos que desea utilizar en sus proyectos de automatización.
A menudo, los valores de las etiquetas de nivel superior están sujetos a cambios dinámicos porque la aplicación de destino los reescribe en función de sus acciones. Por ejemplo, el título de una página web puede cambiar durante el proceso de automatización, lo que hace que el selector correspondiente no sea válido.
En este sentido, las capacidades de búsqueda difusa del selector te permiten localizar cadenas basadas en un patrón, en lugar de en una coincidencia exacta con tu entrada. Como resultado, se obtiene un método más flexible de identificación de elementos y se validan los selectores en función de múltiples atributos, incluso si algunos son propensos a cambiar durante el proceso de automatización.
Para utilizar las funciones de búsqueda difusa, es necesario incluir un par de opciones coincidentes en la etiqueta de nivel superior del selector de destino, de la siguiente manera:
Opción | Descripción |
---|---|
| Permite especificar la etiqueta de búsqueda de destino, determinada por el valor <tag_name> .
|
| Determina el umbral correspondiente para el destino <tag_name> . Permite un valor numérico de 0 a 1, como se indica a continuación:
|
Tipo de selector | Soporte |
---|---|
<wnd> | |
<html> | |
<webctrl> | |
<java> | |
<ctrl> | |
<uia> | |
<sap> | |
<rdp> | |
<silverlight> | |
Etiquetas que identifican un nombre de proceso. Ejemplo: <html app="firefox.exe"> .
|
check:text="example"
un selector diferenciado se comprueba si el elemento de destino contiene el texto especificado.
check:text="Options"
a un selector diferenciado se comprueba si el elemento de destino contiene el texto Options
.
La búsqueda aproximada puede utilizarse para identificar casi cualquier tipo de atributo En los siguientes ejemplos, pretendemos construir selectores válidos con atributos que están mal escritos:
A. Utilización de un nivel alto de aproximación
W3Schools Online Web Tutorials
<title>
. Para el propósito de nuestro ejemplo, el atributo está mal escrito, por lo que el selector no es válido.
<html app='firefox.exe' title='WEScho0ls Online Web Tutorials' />
<html app='firefox.exe' title='WEScho0ls Online Web Tutorials' />
<html>
. Dado que el atributo de interés es <title>
, la expresión <tag_name>
de nuestra búsqueda aproximada debe tener la forma matching:title=fuzzy
. El error de nuestro atributo <title>
es pequeño, por lo que podemos utilizar un nivel de aproximación más cercano a 1. Se genera el siguiente selector, que devuelve el atributo <title>
correcto, que en este caso es W3Schools Online Web Tutorials
:
<html app='firefox.exe' title='WEScho0ls Online Web Tutorials'
matching:title='fuzzy' fuzzylevel:title='0.8' />
<html app='firefox.exe' title='WEScho0ls Online Web Tutorials'
matching:title='fuzzy' fuzzylevel:title='0.8' />
B. Utilización de un nivel bajo de aproximación
<aaname>
. El atributo de destino es Colorpicker
, pero en nuestro ejemplo está incorrectamente escrito Clorker
. No es necesario mencionar que, con un atributo mal escrito, nuestro selector no es válido, y se ve algo así:
<html title='W3Schools Online Web Tutorials' />
<webctrl aaname='Clorker' parentid='main' tag='IMG' />
<html title='W3Schools Online Web Tutorials' />
<webctrl aaname='Clorker' parentid='main' tag='IMG' />
<webctrl>
. En este caso, nuestro objetivo es <aaname>
. Dado que hay más errores en la ortografía de nuestro objetivo, se reduce el nivel de aproximación más cercano a 0, para que haya más posibilidades de detección precisa. Se genera el siguiente selector, que devuelve el atributo <aaname>
correcto, que en este caso es Colorpicker
:
<html title='W3Schools Online Web Tutorials' />
<webctrl aaname='Colorker' parentid='main' tag='IMG' matching:aaname='fuzzy' fuzzylevel:aaname='0.4' />
<html title='W3Schools Online Web Tutorials' />
<webctrl aaname='Colorker' parentid='main' tag='IMG' matching:aaname='fuzzy' fuzzylevel:aaname='0.4' />