En las lecciones anteriores, ha verificado que la reproducción de la secuencia de comandos de Vuser emula con precisión a un usuario real. El siguiente paso es preparar la secuencia de comandos para la prueba de carga. ¿Cómo funcionará el sistema con muchos usuarios trabajando al mismo tiempo? ¿Se ralentizará el sistema hasta niveles inaceptables?
En esta lección aprenderá distintos métodos para mejorar la secuencia de comandos y para hacerla más eficaz en el proceso de pruebas de carga.
En esta lección se tratarán los siguientes temas:
Cuando se prepara el desarrollo de una aplicación, es preciso medir la duración de los procesos empresariales específicos: cuánto tiempo se tarda en iniciar sesión, en reservar un vuelo, etc. Cada proceso empresarial suele estar formado por uno o más pasos o acciones en la secuencia de comandos. En una secuencia de comandos de Vuser, se designa una serie de acciones que se quieren medir y se incluyen en una transacción.
Cuando se ejecuta una secuencia de comandos de Vuser que incluye una transacción, LoadRunner recopila información sobre el tiempo que tarda en realizarse la transacción y, a continuación, muestra los resultados con gráficos de colores e informes. Puede utilizar esta información para determinar si la aplicación cumple los requisitos de rendimiento.
Puede insertar manualmente una transacción en cualquier lugar en una secuencia de comandos de Vuser. Para marcar un conjunto de pasos como una transacción, inserte un marcador start_transaction antes del primer paso y un marcador end_transaction después del último paso.
En esta sección insertará una transacción en la secuencia de comandos para medir el tiempo que tarda el usuario en encontrar y confirmar un vuelo.
Para insertar una transacción en una secuencia de comandos de Vuser:
En la sección Común del cuadro de herramientas de pasos, seleccione lr_start_transaction, arrástrela al editor y suéltela delante del paso web_image. Se abrirá el cuadro de diálogo Iniciar transacción.
En la sección Común del cuadro de herramientas de pasos, seleccione lr_end_transaction, arrástrela al editor y suéltela después del paso web_submit_data. Se abrirá el cuadro de diálogo Finalizar transacción.
Asegúrese de que find_confirm_flight aparece en el cuadro Nombre de la transacción y, después, haga clic en Aceptar. VuGen insertará un paso lr_end_transaction en el navegador de pasos y una función lr_end_transaction correspondiente en el editor.
Ya ha definido la transacción find_confirm_flight.
En su emulación, ha hecho el seguimiento de un usuario que reserva un vuelo y elige un asiento en el pasillo. No obstante, en una situación real los distintos usuarios tendrán sus propias preferencias. Para mejorar la prueba, debe comprobar si la reserva funcionará cuando los usuarios seleccionen distintas preferencias de asiento (Aisle (Pasillo), Window (Ventanilla) o None (Ninguno)).
Para conseguirlo, deberá parametrizar la secuencia de comandos. Esto significa que tomará el valor grabado, Aisle y lo reemplazará por un parámetro. Colocará valores para el parámetro en un archivo de parámetros. Cuando ejecute la secuencia de comandos, el Vuser usará valores del archivo de parámetros (Aisle, Window o None) y emulará así un entorno real de agencia de viajes.
Para parametrizar la secuencia de comandos:
Haga clic con el botón secundario en el paso Submit Form: reservations.pl y seleccione Mostrar argumentos. Se abrirá el cuadro de diálogo Propiedades de paso de envío de formularios.
El icono ABC situado a la derecha de cada argumento de la cuadrícula indica que el argumento tiene un valor fijo.
Haga clic en Aceptar. En el cuadro de diálogo Propiedades de paso de envío de formularios, VuGen reemplaza el icono ABC por un icono de parámetro
.
Haga clic en el icono de parámetro adyacente a {seat} y seleccione Propiedades del parámetro. Se abrirá el cuadro de diálogo Propiedades del parámetro.
Reemplace la palabra Value por None.
Nota: Los valores no distinguen entre mayúsculas y minúsculas.
Haga clic en Aceptar para cerrar el cuadro de diálogo Propiedades de paso de envío de formularios.
Ya ha creado un parámetro para la preferencia de asiento. Cuando ejecute la prueba de carga, los Vusers utilizarán los valores del parámetro y no el valor grabado Aisle.
Cuando ejecute la secuencia de comandos, el registro de reproducción mostrará la sustitución de parámetros que se produce para cada iteración. El Vuser utilizará Aisle para la primera iteración, Window para la segunda iteración y None para la tercera iteración.
Cuando se ejecuta una prueba, a menudo es necesario verificar si cierto contenido se encuentra en una página devuelta. Una comprobación de contenido verifica que la información esperada aparece en una página web mientras se ejecuta la secuencia de comandos. Puede insertar dos tipos de comprobación de contenido:
En esta sección insertará una comprobación de texto que verifique si la frase Find Flight aparece en la página de reservas de HP Web Tours.
Inserción de una comprobación de texto
VuGen insertará un paso web_reg_find en el navegador de pasos y una función web_reg_find correspondiente en el editor.
Cuando reproduzca la secuencia de comandos, VuGen buscará el texto Find Flight e indicará en el registro de reproducción si se encontró o no el texto.
En determinados momentos de una ejecución de prueba, querrá generar y enviar mensajes con información relacionada con la ejecución de la secuencia de comandos. Estos mensajes de salida aparecerán en el registro de reproducción del panel Salida y en la ventana Salida de Controller. Puede enviar un mensaje de salida estándar o un mensaje que indique que se ha producido un error.
La forma recomendada de trabajar con mensajes de error es buscar un estado Erróneo. Si el estado es Erróneo, indicará a VuGen que emita un mensaje de error. Para más información, consulte los ejemplos de la Referencia de funciones de HP LoadRunner.
En esta sección del tutorial, indicará a VuGen que inserte un mensaje de salida después de que la aplicación finalice una reserva completa.
Para insertar un mensaje de salida:
Seleccione la función lr_output_message, arrástrela al editor y suéltela después de la función web_image. Se abrirá el cuadro de diálogo Mensaje de salida.
Haga clic en Aceptar. VuGen agrega una función lr_output_message a la secuencia de comandos y un paso correspondiente en el navegador de pasos.
En esta sección ejecutará la secuencia de comandos mejorada y buscará el registro de reproducción para realizar comprobaciones de texto. Visualizará los resultados de las comprobaciones de texto, así como los detalles de las transacciones y de la parametrización.
De forma predeterminada, la comprobación de imágenes y texto se deshabilitan durante la reproducción, ya que requieren más memoria. Si quiere llevar a cabo una comprobación de imágenes o texto, debe habilitar la comprobación en la configuración de tiempo de ejecución.
Ejecute la secuencia de comandos.
Haga clic en el botón Reproducir de la barra de herramientas de VuGen. VuGen empieza a ejecutar la secuencia de comandos y a generar entradas en el registro de reproducción del panel Salida.
Espere a que termine de ejecutarse la secuencia de comandos.
Busque web_reg_find.
La primera instancia dice lo siguiente:
web_reg_find iniciado
Haga clic en Buscar siguiente para ver la siguiente instancia de web_reg_find. La segunda instancia dice lo siguiente:
Esto no es la comprobación de texto real, solo prepara a VuGen para buscar el texto después de enviar el formulario.
Haga clic en Buscar siguiente para ver la siguiente instancia de web_reg_find. Esta instancia indica lo siguiente:
Se ha registrado web_reg_find correctamente para “Text=Find Flight” (número=1).
Esto verifica que se ha encontrado el texto. Si alguien modifica la página web y elimina la frase Find Flight, en las siguientes ejecuciones el resultado indicará que no se ha encontrado el texto.
Ahora que ha creado una secuencia de comandos y la ha adaptado a las pruebas de carga, puede continuar con la Lección 5: Creación de un escenario de pruebas de carga.
|