tutorial online jmeter

online - JMeter: ¿cómo registrar la solicitud completa de una respuesta fallida?



jmeter windows (3)

Estoy usando la línea de comandos de JMeter para poner a prueba nuestra API del sitio web. Ahora, aquí hay un resultado de muestra que estoy obteniendo:

Creating summariser <summary> Created the tree successfully using street_advisor.jmx Starting the test @ Sat Oct 03 15:22:59 PDT 2009 (1254608579848) Waiting for possible shutdown message on port 4445 summary + 1 in 0.0s = 37.0/s Avg: 27 Min: 27 Max: 27 Err: 1 (100.00%) <snip a few more lines> <then i break it>

Entonces estoy recibiendo un error.

Actualmente, todos los errores van a un archivo. Cuando reviso ese archivo, dice que es un 404. Er ... ok. ¿De todos modos puedo ver exactamente lo que intentó JMeter?

aquí hay un fragmento de mi archivo de configuración ...

<ResultCollector guiclass="SimpleDataWriter" testclass="ResultCollector" testname="Error Writer" enabled="true"> <boolProp name="ResultCollector.error_logging">true</boolProp> <objProp> <name>saveConfig</name> <value class="SampleSaveConfiguration"> <time>true</time> <latency>true</latency> <timestamp>false</timestamp> <success>true</success> <label>true</label> <code>true</code> <message>true</message> <threadName>false</threadName> <dataType>true</dataType> <encoding>false</encoding> <assertions>true</assertions> <subresults>true</subresults> <responseData>false</responseData> <samplerData>false</samplerData> <xml>true</xml> <fieldNames>false</fieldNames> <responseHeaders>true</responseHeaders> <requestHeaders>true</requestHeaders> <responseDataOnError>false</responseDataOnError> <saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage> <assertionsResultsToSave>0</assertionsResultsToSave> <bytes>true</bytes> </value> </objProp> <stringProp name="filename">./error.jtl</stringProp> </ResultCollector>

Ahora, antes de que alguien diga ''Comprobar los archivos de registro del servidor web'', sé que puedo hacerlo y sí, encontré el 404 ... pero espero ver si es posible sin acceder a ellos ... especialmente si están activados. otro servidor y / o no puedo acceder a ellos. ¡Por favor ayuda!


El componente Ver el árbol de resultados muestra un árbol con todas las respuestas de muestra, lo que le permite ver tanto la solicitud como la respuesta para cualquier muestra.

Cuando se realiza la prueba de carga ( siempre en el modo NON GUI ), complete el campo "Nombre de archivo" y seleccione solo guardar Respuestas en caso de error:

Como puede ver arriba, hicimos clic en Configurar para seleccionar todos los campos excepto los CSV.

También puede guardar toda la respuesta a un archivo usando Guardar respuestas en un archivo :


Encontré este hilo buscando una solución para registrar la respuesta solo cuando falla un muestreador, por lo que la solución aceptada no es buena para mí. Tengo fallas de muestra ocasionales a una carga muy alta que involucra cientos de miles de muestras, por lo que un oyente de árbol es completamente impráctico para mí (alcanzará varios gigabytes de tamaño), así que esto es lo que se me ocurrió (que debería ser bueno para el escenario del PO también):

Agregue una [JSR223 Assertion][1] (debe aparecer después de todas las demás aserciones) y coloque el código siguiente en ella:

if (Boolean.valueOf(vars.get("DEBUG"))) { for (a: SampleResult.getAssertionResults()) { if (a.isError() || a.isFailure()) { log.error(Thread.currentThread().getName()+": "+SampleLabel+": Assertion failed for response: " + new String((byte[]) ResponseData)); } } }

Esto causará que toda la respuesta se registre en el archivo de registro de jmeter, lo que está bien en mi caso, ya que sé que las respuestas son realmente pequeñas, pero para respuestas grandes, se podría hacer un procesamiento más inteligente.


Hay un oyente ''Guardar respuestas en un archivo'', que puede guardar en un archivo solo cuando se produce un error.