{"id":1318,"date":"2013-05-27T18:33:33","date_gmt":"2013-05-27T17:33:33","guid":{"rendered":"http:\/\/blog.milamberspace.net\/?p=1318"},"modified":"2013-05-27T19:11:29","modified_gmt":"2013-05-27T18:11:29","slug":"mini-tutoriel-jmeter-enregistrer-le-champ-commentaires-des-elements-de-test-dans-le-fichier-de-resultats","status":"publish","type":"post","link":"https:\/\/blog.milamberspace.net\/index.php\/2013\/05\/27\/mini-tutoriel-jmeter-enregistrer-le-champ-commentaires-des-elements-de-test-dans-le-fichier-de-resultats-1318.html","title":{"rendered":"Mini tutoriel JMeter : Enregistrer le champ Commentaires des \u00e9l\u00e9ments de test dans le fichier de r\u00e9sultats"},"content":{"rendered":"<p>Suite \u00e0 une <a href=\"https:\/\/groups.google.com\/forum\/?fromgroups#!topic\/jmeter-fr\/Ypvb7Cx-Or8\">question<\/a> sur le groupe de discussion JMeter en fran\u00e7ais, voici un mini-tutoriel sur comment enregistrer le champ <strong>Commentaires<\/strong> des \u00e9l\u00e9ments de test dans le fichier de r\u00e9sultats de JMeter.<\/p>\n<p>On commence avec une vue d&rsquo;un arbre de test tr\u00e8s simple :<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_036.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1335\" style=\"border: 1px solid black;\" title=\"Arbre de test\" src=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_036.png\" alt=\"\" width=\"299\" height=\"130\" \/><\/a><\/p>\n<p>Dans l&rsquo;\u00e9chantillon <strong>Requ\u00eate HTTP<\/strong>, on d\u00e9finit un commentaire :<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_027.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1320\" style=\"border: 1px solid black;\" title=\"Remplir le champ Commentaires\" src=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_027.png\" alt=\"\" width=\"587\" height=\"236\" \/><\/a><\/p>\n<p>En fils de l&rsquo;\u00e9chantillon <strong>Requ\u00eate HTTP<\/strong>, on a donc un <strong>Pr\u00e9-Processeur BeanShell<\/strong> :<!--more--><\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_028.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1321\" style=\"border: 1px solid black;\" title=\"Script BeanShell\" src=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_028.png\" alt=\"\" width=\"582\" height=\"284\" \/><\/a><\/p>\n<p style=\"text-align: left;\">Le script (Java) du BeanShell est :<\/p>\n<pre>vars.put(\"COMMENTAIRE\", sampler.getComment());<\/pre>\n<p>Cela r\u00e9cup\u00e9re la valeur du champ <strong>Commentaires<\/strong> (sampler.getComment()) et\u00a0 la d\u00e9pose (var.put()) dans une variable JMeter donn\u00e9e (ici COMMENTAIRE).<\/p>\n<p>Ensuite on a un r\u00e9cepteur<strong> Enregistreur de donn\u00e9es<\/strong> (par exemple), dans lequel on d\u00e9finit un chemin et nom de fichier de r\u00e9sultats.<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_029.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1322\" style=\"border: 1px solid black;\" title=\"D\u00e9finir le fichier de r\u00e9sultat\" src=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_029.png\" alt=\"\" width=\"782\" height=\"128\" \/><\/a><\/p>\n<p>Toujours dans l&rsquo;enregistreur de donn\u00e9es, on clique sur le bouton <strong>Configurer<\/strong> afin de changer le format par d\u00e9faut (CSV depuis JMeter 2.9) en <strong>XML<\/strong>. Pourquoi ? car le champ <strong>Commentaires<\/strong> est multi-ligne, et donc le format CSV n&rsquo;est pas adapt\u00e9 au multi-ligne (sauf si le commentaire tient sur 1 seule ligne ;-))<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_030.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1323\" style=\"border: 1px solid black;\" title=\"Enregistrer en XML\" src=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_030.png\" alt=\"\" width=\"810\" height=\"288\" \/><\/a><\/p>\n<p>On clique sur la case <strong>Enregistrer au format XML<\/strong>, puis on clique sur le bouton <strong>Fait<\/strong>.<\/p>\n<p>Ensuite il faut \u00e9diter le fichier suivant :<\/p>\n<pre>JMeter_Home\/bin\/jmeter.properties<\/pre>\n<p>Vers la ligne n\u00b0444, vous allez retrouver la propri\u00e9t\u00e9 sample_variables en commentaire :<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_031.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1324\" style=\"border: 1px solid black;\" title=\"Editer la propri\u00e9t\u00e9 samples_variables\" src=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_031.png\" alt=\"\" width=\"972\" height=\"173\" \/><\/a><\/p>\n<p>Ajouter la ligne suivante pour demander \u00e0 JMeter de mettre dans le fichier de r\u00e9sultat (csv ou jtl) la valeur de la variable COMMENTAIRE lors de l&rsquo;enregistrement du r\u00e9sultat de l&rsquo;\u00e9l\u00e9ment dans le fichier. (<a href=\"http:\/\/jmeter.apache.org\/usermanual\/listeners.html#sample_variables\">doc de sample_variables<\/a>)<\/p>\n<pre>sample_variables=COMMENTAIRE<\/pre>\n<p>Enregistrer le fichier et fermer.<\/p>\n<p>(Re-)d\u00e9marrer JMeter pour la prise en compte du changement, puis lancer le test.<\/p>\n<p>A la fin du test, si vous regardez le fichier des r\u00e9sultats, vous avez maintenant la valeur du champ <em>Commentaires<\/em> dans un couple attribut-valeur COMMENTAIRE :<\/p>\n<pre>&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\r\n&lt;testResults version=\"1.2\"&gt;\r\n&lt;httpSample t=\"307\" lt=\"206\" ts=\"1369674390669\" s=\"true\" lb=\"Requ\u00eate HTTP\" rc=\"200\" \r\n       tn=\"Groupe d&amp;apos;unit\u00e9s 1-1\" by=\"9944\" ng=\"1\" na=\"1\" hn=\"ender\" <strong>COMMENTAIRE=\"Commentaire de ma requ\u00eate HTTP\"<\/strong>\/&gt;\r\n&lt;\/testResults&gt;<\/pre>\n<p>&nbsp;<\/p>\n<p>Et voil\u00e0!<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #000080;\"><strong>En bonus<\/strong><\/span>, voici comment enregistrer le champ <strong>Commentaires<\/strong> du <strong>Groupe d&rsquo;unit\u00e9s<\/strong> au d\u00e9but du fichier de r\u00e9sultat de JMeter :<\/p>\n<p>La capture d&rsquo;\u00e9cran ci-dessous montre les \u00e9l\u00e9ments ajout\u00e9s en bonus :<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_032.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1331\" style=\"border: 1px solid black;\" title=\"Bonus\" src=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_032.png\" alt=\"\" width=\"325\" height=\"177\" \/><\/a><\/p>\n<p>On note donc l&rsquo;utilisation du moteur d&rsquo;utilisateurs<strong> Groupe d&rsquo;unit\u00e9s de d\u00e9but<\/strong>, qui a la particularit\u00e9 de s&rsquo;\u00e9x\u00e9cuter avant les Groupes d&rsquo;unit\u00e9s &lsquo;normaux&rsquo;, au d\u00e9but du tir.<\/p>\n<p>Dans ce <strong>Groupe d&rsquo;unit\u00e9s de d\u00e9but<\/strong> on place un commentaire pour, par exemple, d\u00e9crire son sc\u00e9nario :<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_035.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1332\" style=\"border: 1px solid black;\" title=\"Groupe d'unit\u00e9s de d\u00e9but avec commentaire\" src=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_035.png\" alt=\"\" width=\"487\" height=\"265\" \/><\/a><\/p>\n<p>Ensuite, en fils du <strong>Groupe d&rsquo;unit\u00e9s de d\u00e9but<\/strong>, on place une <strong>Requ\u00eate Java<\/strong> (par exemple, mais un \u00e9chantillon <strong>D\u00e9bogage<\/strong> fait aussi bien, voir mieux, l&rsquo;affaire).<\/p>\n<p>Volontairement, j&rsquo;ai chang\u00e9 le <strong>Nom<\/strong> de l&rsquo;\u00e9l\u00e9ment afin de bien distinguer la ligne \u00ab\u00a0Caract\u00e9risques du sc\u00e9nario\u00a0\u00bb dans mon futur fichier de r\u00e9sultat.<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_033.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1333\" style=\"border: 1px solid black;\" title=\"Requ\u00eate Java\" src=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_033.png\" alt=\"\" width=\"633\" height=\"285\" \/><\/a><\/p>\n<p>En fils, toujours un <strong>Pr\u00e9-Processeur BeanShell<\/strong> :<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_034.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1334\" style=\"border: 1px solid black;\" title=\"Beanshell\" src=\"http:\/\/blog.milamberspace.net\/wp-content\/uploads\/2013\/05\/Selection_034.png\" alt=\"\" width=\"628\" height=\"290\" \/><\/a><\/p>\n<p>Le script (Java) du BeanShell est :<\/p>\n<pre>vars.put(\"COMMENTAIRE\", (ctx.getThreadGroup()).getComment());<\/pre>\n<p>Cela r\u00e9cup\u00e9re la valeur du champ <strong>Commentaires<\/strong> de Groupe d&rsquo;unit\u00e9s rattach\u00e9 \u00e0 l&rsquo;\u00e9lement &#8211; ici le groupe d&rsquo;unit\u00e9s de d\u00e9but &#8211; (ctx.getThreadGroup()).getComment()) et\u00a0 la d\u00e9pose (var.put()) dans une variable JMeter donn\u00e9e (ici COMMENTAIRE).<\/p>\n<p>On enregistre, et on lance de nouveau le tir.<\/p>\n<p>&nbsp;<\/p>\n<p>Et voil\u00e0, une nouvelle ligne s&rsquo;ajoute au d\u00e9but du fichier :<\/p>\n<pre>&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\r\n&lt;testResults version=\"1.2\"&gt;\r\n<strong>&lt;sample t=\"154\" lt=\"0\" ts=\"1369677569228\" s=\"true\" <span style=\"color: #000080;\">lb=\"Carat\u00e9ristiques du sc\u00e9nario\"<\/span> rc=\"\" <\/strong>\r\n<strong> tn=\"Groupe d&amp;apos;unit\u00e9s de d\u00e9but 1-1\" by=\"0\" ng=\"1\" na=\"1\" hn=\"ender\" <span style=\"color: #000080;\">COMMENTAIRE=\"Sc\u00e9nario A avec 2 \u00e9crans de validation\"<\/span>\/&gt;<\/strong>\r\n&lt;httpSample t=\"312\" lt=\"210\" ts=\"1369677569505\" s=\"true\" lb=\"Requ\u00eate HTTP\" rc=\"200\" \r\n         tn=\"Groupe d&amp;apos;unit\u00e9s 1-1\" by=\"9944\" ng=\"1\" na=\"1\" hn=\"ender\" COMMENTAIRE=\"Commentaire de ma requ\u00eate HTTP\"\/&gt;\r\n&lt;\/testResults&gt;<\/pre>\n<p>&nbsp;<\/p>\n<p>Bon continuation dans vos aventures JMeter.<\/p>\n<p>.\/<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Suite \u00e0 une question sur le groupe de discussion JMeter en fran\u00e7ais, voici un mini-tutoriel sur comment enregistrer le champ Commentaires des \u00e9l\u00e9ments de test dans le fichier de r\u00e9sultats de JMeter. On commence avec une vue d&rsquo;un arbre de test tr\u00e8s simple : Dans l&rsquo;\u00e9chantillon Requ\u00eate HTTP, on d\u00e9finit un commentaire : En fils &hellip; <a href=\"https:\/\/blog.milamberspace.net\/index.php\/2013\/05\/27\/mini-tutoriel-jmeter-enregistrer-le-champ-commentaires-des-elements-de-test-dans-le-fichier-de-resultats-1318.html\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">Mini tutoriel JMeter : Enregistrer le champ Commentaires des \u00e9l\u00e9ments de test dans le fichier de r\u00e9sultats<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[32,33,150],"tags":[299,330,298],"class_list":["post-1318","post","type-post","status-publish","format-standard","hentry","category-apache","category-jmeter","category-tutoriel","tag-fichier","tag-jmeter","tag-sample_variables"],"_links":{"self":[{"href":"https:\/\/blog.milamberspace.net\/index.php\/wp-json\/wp\/v2\/posts\/1318","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.milamberspace.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.milamberspace.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.milamberspace.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.milamberspace.net\/index.php\/wp-json\/wp\/v2\/comments?post=1318"}],"version-history":[{"count":7,"href":"https:\/\/blog.milamberspace.net\/index.php\/wp-json\/wp\/v2\/posts\/1318\/revisions"}],"predecessor-version":[{"id":1330,"href":"https:\/\/blog.milamberspace.net\/index.php\/wp-json\/wp\/v2\/posts\/1318\/revisions\/1330"}],"wp:attachment":[{"href":"https:\/\/blog.milamberspace.net\/index.php\/wp-json\/wp\/v2\/media?parent=1318"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.milamberspace.net\/index.php\/wp-json\/wp\/v2\/categories?post=1318"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.milamberspace.net\/index.php\/wp-json\/wp\/v2\/tags?post=1318"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}