JMeter 5.4.1 & Non GUI......13 paramètres -J et pas un de plus

25 views
Skip to first unread message

Jean-Marie Markowski

unread,
Oct 4, 2021, 1:21:14 PM10/4/21
to JMeter en français
Bonjour à tous,
Je reviens vers vous avec une constatation qui me bloque.
En effet, je démarre mes scénarii à partir de JENKINS et par conséquent je fais usage de nombreux paramètres en CLI.
Le problème réside particulièrement lorsque j'utilise plus de 13 paramètres -J
Exemple : 
jmeter.bat -JParam01=1 -JParam02=1 -JParam03=1 -JParam04=1 -JParam05=1 -JParam06=1 -JParam07=1 -JParam08=1 -JParam09=1 -JParam10=1 -JParam11=1 -JParam12=1 -JParam13=1 -JParam14=1 -n -t test.jmx

Lorsque vous exécuter le scénario on a une erreur :
errorlevel=-1073741819
Appuyez sur une touche pour continuer...

lorsque vous exécuter :
jmeter.bat -JParam01=1 -JParam02=1 -JParam03=1 -JParam04=1 -JParam05=1 -JParam06=1 -JParam07=1 -JParam08=1 -JParam09=1 -JParam10=1 -JParam11=1 -JParam12=1 -JParam13=1 -n -t test.jmx

Il n'y a plus de problème :)
Je sais que je pourrai utiliser la paramètre -q
Exemple : 
jmeter.bat -l TEST.jtl -j TEST.log -q test.properties -n -t test.jmx

J'utilise le JRE 1.8.161

Ma question serait de savoir pourquoi il y un limite et d'où elle vient.

Merci d'avance

Vincent Daburon

unread,
Oct 6, 2021, 8:57:13 AM10/6/21
to JMeter en français
Bonjour,
Le parametre -q mon_fichier.properties merge les properties de ce fichier avec jmeter.properties et user.properties
Le paramètre -q mon_fichier.properties est uniquement une mono instance de JMeter pour les tests avec plusieurs injecteurs c'est -Gmon_fichier.properties avec les properties du fichier indiqué par -G qui est envoyé à l'ensemble des injecteurs.

Je ne réponds par directement à ton interrogation mais je propose une autre solution pour gérer des paramètres externes via Jenkins (ou sans Jenkins).

Une solution alternative est d'utiliser jmeter-maven-plugin et de déclarer les properties dans la partie
                    <propertiesUser>
                        <!-- emplacement des fichiers csv -->
                        <dirProjet>${project.build.directory}/jmeter</dirProjet>
                        <dirData>${project.build.directory}/jmeter/testFiles</dirData>
                       
                        <mise_au_point>${mise_au_point}</mise_au_point>
                       
                        <SC01_nb_users>${SC01_nb_users}</SC01_nb_users>
                        <SC01_rampup_time>${SC01_rampup_time}</SC01_rampup_time>
                        <SC01_loop_count>${SC01_loop_count}</SC01_loop_count>
                        <SC01_duration>${SC01_duration}</SC01_duration>
                        <SC01_startup_delay>${SC01_startup_delay}</SC01_startup_delay>
                       
                        <SC03_nb_users>${SC03_nb_users}</SC03_nb_users>
                        <SC03_rampup_time>${SC03_rampup_time}</SC03_rampup_time>
                        <SC03_loop_count>${SC03_loop_count}</SC03_loop_count>
                        <SC03_duration>${SC03_duration}</SC03_duration>
                        <SC03_startup_delay>${SC03_startup_delay}</SC03_startup_delay>

                    </propertiesUser>
Les valeurs de properties sont définies par défaut dans le pom.xml
        <!-- Ces properties peuvent etre surchargees (changees) au lancement avec
        mvn -Dparam=value, ex -DSC01_nb_users=5 va remplacer avec la valeur 5 la valeur par defaut 3
        et/ou on utilise un profil -->
        <SC01_nb_users>3</SC01_nb_users>
        <SC01_rampup_time>30</SC01_rampup_time>
        <SC01_loop_count>-1</SC01_loop_count>
        <SC01_duration>120</SC01_duration>
        <SC01_startup_delay>0</SC01_startup_delay>
       
        <SC03_nb_users>2</SC03_nb_users>
        <SC03_rampup_time>30</SC03_rampup_time>
        <SC03_loop_count>-1</SC03_loop_count>
        <SC03_duration>110</SC03_duration>
        <SC03_startup_delay>0</SC03_startup_delay>

et elles sont également renseignées dans des profils maven
    <profiles>
        <profile>
            <id>tir_chauffe</id>
            <properties>
                <SC01_nb_users>1</SC01_nb_users>
                <SC01_rampup_time>1</SC01_rampup_time>
                <SC01_loop_count>5</SC01_loop_count>
                <SC01_duration>7200</SC01_duration>
                <SC01_startup_delay>0</SC01_startup_delay>
                <SC03_nb_users>1</SC03_nb_users>
                <SC03_rampup_time>1</SC03_rampup_time>
                <SC03_loop_count>5</SC03_loop_count>
                <SC03_duration>7200</SC03_duration>
                <SC03_startup_delay>0</SC03_startup_delay>
                <mise_au_point>true</mise_au_point>
            </properties>
        </profile>
        <profile>
            <id>tir_50pct_charge_1_plateau_10min</id>
            <properties>
                <SC01_nb_users>4</SC01_nb_users>
                <SC01_rampup_time>60</SC01_rampup_time>
                <SC01_loop_count>-1</SC01_loop_count>
                <SC01_duration>600</SC01_duration>
                <SC01_startup_delay>0</SC01_startup_delay>
                <SC03_nb_users>3</SC03_nb_users>
                <SC03_rampup_time>60</SC03_rampup_time>
                <SC03_loop_count>-1</SC03_loop_count>
                <SC03_duration>600</SC03_duration>
                <SC03_startup_delay>0</SC03_startup_delay>
                <mise_au_point>false</mise_au_point>
            </properties>
        </profile>
        <profile>
            <id>tir_ic_100pct_charge_1_plateau_20min</id>
            <properties>
                <SC01_nb_users>8</SC01_nb_users>
                <SC01_rampup_time>60</SC01_rampup_time>
                <SC01_loop_count>-1</SC01_loop_count>
                <SC01_duration>1200</SC01_duration>
                <SC01_startup_delay>0</SC01_startup_delay>
                <SC03_nb_users>6</SC03_nb_users>
                <SC03_rampup_time>60</SC03_rampup_time>
                <SC03_loop_count>-1</SC03_loop_count>
                <SC03_duration>1200</SC03_duration>
                <SC03_startup_delay>0</SC03_startup_delay>
                <mise_au_point>false</mise_au_point>
            </properties>
        </profile>

au lancement, on choisit d'ajouter ou non le profil pour prendre les valeurs des différents profils.
Ex : mvn -Ptir_50pct_charge_1_plateau_10min verify


Et pour les graphes, ce plugin :

Cordialement
Vincent DAB.
Reply all
Reply to author
Forward
0 new messages