HCL Commerce Version 9.1.8.0 or later

Script de ejemplo de OneTest Performance para Emerald B2C Store

HCL OneTest proporciona herramientas de prueba de software para dar soporte a un enfoque DevOps: Pruebas de API, pruebas funcionales, pruebas de interfaz de usuario, pruebas de rendimiento y virtualización de servicios. Este enfoque ayuda a la automatización de pruebas, para el descubrimiento más temprano y frecuente de errores.

Before you begin

Un aspecto clave de las pruebas de rendimiento es la capacidad de simular una carga de usuario simultánea. El script de ejemplo de OneTest Performance para Emerald (B2C) proporciona un proyecto de ejemplo para generar y simular un tráfico de usuarios en Emerald (B2C). El script de ejemplo incluye escenarios comunes de búsqueda, exploración y paso por caja. No todas las funciones del script son inclusivas y deben adaptarse para que coincidan con las personalizaciones y los patrones de uso de la tienda. A continuación se muestra cómo importar, configurar y utilizar el script para simular el tráfico de usuarios en la tienda (B2C).

Configuración del script

El paquete archivado contiene dos archivos:
  • Documento de Word con instrucciones para configurar el script.
  • Un archivo de script de rendimiento OneTest.

Para configurar el script OneTest Performance, deberá seguir tres pasos:

  1. Importar el script
  2. Bibliotecas de importación.
  3. Limpiar proyecto.
  1. Importación del paquete
    1. Extraiga el archivo de paquete de ejemplo (archivo zip) en un directorio de trabajo.
    2. Abra OneTest y elija un espacio de trabajo nuevo y, a continuación, elija una ubicación y un nombre de espacio de trabajo adecuado.
    3. Cerrar la pestaña de bienvenida.
    4. Pulse el botón derecho del ratón en el Navegador de pruebas y seleccione Importar.
    5. Seleccione Prueba >Activo de prueba con dependencias y pulse Siguiente. Seleccione el archivo que ha descargado en el paso 1 y, a continuación, pulse Finalizar.
  2. Bibliotecas de importación
    1. Si aparece una x roja en la carpeta SRC, siga los pasos que se describen a continuación (esta situación puede producirse si está ejecutando una versión OneTest inferior a 10.1.x).
    2. Seleccione Propiedades en el menú contextual pulsando el botón derecho del ratón en el nombre del proyecto.
    3. En la ventana Propiedades, seleccione Vía de construcción Java en el panel izquierdo y pestaña Bibliotecas en el panel izquierdo.
    4. Haga clic en Add JARs. En la ventana Selección JAR, expanda el proyecto y expanda la carpeta libs. Seleccione los archivos jar y pulse el botón Aceptar.
    5. Haga clic en Aplicar y cierre la ventana.
  3. Limpiar proyecto.
    1. Pulse menú Proyecto y elija el mandatoLimpiar.
    2. En la ventana Limpiar, asegúrese de que el proyecto está seleccionado y, a continuación, pulse botón Limpiar.
Note: Para obtener más información sobre cómo utilizar el rendimiento de una prueba de rendimiento con HCL Commerce (para las pruebas de carga), consulte Rendimiento de OneTest - Script de ejemplo para Emerald Store.

Actualización del script antes de utilizar

Después de importar y configurar el script, debe actualizarlo y aplicar las inicializaciones antes de poder utilizarlo. Antes de utilizar el script, asegúrese de que esté actualizado.

  1. Actualizar las variables globales.
  2. Actualizar las pools de datos.
  3. Actualizaciones planificadas.

Los detalles de estos pasos uno por uno se encontrarán a continuación:

  1. Actualizar las variables globales

    La Página de inicio B2C alberga todas las variables globales.

    Para ver todas las variables globales, vaya a Vista de recursos, expanda Módulos B2C, abra el módulo Página de inicio de B2C, luego expanda Recursos de prueba y Variables de prueba.

    Cambie los valores de las variables relacionadas con su entorno.

    Table 1. Las variables que deben actualizarse antes de utilizar el script de rendimiento son:
    Nombre de variable Descripción:
    hostname El nombre de host utilizado en URL del escaparate de comercio electrónico.
    store_id

    El ID de la tienda.

    Los ID de tienda predeterminados son 11 para la tienda Emerald B2C y 12 para la tienda B2B Sapphire.

    El administrador de la tienda puede proporcionar los ID de la tienda.
    lang_id

    El ID de idioma predeterminado de la tienda.

    -1 es inglés
    catalog_id

    El ID de catálogo utilizado en la tienda.

    El Administrador de tienda puede proporcionar id de catálogo.
    port_num El número de puerto utilizado en URL del escaparate.
    nombre_tienda

    El nombre de la tienda.

    La URL completa del escaparate es el nombre de host: port_num/store_name
    max_items_in_cart Número máximo de elementos del carrito. Para cada usuario, el número de artículos que se agregarán al carrito se calcula aleatoriamente entre uno y el valor de max_items_in_cart.
    fixed_number_of_items_in_cart

    Esta variable muestra si el número de artículos en el carrito se fija durante la ejecución o se calcula aleatoriamente para cada usuario. El valor de esta variable es booleano. 1 para verdadero y 0 para falso.

    • Si fixed_number_of_items_in_cart = 1, entonces el número de artículos en el carrito será igual al valor de max_items_in_cart para todos los usuarios.
    • Si fixed_number_of_items_in_cart = 0, el número de artículos del carro se seleccionará aleatoriamente para cada usuario entre 1 y el valor de max_items_in_cart.
    users_password La contraseña utilizada para los usuarios registrados. El script está configurado para utilizar una contraseña única para todos los usuarios registrados. Si planea usar una contraseña diferente para cada usuario, es posible que deba crear un grupo de datos diferente con dos columnas, una para el ID de usuario y otra para su contraseña.
    email_domain El dominio de correo electrónico que se agregará automáticamente a los ID de usuario. Está configurado de manera predeterminada como empresa.com, por lo que los correos electrónicos tendrán este formato string_email@company.com donde string_email es una cadena generada aleatoriamente.
    enable_80_20

    Esta variable habilita (cuando es igual a 1) o inhabilita (cuando es igual a 0) la regla 80/20.

    Cuando se habilita la regla 80/20 estableciendo esta variable en 1, cambiará la forma de elegir aleatoriamente las categorías y los productos. El 20% de las categorías y el 20% de los productos se seleccionarán el 80% del tiempo. Esto aumentará el acierto de memoria caché.

    Cuando se deshabilita la regla 80/20 al establecer esta variable en 0, todos los artículos del escaparate se seleccionan al azar sin ninguna regla.

    No es necesario establecer o actualizar las otras variables. Básicamente es un manojo de variables globales.

  2. Actualizar las pools de datos
    1. Abrir el Datapools folder en el Navegador de pruebas.
    2. Cambie el contenido del searchterm_oob datapool (haciendo clic con el botón derecho en él > Abrir con > Editor de texto) para incluir palabras clave de búsqueda relevantes para su catálogo.
    3. Abra el userids datapool y rellene la base de datos con los ID de usuario que ha creado e importado anteriormente a la base de datos.

      En la agrupación de datos, los usuarios con el formato “hcluser %” se agregan previamente.

      Antes de empezar la prueba de rendimiento, primero debe cargar los usuarios registrados en la base de datos.

  3. Actualizaciones planificadas
    1. Este proyecto se divide en cuatro planificaciones:
      Table 2.
      Planificar Descripción:
      B2CFlow Esta es la planificación más importante para impulsar la carga del escaparate de producción. Contiene el flujo de compra para los usuarios registrados, el flujo de compra para los usuarios invitados y la búsqueda.
      TestB2CFlow Esta planificación es la misma que B2CFlow. Debe utilizarse para probar y depurar nuevos módulos o códigos personalizados. Utiliza menos usuarios y el registro de rastreo se establece en Todo. Puede inhabilitar/habilitar partes de las planificaciones para probar una parte del flujo.
      B2CCleanCarts Se utiliza para limpiar carros de la compra. Muestra cómo podemos crear planificaciones nuevas rápidamente actualizando algunos módulos (B2CGoToCart) y combinando algunos módulos juntos.
      B2CDeleteFromCart Se utiliza para añadir algunos artículos al carro de la compra y, a continuación, limpiar el carro. Esta planificación muestra cómo podemos combinar y añadir módulos (sin ningún cambio) para crear una nueva planificación.
      B2CMyAccount Se utiliza para probar Mi cuenta para usuarios registrados. Añade y suprime direcciones. Esta parte no se incluye en B2CFlow porque puede crear muchas direcciones de envío y facturación para cada usuario registrado que no es común.
    2. Antes de ejecutar una prueba de rendimiento, asegúrese de comprobar y actualizar los elementos siguientes según sea necesario:
      1. Mostrar avanzadas

        Marque la casilla de verificación Mostrar avanzado cuando acceda inicialmente a la programación para ver las columnas Change Rate y Settle Time.

      2. Características de la etapa de usuario

        Seleccione y pulse Editar para modificar la etapa del usuario. Puede ajustar el número de usuarios, la duración de la ejecución, el ritmo al que se inician los usuarios y el tiempo de liquidación en la ventana emergente.

        Durante una hora, la configuración anterior ejecuta la planificación con 20 usuarios. A lo largo de 5 minutos, los 20 usuarios estarán activos y en ejecución.

      3. Tiempo de procesamiento

        Para consultar el tiempo de carga, haga clic en el menú desplegable Categoría y seleccione Think Time (Tiempo de procesamiento).

        El Tiempo de procesamiento (Think Time) es el tiempo que se tarda entre cada solicitud OneTest. Para la carga de estrés, es pequeño y para la carga de fiabilidad, es de entre 2 y 5 segundos.

      4. Muestreo de estadísticas

        Establezca el nivel de registro y el tiempo de intervalo utilizado por OneTest para recopilar estadísticas para verificar el muestreo de estadísticas.

        Para ejecuciones largas, aumente el intervalo, mientras que para carreras cortas, bájelo.

      5. Registro de prueba

        Puede establecer una pequeña cantidad de usuarios y niveles de registro en Todos si está depurando un problema. Desmarque Mostrar errores y fallas, Advertencias y Otros tipos para ejecuciones de producción extendidas y, especialmente, para una gran cantidad de usuarios.

      6. Peso de las transacciones

        Seleccione Selector aleatorio en la Planificación. Puede modificar el peso en el panel derecho en función del escenario que desee ejecutar. El porcentaje del bloqueo de la planificación cambiará a medida que se cambie el peso.

Ejecutar planificación

Una vez que haya completado los pasos anteriores, inicie el programa TestB2CFlow y ejecútelo con un usuario durante unos minutos con registros completos para verificar si hay algún problema.