JMeter-Run.fichier jmx via la ligne de commande et obtenir le rapport de synthèse dans un excel

Je suis nouveau sur jmeter. J'ai l' .fichier JMX containg tous les échantillonneurs http requis. Je pourrais l'exécuter à travers L'interface utilisateur Jmeter en utilisant "Run - > Start" et afficher le résultat dans le "rapport récapitulatif". Je peux ensuite enregistrer les résultats à la .csv en utilisant le bouton "Enregistrer les données de la Table "dans" rapport récapitulatif".

La Question Est de savoir comment puis-je obtenir la même chose en utilisant la ligne de commande.

21
demandé sur user1788294 2014-07-02 21:41:08

8 réponses

JMeter peut être lancé en mode non-GUI comme suit:

jmeter -n -t /path/to/your/test.jmx -l /path/to/results/file.jtl

Vous pouvez définir ce que vous souhaitez voir dans le fichier JTL résultat en jouant avec les propriétés JMeter.

Consultez le fichier jmeter.properties sous le dossier / bin de votre installation JMeter et recherchez ceux commençant par

jmeter.save.saveservice.

Les valeurs par défaut sont listées ci-dessous:

#jmeter.save.saveservice.output_format=csv
#jmeter.save.saveservice.assertion_results_failure_message=false
#jmeter.save.saveservice.assertion_results=none
#jmeter.save.saveservice.data_type=true
#jmeter.save.saveservice.label=true
#jmeter.save.saveservice.response_code=true
#jmeter.save.saveservice.response_data=false
#jmeter.save.saveservice.response_data.on_error=false
#jmeter.save.saveservice.response_message=true
#jmeter.save.saveservice.successful=true
#jmeter.save.saveservice.thread_name=true
#jmeter.save.saveservice.time=true
#jmeter.save.saveservice.subresults=true
#jmeter.save.saveservice.assertions=true
#jmeter.save.saveservice.latency=true
#jmeter.save.saveservice.samplerData=false
#jmeter.save.saveservice.responseHeaders=false
#jmeter.save.saveservice.requestHeaders=false
#jmeter.save.saveservice.encoding=false
#jmeter.save.saveservice.bytes=true
#jmeter.save.saveservice.url=false
#jmeter.save.saveservice.filename=false
#jmeter.save.saveservice.hostname=false
#jmeter.save.saveservice.thread_counts=false
#jmeter.save.saveservice.sample_count=false
#jmeter.save.saveservice.idle_time=false
#jmeter.save.saveservice.timestamp_format=ms
#jmeter.save.saveservice.timestamp_format=yyyy/MM/dd HH:mm:ss.SSS
#jmeter.save.saveservice.default_delimiter=,
#jmeter.save.saveservice.default_delimiter=\t
#jmeter.save.saveservice.print_field_names=false
#jmeter.save.saveservice.xml_pi=<?xml-stylesheet type="text/xsl" href="../extras/jmeter-results-detail-report_21.xsl"?>
#jmeter.save.saveservice.base_prefix=~/
#jmeter.save.saveservice.autoflush=false

Décommentez celui qui vous intéresse et définissez sa valeur pour changer la valeur par défaut. Une autre option est la propriété override dans le fichier user.properties ou la fournir en tant que argument de ligne de commande utilisant la touche -J comme suit:

jmeter -Jjmeter.save.saveservice.print_field_names=true -n /path/to/your/test.jmx -l /path/to/results/file.jtl

Voir Apache JMeter Properties Customization Guide pour plus de détails sur ce qui peut être fait en utilisant les propriétés JMeter.

37
répondu Dmitri T 2014-07-03 09:26:37

Vous pouvez exécuter JMeter à partir de la ligne de commande en utilisant le paramètre-n Pour 'Non-GUI' et le paramètre-t pour le fichier de plan de test.

    jmeter -n -t "PATHTOJMXFILE"        

Si vous souhaitez personnaliser davantage l'expérience en ligne de commande, je vous dirigerais vers la section 'Getting Started' de leur documentation.

2
répondu Quinnlv 2014-07-02 20:37:16

Vous pouvez utiliser cette commande,

jmeter -n -t /path to the script.jmx -l /path to save results with file name file.jtl

Mais si vous voulez vraiment exécuter un test de charge sur une machine distante, vous devriez pouvoir le faire fonctionner même si vous fermez la fenêtre. Nous pouvons donc utiliser nohup pour ignorer le signal HUP (hangup). Vous pouvez donc utiliser cette commande comme ci-dessous.

nohup sh jmeter.sh -n -t /path to the script.jmx -l /path to save results with file name file.jtl &
2
répondu Ushani 2015-08-13 18:53:18

Ce serait l'instruction de ligne de commande.

"%JMETER_HOME%\bin\jmeter.bat" -n -t <jmx test file path> -l <csv result file path> -Djmeter.save.saveservice.output_format=csv
0
répondu vins 2014-07-02 23:34:46

En mode Ligne de commande: J'ai prévu sur le système d'exploitation Linux.

  1. Téléchargez la dernière version de jmeter. Apache JMeter 3.2 (Requires Java 8 or later) dès maintenant.

  2. Extraire dans le répertoire de votre choix. Par exemple, extraire vers /tmp/

  3. maintenant, le format de fichier de sortie par défaut sera csv. Pas besoin de changer quoi que ce soit ou de spécifier dans la commande CLI. exemple: ./jmeter -n -t examples/test.jmx -l examples/output.csv

Pour modifier le format par défaut, modifiez le paramètre suivant dans jmeter.propriétés : jmeter.save.saveservice.output_format=xml

Maintenant, si vous exécutez la commande : ./jmeter -n -t examples/test.jmx -l examples/output.jtl la sortie est stockée au format xml.

Maintenant, faites la demande sur plusieurs serveurs (requête D'informations supplémentaires): nous pouvons spécifier hôte et port comme balises dans

./jmeter -n -t examples/test.jmx -l examples/output.jtl -JHOST=<HOST> -JPORT=<PORT>

0
répondu shashankS 2017-07-11 10:17:47

Cela a fonctionné pour moi sur mac os High sierra 10.13.6, java 8 64 bits, jmeter 4.0

$  jmeter -n --testfile /path/to/Test_Plan.jmx

Exemple de sortie:

Creating summariser <summary>
Created the tree successfully using ./src/test/jmeter/Test_Plan.jmx
Starting the test @ Fri Aug 24 17:18:18 PDT 2018 (1535156298333)
Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
summary =     10 in 00:00:09 =    1.1/s Avg:  6666 Min:  1000 Max:  8950 Err:     
0 (0.00%)
Tidying up ...    @ Fri Aug 24 17:18:28 PDT 2018 (1535156308049)
... end of run
0
répondu user674669 2018-08-25 00:20:54

Accédez au répertoire jmeter/bin depuis la ligne de commande et

jmeter -n -t <YourTestScript.jmx> -l <TestScriptsResults.jtl>
-1
répondu Adnan 2016-08-22 14:40:57

Exécution de JMeter en mode ligne de commande:

1.Accédez au répertoire bin de JMeter

Entrez maintenant la commande suivante,

jmeter -n –t test.jmx

- n: spécifie que JMeter doit s'exécuter en mode non-gui

- t: spécifie le nom du fichier JMX contenant le Plan de Test

-1
répondu amit1881 2017-08-08 11:01:46