JMeter + Python implementa pruebas de interfaz asincrónicas

Cuando utilice JMeter y Python para implementar pruebas de interfaz asincrónicas, puede seguir los siguientes pasos:

1. Instale JMeter y el kit de desarrollo Java (JDK):

Descargue e instale JMeter (https://jmeter.apache.org/download_jmeter.cgi) y el JDK para su sistema operativo .

2. Escriba el archivo del plan de prueba JMX:

Cree y configure planes de prueba utilizando JMeter GUI. Abra JMeter y haga clic en "Archivo" > "Plantillas" > "Creación de un plan de prueba web" > "Crear" para crear un nuevo plan de prueba. Luego siga los pasos a continuación para configurar:

imagen

Grupo de subprocesos: establezca la cantidad de subprocesos, la cantidad de usuarios simultáneos, la cantidad de bucles, etc.
Solicitud HTTP asíncrona: establezca la URL, el método de solicitud, los parámetros, etc.
Aserción: establezca reglas de aserción para verificar si los resultados devueltos por la interfaz cumplen con las expectativas.
Ver árbol de resultados: se utiliza para ver las respuestas y los resultados de la interfaz.

3. Guarde el archivo JMX:

Haga clic en "Archivo" > "Guardar plan de prueba como" para guardar el plan de prueba como un archivo JMX.

4. Escriba un script en Python:

Utilice scripts de Python para ejecutar planes de prueba de JMeter . Aquí hay un código de muestra:

import subprocess 

jmeter_path = "/path/to/jmeter" # 替换为你的JMeter路径 
jmeter_test_plan = "/path/to/your_test_plan.jmx" # 替换为你的测试计划文件路径 

def run_jmeter_test_plan(): 
    cmd = [jmeter_path, "-n", "-t", jmeter_test_plan, "-l", "/path/to/result.jtl"] 
    try: 
        subprocess.check_call(cmd) 
        print("JMeter test plan executed successfully.") 
    except subprocess.CalledProcessError as e: 
        print("JMeter test plan execution failed:", e) 
        
run_jmeter_test_plan()

En el script de Python, las variables jmeter_path y jmeter_test_plan deben reemplazarse con la ruta y el nombre del archivo reales. La opción -l se utiliza para especificar la ruta de salida del archivo de resultados.

5. Ejecute el script de Python:

Ejecute el script Python anterior y llamará a la línea de comando JMeter para ejecutar el plan de prueba y guardar los resultados en el archivo JTL especificado.

6. Analice los resultados de la prueba:

Utilice Python para analizar el archivo de resultados de la prueba JMeter y obtener el tiempo de respuesta correspondiente, información de error, etc. Puede utilizar la biblioteca pandas de Python u otras bibliotecas relacionadas para procesar archivos de resultados de pruebas en formato CSV o JTL.

import pandas as pd

def parse_results():
    results = pd.read_csv(result_file, delimiter=",", skiprows=1)

    # 获取响应时间信息
    response_times = results['Latency'].tolist()

    # 获取错误信息
    errors = results.loc[results['Success'] == False, 'ResponseMessage'].tolist()

    # 输出结果
    print("Response Times:", response_times)
    print("Errors:", errors)

parse_results()

En este ejemplo, la biblioteca pandas se utiliza para leer el archivo CSV y omitir la fila del encabezado de la primera fila (skiprows=1). Luego, obtenga el tiempo de respuesta y la información de error accediendo a las columnas correspondientes. Se puede analizar y procesar información adicional en función de las necesidades reales y la estructura del archivo de resultados. La biblioteca pandas proporciona ricas capacidades de procesamiento de datos y puede utilizar sus métodos y funciones flexibles para procesar los resultados de las pruebas de JMeter.

Lo anterior solo proporciona un marco básico, y es posible que la implementación real deba ajustarse de acuerdo con necesidades específicas y planes de prueba. Es posible que se requiera configuración adicional, como agregar aserciones, configurar temporizadores, etc. para simular solicitudes asincrónicas.

Finalmente me gustaría agradecer a todos los que leyeron atentamente mi artículo, la reciprocidad siempre es necesaria, aunque no es algo muy valioso, si puedes usarlo, puedes tomarlo directamente:

Insertar descripción de la imagen aquí

Esta información debería ser el almacén de preparación más completo y completo para los amigos [de pruebas de software]. Este almacén también ha acompañado a decenas de miles de ingenieros de pruebas en el viaje más difícil. ¡Espero que también pueda ayudarlo a usted!

Supongo que te gusta

Origin blog.csdn.net/NHB456789/article/details/133096369
Recomendado
Clasificación