Cómo usar transacciones en QTP/UFT
⚡ Resumen inteligente
Transacciones en UFT Una medida de cuánto tiempo tarda en ejecutarse una sección elegida de una prueba, mediante wrapping aquellos pasos entre una instrucción de inicio y una instrucción de fin que informa la duración en los resultados de la ejecución.
In UFT Un/QTPPuedes medir cuánto tiempo tarda en ejecutarse una sección de tu prueba definiendo transacciones. Para definir transacciones dentro de tu prueba, debes encerrar las secciones correspondientes entre las instrucciones de inicio y fin de transacción.
Las transacciones se pueden insertar en cualquier parte del script, y no hay límite en la cantidad de transacciones que se pueden agregar a una prueba.
⚠️ Nomenclatura del producto: La herramienta se comercializó como HP QuickTest Professional (QTP), se convirtió en HP y luego en Micro Focus Unified Functional Testing, y hoy en día es vendida por OpenText, cuyas páginas de ayuda actuales lo llaman OpenText Pruebas funcionales. Las transacciones funcionan de la misma manera en todas esas versiones.
Cómo insertar transacciones en QTP?
También puedes insertar una transacción dentro de una transacción.
El siguiente video le muestra los pasos para insertar una transacción en UFT Uno.
Haga clic en aquí si el video no es accesible
Por ejemplo, es posible que desee anotar el tiempo necesario para reservar un vuelo.
- In QTPSeleccione el estado apropiado donde desea iniciar su transacción.
- Seleccione Insertar transacción inicial. Diálogo Iniciar transacción Box opens
- Asigne un nombre adecuado a la transacción, diga "Tiempo de reserva".
- Se agrega una declaración de inicio de transacción en la prueba.
- Seleccione el estado donde desea finalizar la transacción
- Haga clic en Insertar > Finalizar transacción
- Diálogo de finalización de transacción Box Se abre con la lista de todas las transacciones disponibles.
- Haga clic en Aceptar. Se agrega una declaración de finalización de transacción.
- Hagamos la prueba
- En los resultados, el estado de cuenta final de la transacción indica el tiempo necesario para insertar el pedido.
Nota: Se accede a los mismos cuadros de diálogo desde el Vista de palabras clavey el Paso Generator Inserta las mismas instrucciones sin abrir el menú Insertar.
Estados de transacciones en el editor
Los cuadros de diálogo anteriores escriben dos VBScript líneas en la prueba. Typing Crearlos uno mismo en el Editor es más rápido una vez que se está familiarizado con el patrón, y es la única opción cuando los pasos se generan mediante código.
Services.StartTransaction "Booking Time" ' the steps that book the flight go here Services.EndTransaction "Booking Time"
Ambos métodos pertenecen al objeto Services. La instrucción start toma un argumento, mientras que la instrucción end toma un segundo argumento opcional.
| Comunicado | Argumentos | ¿Qué hace? |
|---|---|---|
| Servicios.IniciarTransacción | Nombre | Comienza la medición del tiempo en ese punto de la carrera. |
| Servicios.Fin de la transacción | Nombre, [Estado] | Detiene la medición y registra el resultado. |
El estado opcional decide cómo se califica la transacción. Omitirlo es lo mismo que aprobar. vehículos.
- vehículos — se ejecuta correctamente a menos que se haya producido un error entre las dos instrucciones. Este es el comportamiento predeterminado.
- Pasó — siempre termina con un estado de Aprobado.
- No pasó — siempre termina con un estado de Fallo.
Services.StartTransaction "Booking Time" Wait 1 Services.EndTransaction "Booking Time", Pass
Resultados de la transacción de lectura
Una vez finalizada la prueba, el paso "Fin de transacción" en los resultados de la ejecución contiene cuatro valores que explican la medición.
| Campo de resultado | Significado |
|---|---|
| Nombre de la transacción | El nombre proporcionado en la declaración de inicio |
| Estado final | Aprobado o reprobado, decidido por el argumento de estado o por Automático |
| Duración total | Tiempo transcurrido entre las declaraciones de inicio y fin |
| Tiempo perdido | Tiempo dentro de la duración que UFT Uno mismo añadió |
El tiempo perdido importa porque la herramienta ejecuta procesos en segundo plano mientras la transacción está abierta. Subtract a partir de la duración total para estimar lo que habría tomado la aplicación por sí sola, que es el número que vale la pena comparar entre compilaciones.
La duración de un solo usuario es un punto de referencia funcional, no una cifra de carga. La concurrencia se mide mediante un pruebas de rendimiento herramienta, y una transacción que funciona bien para un usuario aún puede colapsar con cien.
Transacciones anidadas y distribuidas
La lista de pasos de origen indica que una transacción puede estar dentro de otra, lo que permite aislar un subpaso lento sin perder la sincronización de todo el flujo. La transacción externa continúa ejecutándose mientras la interna se abre y se cierra.
Dos reglas garantizan la seguridad en la anidación.
- Cada nombre necesita una pareja que coincida, y la instrucción de inicio debe aparecer antes de su instrucción de finalización.
- Solo se puede abrir una transacción con un nombre determinado a la vez. Abrir una segunda transacción con el mismo nombre finaliza la primera con el estado de Fallo.
Una transacción distribuida va más allá y abarca dos pruebas: Servicios.IniciarTransacciónDistribuida lo abre en la primera prueba y Servicios.FinTransacciónDistribuida lo cierra en el segundo, coincidiendo con un ID único en lugar de por nombre. Existe para Business Process Monitor y LoadRunner escenarios que leen únicamente los datos registrados dentro de una transacción e ignoran todo lo que está fuera de ella.
Cuando un paso dentro de una transacción puede fallar legítimamente, empareje la transacción con una escenario de recuperación por lo que la ejecución llega a la instrucción final en lugar de detenerse.ping Medio camino.
