[JMeter] : rapport généré avec ANT affiche NaN dans Min et Max

59 vues
Accéder directement au premier message non lu

Annie

non lue,
27 oct. 2009, 12:27:3827/10/2009
à JMeter en français
salut,

J’ai des soucis avec l’affichage de mes rapports créés à partir de
ANT. (http://www.programmerplanet.org/pages/projects/jmeter-ant-
task.php)

En effet je n’arrive pas à afficher les données de temps MIN et MAX.
Ils prennent systématiquement la valeur NaN.

J’ai cru comprendre qu’avec une version de JDK supérieure au 1.4.2,
ces données ne s’afficheraient plus. Existe t-il une solution ?

Que faut-il modifier dans le fichier "jmeter-results-detail-
report_21.xsl" pour que ça fonctionne ?

Merci d'avance de votre aide

Annie

Milamber

non lue,
27 oct. 2009, 18:56:4327/10/2009
à jmet...@googlegroups.com
Bonjour,

Effectivement c'est un bug connu du scripts XSL qui fait la conversion
https://issues.apache.org/bugzilla/show_bug.cgi?id=39736

Et oui, d'après les commentaires du bug, il faut arriver à faire une
nouvelle version du fichier XSL qui fonctionne avec le JDK voulu.

A+
Milamber

Le 27/10/2009 16:27, Annie a ecrit :

Annie

non lue,
28 oct. 2009, 04:30:1528/10/2009
à JMeter en français
Bonjour,

Je te remercie pour ta réponse rapide.

Effectivement c'est ce que j'ai essayé de faire et malheureusement je
suis débutante en xsl.
d'où ma question:

Est ce quelqu'un aurait une version de xsl à me proposer ? (là j'avoue
je ne sais pas faire)

merci
Annie

On 27 oct, 23:56, Milamber <milambersp...@gmail.com> wrote:
> Bonjour,
>
> Effectivement c'est un bug connu du scripts XSL qui fait la conversionhttps://issues.apache.org/bugzilla/show_bug.cgi?id=39736

Annie

non lue,
28 oct. 2009, 12:22:5228/10/2009
à JMeter en français
Bonjour,

Juste une note pour vous donner la solution :

En fait il faut modifier, uniquement, votre fichier build.xml:

1) Rajouter une nouvelle propriété en début de fichier, par exemple :

<property name="lib.dir" value="${jmeter.home}/lib"/>

répertoire lib dans lequel vont se trouver les fichiers
xalan_2_7_1.jar et serializer-2_9_1.jar

2) Dans la définition de de votre ou vos <target>, au niveau de la
balise <xslt> , rajouter les deux lignes suivantes :

classpathref="xslt.classpath"
force="true"

ceci permettra de forcer ANT à aller chercher le bon interpréteur XSL,
qui donne dans votre fichier build.xml:

<xslt
classpathref="xslt.classpath"
force="true"

in="${jmeter.automatedtests.results.dir}/
JMeterResults.jtl"
out="${jmeter.automatedtests.results.dir}/${reportTime}
ElementaryTestingResults_01.html"
style="${jmeter.home}/extras/jmeter-results-detail-
report_21.1.xsl"/>


3) Puis , tout à la fin de votre fichier build.xml ne pas oublier de
rajouter le xslt.classpath pour être sur de pointer ver les bon
fichiers .jar (avant la balise "</project>" ) :

<!-- Use xalan copy from JMeter lib directory to ensure consistent
processing with Java 1.4+ -->
<path id="xslt.classpath">
<fileset dir="${lib.dir}" includes="xalan*.jar"/>
<fileset dir="${lib.dir}" includes="serializer*.jar"/>
</path>

voici mon fichier build.xml comme exemple:

<?xml version="1.0"?>
<project name="build-tests" default="run-JMeter" basedir=".">
<tstamp>
<format property="reportTime" pattern="ddMMMyyyy.HH'H'mm."
locale="en,UK"/>
</tstamp>

<property name="jmeter.home" value="C:/testCharges/
WebServices_JMeter_Tests" />

<property name="jmeter.automatedtests" value="${jmeter.home}/
UnitTests/bin" />
<property name="jmeter.automatedtests.results.dir" value="$
{jmeter.home}/UnitTests/reports" />
<property name="lib.dir" value="${jmeter.home}/lib"/>

<target name="initLoadtestsFolder">
<mkdir dir="${jmeter.loadtests.results.dir}" />
</target>

<target name="cleanLoadtestsFolder">
<delete failonerror="false">
<fileset dir="${jmeter.loadtests.results.dir}">
<include name="**/*" />
<exclude name="**/*html*" />
</fileset>
</delete>
</target>

<target name="initAutomatedtestsFolder">
<mkdir dir="${jmeter.automatedtests.results.dir}" />
</target>

<target name="cleanAutomatedtestsFolder">
<delete failonerror="false">
<fileset dir="${jmeter.automatedtests.results.dir}">
<include name="**/*" />
<exclude name="**/*html*" />
</fileset>
</delete>
</target>


<target name="run-elementary-tests"
depends="initAutomatedtestsFolder, cleanAutomatedtestsFolder">
<taskdef name="jmeter"
classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
<jmeter
jmeterhome="${jmeter.home}"
testplan="${jmeter.automatedtests}/
StoreCoreEnablerSEI_V2_3.WS.Generics_01.jmx"
resultlog="${jmeter.automatedtests.results.dir}/
JMeterResults.jtl">

<property name="jmeter.save.saveservice.assertion_results"
value="all"/>
<property name="jmeter.save.saveservice.output_format" value="xml"/
>
<property name="includecontroller.prefix" value="C:/testCharges/
WebServices_JMeter_Tests/lib/"/>
</jmeter>

<xslt
classpathref="xslt.classpath"
force="true"
in="${jmeter.automatedtests.results.dir}/JMeterResults.jtl"
out="${jmeter.automatedtests.results.dir}/${reportTime}
ElementaryTestingResults_01.html"
style="${jmeter.home}/extras/jmeter-results-detail-report_21.1.xsl"/
>

</target>

<!-- Use xalan copy from JMeter lib directory to ensure consistent
processing with Java 1.4+ -->
<path id="xslt.classpath">
<fileset dir="${lib.dir}" includes="xalan*.jar"/>
<fileset dir="${lib.dir}" includes="serializer*.jar"/>
</path>
</project>

Milamber

non lue,
28 oct. 2009, 16:38:5328/10/2009
à jmet...@googlegroups.com
Bonjour,

Merci pour la solution.
Je viens de m'apercevoir que c'est déjà implémenté dans la version 2.3.4
(et 2.3.3). Je suppose que tu n'utilises pas la dernière version de JMeter ?

En tout cas, je viens de tester avec la 2.3.4, cela fonctionne (je n'ai
pas de NaN). Dommage, car hier avant de te répondre, j'avais testé que
cela ne marchait pas aussi pour moi, avec un vieux build.xml à moi
datant de la version 1.9 ou 2.0 de JMeter...

A+
Milamber

Le 28/10/2009 16:22, Annie a ecrit :

Annie

non lue,
29 oct. 2009, 04:18:5129/10/2009
à JMeter en français
Bonjour,

Mon erreur a été d'avoir utilisé un vieux build.xml.
Du coup qd on le met à jour ça marche beaucoup mieux.

Comme quoi faire de la réutilisation n'est pas toujours une bonne
idée ;-)

Annie
Répondre à tous
Répondre à l'auteur
Transférer
0 nouveau message