example - getjson jquery ejemplos
¿Cómo enviar datos JSON desde un archivo csv en el método POST? (1)
Asegúrese de tener el Recycle on EOF
conjunto de datos CSV Recycle on EOF
y Stop Thread on EOF
valores Stop Thread on EOF
correctamente:
- si planea iterar sobre el archivo más de una vez, debe establecer
Recycle on EOF = True
(es decir, indicarle a jmeter que regrese a la parte superior del archivo CSV); - establezca
Stop Thread on EOF = False
si está utilizando un controlador de bucle,Stop Thread on EOF = True
si está usando un controlador while y desea detenerse después de leer todo el conjunto de datos csv; - en caso de que necesite que cada uno de N subprocesos lea y use una sola línea del archivo csv, debe establecer el
Sharing mode: Current thread group
para la configuración del conjunto de datos CSV (el número de entradas csv debe ser en este caso el mismo que número de subprocesos, oRecycle on EOF? False
debe establecerse de lo contrario); - en caso de que necesite que cada uno de N subprocesos lea y use todas las líneas de csv-file, debe configurar el
Sharing mode: Current thread
para CSV Data Set Config.
No olvides mirar en jmeter.log o usar Log Viewer para detectar cualquier problema con el uso de csv.
El caso más simple es como el siguiente:
Test Group
Number of Threads = 10
CSV Data Set Config (User Logins)
Filename: ... (your csv-file should have 10 entries)
Recycle on EOF = False
Stop Thread on EOF = True
Sharing Mode = All threads
CSV Data Set Config (License Request)
Filename: ... (your csv-file should have 10 entries)
Recycle on EOF = False
Stop Thread on EOF = True
Sharing Mode = All threads
Login Sampler
License request Sampler
Esto producirá 10 subprocesos cada uno con entrada de inicio de sesión independiente y entrada de solicitud de licencia de csv.
En mi proyecto, estoy usando Jmeter para pruebas de carga.
Creé un plan de prueba de la siguiente manera:
- Inicie sesión en la aplicación usando un archivo csv que tenga 10 nombre de usuario y contraseña únicos (hecho con éxito)
- Un extractor de expresiones regular obtendrá la identificación de la sesión de la respuesta que se usará en la próxima muestra para enviar una solicitud. (sessionId extraído con éxito)
La próxima muestra enviará una solicitud. Esta muestra acepta dos parámetros: sessionId & licenseRequest. Un pequeño detalle para el script java es el siguiente:
url: "groovy/enqueue", type: "POST", global: false, data: {sessionId: uSessionId, licenseRequest: JSON.stringify(requestJSON) }, dataType: "text",
Para enviar la solicitud, he creado un archivo csv.
El csv es similar a esto:
Entrada 1:
{"activations":["<activation-code>","<activation-code>"],"email":"<emailIdofUser>","csvEntries":[{"model":"<modelname>","serial":"<serialNo>"}],"comment":"testing jmeter"}
Lo que descubrí es que, al enviar la solicitud en la segunda muestra, la solicitud posterior está mal formada:
POST data:
sessionId=vZNjFjW38cid&licenseRequest=%3CEOF%3E
Como puede ver, el valor de licenseRequest no es correcto. Está enviando el EOF, que no es deseado.