Ir al contenido

Automatización: interacción con la página

Comandos que hacen clic, rellenan, escriben, arrastran y leen el estado de elementos por referencia de snapshot.

Ver Markdown

Comandos, flags y valores son literales — no se traducen. Todos aceptan los flags de objetivo --page/--node/--workspace descritos en Automatización: navegación, y sin objetivo actúan sobre la pestaña activa del workspace actual.

La referencia viene del snapshot

Los comandos por elemento usan --element <ref>, y esos ref vienen de elyra snapshot.

  • Toma el snapshot, usa los ref en la misma página.
  • Después de navegar o cambiar la página, los ref antiguos ya no valen — toma un snapshot nuevo.
  • La CLI recomienda, después de cada acción, tomar un snapshot nuevo para revisar qué se asentó realmente.

Acciones por referencia

Comando Uso
elyra click --element <ref> Clic
elyra dblclick --element <ref> Doble clic
elyra hover --element <ref> Pasar el mouse
elyra focus --element <ref> Dar foco
elyra fill --element <ref> --value <texto> Limpiar y rellenar
elyra type --input <texto> Escribir en el foco actual
elyra select --element <ref> --value <valor> Elegir opción de lista
elyra check --element <ref> / elyra uncheck --element <ref> Marcar / desmarcar casilla o radio
elyra clear --element <ref> Limpiar el contenido del campo
elyra select-all --element <ref> Seleccionar todo el texto del campo
elyra keypress --key <nombre> Pulsar tecla (Enter, Tab, Escape, ArrowDown…)
elyra drag --from <ref> --to <ref> Arrastrar de un elemento a otro
elyra upload --element <ref> --files <ruta,...> Enviar archivos locales a un campo de archivo

Obligatoriedades: fill y select exigen --value; drag exige --from y --to; upload exige --files; keypress exige --key. check y uncheck son el mismo handler parametrizado.

clear borra sin deshacer. upload envía archivos de tu disco a la página — revisa qué va y hacia dónde.

Rellenar varios campos de una vez

elyra fill-form (--fields '<json>' | --fields-file <ruta>) [--page <id>] [--workspace <selector>] [--json]
  • --fields es un arreglo JSON con la forma [{"element":"<ref>","value":"<texto>"}], con ref provenientes de snapshot.
  • --fields y --fields-file son mutuamente excluyentes; informar los dos es un error.
  • Cada campo se reporta: el resultado dice qué entró y qué falló. Usa elyra snapshot --json para revisar.
  • Un archivo inválido o vacío falla.

Leer estado y propiedad

Comando Qué devuelve
elyra get --what text|html|value|url|title|count|box [--element <ref>] Propiedad del elemento — o de la página, cuando la propiedad es de la página
elyra is --what visible|enabled|checked --element <ref> Estado del elemento
elyra find --locator <tipo> --value <texto> --action <acción> Localiza por locator semántico y ejecuta la acción
elyra highlight --selector <ref> Resalta el elemento
elyra scrollintoview --element <ref> Desplaza hasta el elemento
elyra inserttext --text <texto> Inserta texto sin eventos de tecla

inserttext no dispara keydown ni keyup. Las páginas que reaccionan a eventos de tecla no se comportan como si hubieras escrito — para esos casos, usa escritura real.

Mouse de bajo nivel

elyra mouse move --x <n> --y <n> [--page <id>] [--workspace <selector>] [--json]
elyra mouse down [--button <left|right|middle>] [--page <id>] [--workspace <selector>] [--json]
elyra mouse up [--button <left|right|middle>] [--page <id>] [--workspace <selector>] [--json]
elyra mouse wheel --dy <n> [--dx <n>] [--page <id>] [--workspace <selector>] [--json]
  • mouse move exige --x y --y; mouse wheel exige --dy, con --dx opcional.
  • Las coordenadas son absolutas en la página y dependen del viewport actual. Sin un snapshot reciente, el objetivo puede errar — en páginas con desplazamiento, el objetivo cambia sin aviso.