Comprender SystemUtil.Run, SetSecure, Set, Type: QTP/UFT

⚡ Resumen inteligente

SystemUtil.Run es el UFT Un comando ejecuta un archivo o una aplicación al inicio de una sesión de ejecución, mientras que Set, SetSecure y Type introducen valores y pulsaciones de teclas en la ventana que abren.

  • 🔘 Inserción automática: Lanzar una aplicación desde el Windows El menú de inicio durante la grabación hace UFT Escribiré el paso SystemUtil.Run por ti.
  • ☑️ Cinco argumentos: La función Run acepta los parámetros file, params, dir, op y mode, de modo que una sola instrucción puede abrir, editar, explorar, buscar o imprimir un objetivo.
  • ✅ Conjunto versus tipo: Set escribe un valor directamente en un campo, mientras que Type envía pulsaciones de teclas sin procesar, como micTab, que un humano necesitaría.
  • 🧪 Establecer contraseñas seguras: Las contraseñas registradas se almacenan como cadenas codificadas que no se pueden volver a convertir al texto original.
  • 🛠️ Codificador de contraseñas: La interfaz gráfica de usuario (GUI) de Password Encoder y CryptonCMD.exe producen las mismas cadenas codificadas fuera de una sesión de grabación.
  • 📌 Nombres actuales: QTP es ahora OpenText Pruebas funcionales (UFT Uno), y SystemUtil.Run reemplaza la instrucción InvokeApplication heredada.

Instrucciones SystemUtil.Run, SetSecure, Set y Type en un QTP/UFT Un guion

SystemUtil.Run en UFT

Cada prueba de interfaz gráfica de usuario grabada necesita un primer paso que muestre la aplicación bajo prueba en pantalla. OpenText Pruebas funcionales (UFT Uno, anteriormente Micro Focus UFT y originalmente HP QTP), ese paso es SystemUtil.RunVamos a entender el siguiente fragmento de código.

SystemUtil.Run "C:\Program Files\HP\samples\flight\app\flight.exe"
Dialog("Login").WinEdit("Agent Name:").Set "Guru"
Dialog("Login").WinEdit("Agent Name:").Type micTab
Dialog("Login").WinEdit("Password:").SetSecure "4af272a62666d2e"
Dialog("Login").WinButton("OK").Click
Window("Flight Reservation").Close
  • El primer paso es el El comando SystemUtil.Run que se utiliza por defecto por UFT/QTP abrir una aplicación. Durante la grabación, utilizando el Windows Menú Inicio, navegamos hasta el menú “Reserva de vuelo” aplicación. En ese momento, Micro Focus UFT Identificó la ubicación de su archivo ejecutable e insertó el comando SystemUtil.Run para abrirlo.
  • La línea 2 es Configurar el nombre del agente como Guru como se muestra en la pantalla activa
  • La línea 3 es presionar la tecla Tab en un teclado para llevar el foco del campo de nombre del agente al campo de contraseña, que es exactamente este paso. Los usuarios humanos necesitan usar las teclas Tab o hacer clic para enfocar un objeto en particular en la pantalla. Por otro lado, Examen rápido Puede identificar directamente un objeto utilizando propiedades del objeto y no requiere estas operaciones de “maniobra”Podemos eliminar este paso, ya que UFT Aún se podrá configurar el campo de contraseña sin esta operación.
  • La línea 4 es Establecer la contraseña como Mercury. UFT Uno cifra automáticamente las contraseñas. ingresado durante la grabación para evitar brechas de seguridad. Este valor no se puede descifrar, es decir, no hay forma de recuperar el valor original utilizando estos datos crípticos. Puede cifrar explícitamente una contraseña utilizando la herramienta de codificación de contraseñas. Para nuestros fines de aprendizaje, utilizaremos la contraseña en su forma original. Y la operación también cambiará a Establecer
  • La línea 5 hace clic en el botón Aceptar
  • La línea 6 está cerrando la ventana.

⚠️ Nota de versión: El camino registrado arriba apunta al antiguo C:\Archivos de programa\HP\muestras\vuelo Ubicación utilizada por HP QTPLa aplicación de ejemplo de reserva de vuelos todavía se envía con UFT Una sola, pero dentro de la carpeta de instalación actual, por lo que la ruta literal en un script grabado hoy será diferente.

Haga clic en aquí si el video no es accesible

Sintaxis y argumentos de SystemUtil.Run

La línea grabada anteriormente utiliza solo el primer argumento, pero el método acepta cinco. Conocerlos todos convierte a SystemUtil.Run de un artefacto de grabación en un paso de ejecución deliberado que puedes escribir manualmente.

SystemUtil.Run file, [params], [dir], [op], [mode]
Argumento ¿Necesario? ¿Qué hace?
listo para importar Obligatorio Nombre del archivo o aplicación que se va a ejecutar. Un archivo no ejecutable se abre en la aplicación asociada.
params Opcional Parámetros pasados ​​a la aplicación cuando listo para importar es un ejecutable. Por defecto es una cadena vacía.
dir Opcional Directorio predeterminado para la aplicación o archivo. El valor predeterminado es una cadena vacía.
op Opcional Acción a realizar: abrir, editar, explorar, buscar o imprimir. Un valor en blanco realiza la acción de abrir.
modo Opcional Número entero que controla cómo se muestra la ventana al abrirse. El valor predeterminado es 1.

El op El argumento es el que la mayoría de los evaluadores nunca descubren. Se corresponde con los mismos verbos. Windows El Explorador ofrece opciones al hacer clic con el botón derecho.

valor operativo Resultado
abierto Abre el archivo, carpeta o ejecutable nombrado en listo para importar.
edición Inicia un editor y abre el documento para su edición. Falla si el archivo no es un documento editable.
explora Explora la carpeta nombrada en listo para importar.
find Inicia una búsqueda desde la ruta de carpeta especificada.
Imprimir Imprime el documento nombrado en listo para importarFalla si el archivo no es imprimible.

Para modoLos valores relevantes para el uso diario son 0 (ocultar la ventana y activar otra), 1 (activar y mostrar en su tamaño original), 2 (activar minimizada) y 3 (activar maximizada). Los valores más altos controlan el enfoque y el comportamiento de restauración, y rara vez son necesarios en una prueba.

Ejemplos de SystemUtil.Run: Aplicaciones, navegadores y archivos

Los ejemplos que aparecen a continuación construyen un argumento a la vez, para que puedas ver qué aporta cada posición. Pégalos en una nueva acción y ejecútalos línea por línea.

1) solo archivo — la forma útil más corta. Un ejecutable en la ruta del sistema no necesita carpeta, y un documento se abre en cualquier aplicación. Windows se ha registrado para ello.

SystemUtil.Run "notepad.exe"
SystemUtil.Run "C:\Data\Orders.txt"

2) archivo más parámetros — Aquí se incluye todo lo que la aplicación acepte en la línea de comandos. Así es como se abre un navegador en una dirección específica en lugar de en su página de inicio.

SystemUtil.Run "notepad.exe", "C:\Data\Orders.txt"

3) agregando directorio — útil cuando una aplicación se niega a iniciarse a menos que su propia carpeta sea el directorio de trabajo.

SystemUtil.Run "flight.exe", "", "C:\Program Files\HP\samples\flight\app\"

4) agregar op — el mismo archivo, cuatro resultados diferentes.

SystemUtil.Run "C:\Data\Orders.txt", "", "", "edit"
SystemUtil.Run "C:\Data", "", "", "explore"
SystemUtil.Run "C:\Data", "", "", "find"
SystemUtil.Run "C:\Data\Orders.txt", "", "", "print"

5) agregar modo — Abra la ventana maximizada para que los pasos posteriores no se vean bloqueados por un control parcialmente oculto.

SystemUtil.Run "notepad.exe", "C:\Data\Orders.txt", "", "open", 3

Dado que la ventana que se abre se convierte en un objeto de prueba normal, la siguiente línea puede controlarla. La documentación oficial relaciona Run con Type y Close precisamente de esta manera.

SystemUtil.Run "C:\type.txt", "", "", ""
Window("Text:=type.txt - Notepad").Type "happy days"
Window("Text:=type.txt - Notepad").Close

Observe la descripción Texto:= forma en ese fragmento: no se necesita ninguna entrada de repositorio. La misma idea se trata extensamente en programación descriptivay las rutas codificadas como las anteriores suelen mantenerse mejor en Variables de entorno De esta forma, un único script se ejecuta en todas las máquinas.

Set, SetSecure y Type: ¿Qué método utilizar?

Las líneas 2 a 4 del script grabado utilizan tres métodos diferentes en el mismo tipo de campo de edición. No son intercambiables, y seleccionar el incorrecto suele provocar que un paso se ejecute sin introducir ningún dato.

Método Lo que envía Úselo cuando
Establecer Escribe un valor de texto plano directamente en el campo. Introducción de datos habitual, incluida una contraseña que no le importe mantener legible.
Establecer seguridad Escribe una cadena codificada que UFT Se decodifica en tiempo de ejecución. Cualquier campo de contraseña, por lo que el valor nunca aparece en el script ni en los resultados.
Tipo Envía pulsaciones de teclas sin procesar, incluidas teclas como micTab. El comportamiento del teclado forma parte de la prueba, o bien un control solo reacciona a teclas reales.

Como se indica en la guía paso a paso, la pulsación de la tecla Tab en la línea 3 existe únicamente porque la grabadora captó un hábito humano. UFT El campo de contraseña se identifica por sus propiedades, por lo que eliminar esa línea no cambia nada. Si se reemplaza SetSecure por Set, el mismo inicio de sesión se ejecuta con una contraseña legible.

Dialog("Login").WinEdit("Password:").Set "mercury"

Para ir en la dirección opuesta y codificar un valor fuera de una sesión de grabación, utilice el Codificador de contraseñaLa herramienta GUI se incluye UFT Una, y la misma codificación está disponible desde una línea de comandos como CryptonCMD.exe -e en la carpeta del contenedor del producto. Ambos producen cadenas que puede colocar en un argumento de SetSecure o en un parámetro de tabla de datosEl proveedor deja claro que esta codificación no es un estándar de seguridad: oculta un valor en pantalla, no protege los datos reales del cliente.

Una vez que estos tres métodos se convierten en algo natural, el resto del lenguaje viene rápidamente: Conceptos básicos de VBScript y el más ancho UFT Una serie de tutoriales cubrir bucles, condiciones y funciones reutilizables, mientras que Object Spy y GetROProperty mostrarte qué propiedades UFT En realidad, uno está haciendo pareja.

Preguntas Frecuentes

Se escribe una instrucción Run en la prueba automáticamente cada vez que se inicia una aplicación desde el Windows Menú Inicio o cuadro de diálogo Ejecutar durante la grabación. Typing La instrucción escrita a mano da el mismo resultado.

No. La cadena codificada no se puede convertir de nuevo en la contraseña original, por lo que un valor perdido debe volver a codificarse en lugar de descifrarse. Reemplace todo el argumento si la contraseña cambia.

Utilice la herramienta de codificación de contraseñas que viene incluida. UFT Una opción es ejecutar CryptonCMD.exe -e seguido de la cadena de la carpeta bin del producto. Ambas opciones generan un valor adecuado para un argumento de SetSecure o una celda de una tabla de datos.

Las opciones Grabar y Ejecutar permiten abrir la aplicación antes del primer paso, y la instrucción InvokeApplication heredada sigue funcionando. El proveedor mantiene InvokeApplication únicamente por compatibilidad con versiones anteriores y recomienda usar Ejecutar en su lugar.

Además de Window(…).Close, el objeto SystemUtil ofrece CloseProcessByName, CloseProcessById, CloseProcessByHwnd, CloseProcessByWndTitle y CloseDescendentProcesses, que cierran todos los procesos que la sesión de ejecución inició.

Los asistentes de IA pueden redactar instrucciones Run, Set y Type a partir de una descripción en lenguaje natural y sugerir soluciones cuando falla un localizador. Cada línea generada aún necesita una revisión con respecto a las propiedades del objeto real antes de ejecutarse.

Copilot completa el código VBScript en cualquier editor compatible, por lo que resulta rápido crear una función auxiliar o un bucle sobre los datos de prueba. UFT Como no dispone del plugin Copilot, el código se pega en el editor y se verifica allí.

La ruta literal suele ser la causa: una carpeta de instalación diferente, una división entre archivos de programa de 32 y 64 bits, o una unidad de red mapeada que no existe. Almacenar las rutas en variables de entorno soluciona el problema.

Resumir este post con: