Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Saved Aggregate Report is Different from original when reloaded #1384

Closed
asfimport opened this issue Jun 9, 2004 · 6 comments
Closed

Saved Aggregate Report is Different from original when reloaded #1384

asfimport opened this issue Jun 9, 2004 · 6 comments

Comments

@asfimport
Copy link
Collaborator

udele (Bug 29481):
If I save the aggregate report results of a test to a jtl file, reopen it in
another aggregate report listener, and compare the results, some of the
numbers are off. The numbers for one url is completely wrong while the others
were calculated correctly. I was able to reproduce this several times,
however I have not tried this with other types of listeners.

Severity: normal
OS: Windows XP

@asfimport
Copy link
Collaborator Author

Sebb (migrated from Bugzilla):
Could you perhaps attach a sample JTL file that shows the problem?

@asfimport
Copy link
Collaborator Author

udele (migrated from Bugzilla):
Created attachment test.jtl: Sample jtl file for calculations

test.jtl
<?xml version="1.0" encoding="UTF-8"?>
<testResults>

<sampleResult threadName="Thread Group1-1" responseMessage="OK" timeStamp="1086878632349" dataType="text" label="/set_login" responseCode="200" time="156" success="true"/>
<sampleResult threadName="Thread Group1-1" responseMessage="OK" timeStamp="1086878632864" dataType="text" label="/login" responseCode="200" time="453" success="true"><sampleResult threadName="" responseMessage="Moved Temporarily" timeStamp="1086878632833" dataType="text" label="http://10.0.101.200:30033/login?sessionToken=" responseCode="302" time="422" success="true"/><sampleResult threadName="" responseMessage="OK" timeStamp="1086878632864" dataType="text" label="http://10.0.101.200:30033/Controller/index/" responseCode="200" time="31" success="true"/></sampleResult>
<sampleResult threadName="Thread Group1-1" responseMessage="OK" timeStamp="1086878632880" dataType="text" label="/Controller/index/" responseCode="200" time="16" success="true"/>
<sampleResult threadName="Thread Group1-1" responseMessage="OK" timeStamp="1086878632958" dataType="text" label="/Controller/Welcome/SELECT" responseCode="200" time="62" success="true"/>
<sampleResult threadName="Thread Group1-1" responseMessage="OK" timeStamp="1086878633161" dataType="text" label="/Controller/Welcome/NEXT" responseCode="200" time="203" success="true"/>
<sampleResult threadName="Thread Group1-1" responseMessage="OK" timeStamp="1086878633896" dataType="text" label="/Controller/Search/VIEW" responseCode="200" time="735" success="true"/>
<sampleResult threadName="Thread Group1-1" responseMessage="OK" timeStamp="1086878633927" dataType="text" label="/Controller/LogOff/LogOff" responseCode="200" time="31" success="true"/>
<sampleResult threadName="Thread Group1-2" responseMessage="OK" timeStamp="1086878634177" dataType="text" label="/set_login" responseCode="200" time="0" success="true"/>
<sampleResult threadName="Thread Group1-2" responseMessage="OK" timeStamp="1086878634270" dataType="text" label="/login" responseCode="200" time="93" success="true"><sampleResult threadName="" responseMessage="Moved Temporarily" timeStamp="1086878634255" dataType="text" label="http://10.0.101.200:30033/login?sessionToken=" responseCode="302" time="78" success="true"/><sampleResult threadName="" responseMessage="OK" timeStamp="1086878634270" dataType="text" label="http://10.0.101.200:30033/Controller/index/" responseCode="200" time="15" success="true"/></sampleResult>
<sampleResult threadName="Thread Group1-2" responseMessage="OK" timeStamp="1086878634286" dataType="text" label="/Controller/index/" responseCode="200" time="16" success="true"/>
<sampleResult threadName="Thread Group1-2" responseMessage="OK" timeStamp="1086878634349" dataType="text" label="/Controller/Welcome/SELECT" responseCode="200" time="47" success="true"/>
<sampleResult threadName="Thread Group1-2" responseMessage="OK" timeStamp="1086878634552" dataType="text" label="/Controller/Welcome/NEXT" responseCode="200" time="203" success="true"/>
<sampleResult threadName="Thread Group1-2" responseMessage="OK" timeStamp="1086878635286" dataType="text" label="/Controller/Search/VIEW" responseCode="200" time="734" success="true"/>
<sampleResult threadName="Thread Group1-2" responseMessage="OK" timeStamp="1086878635317" dataType="text" label="/Controller/LogOff/LogOff" responseCode="200" time="31" success="true"/>
<sampleResult threadName="Thread Group1-3" responseMessage="OK" timeStamp="1086878636286" dataType="text" label="/set_login" responseCode="200" time="94" success="true"/>
<sampleResult threadName="Thread Group1-3" responseMessage="OK" timeStamp="1086878636379" dataType="text" label="/login" responseCode="200" time="93" success="true"><sampleResult threadName="" responseMessage="Moved Temporarily" timeStamp="1086878636364" dataType="text" label="http://10.0.101.200:30033/login?sessionToken=" responseCode="302" time="78" success="true"/><sampleResult threadName="" responseMessage="OK" timeStamp="1086878636379" dataType="text" label="http://10.0.101.200:30033/Controller/index/" responseCode="200" time="15" success="true"/></sampleResult>
<sampleResult threadName="Thread Group1-3" responseMessage="OK" timeStamp="1086878636411" dataType="text" label="/Controller/index/" responseCode="200" time="32" success="true"/>
<sampleResult threadName="Thread Group1-3" responseMessage="OK" timeStamp="1086878636458" dataType="text" label="/Controller/Welcome/SELECT" responseCode="200" time="47" success="true"/>
<sampleResult threadName="Thread Group1-3" responseMessage="OK" timeStamp="1086878636661" dataType="text" label="/Controller/Welcome/NEXT" responseCode="200" time="203" success="true"/>
<sampleResult threadName="Thread Group1-3" responseMessage="OK" timeStamp="1086878637411" dataType="text" label="/Controller/Search/VIEW" responseCode="200" time="750" success="true"/>
<sampleResult threadName="Thread Group1-3" responseMessage="OK" timeStamp="1086878637442" dataType="text" label="/Controller/LogOff/LogOff" responseCode="200" time="31" success="true"/>
<sampleResult threadName="Thread Group1-4" responseMessage="OK" timeStamp="1086878638192" dataType="text" label="/set_login" responseCode="200" time="0" success="true"/>
<sampleResult threadName="Thread Group1-4" responseMessage="OK" timeStamp="1086878638379" dataType="text" label="/login" responseCode="200" time="187" success="true"><sampleResult threadName="" responseMessage="Moved Temporarily" timeStamp="1086878638270" dataType="text" label="http://10.0.101.200:30033/login?sessionToken=" responseCode="302" time="78" success="true"/><sampleResult threadName="" responseMessage="OK" timeStamp="1086878638379" dataType="text" label="http://10.0.101.200:30033/Controller/index/" responseCode="200" time="109" success="true"/></sampleResult>
<sampleResult threadName="Thread Group1-4" responseMessage="OK" timeStamp="1086878638410" dataType="text" label="/Controller/index/" responseCode="200" time="31" success="true"/>
<sampleResult threadName="Thread Group1-4" responseMessage="OK" timeStamp="1086878638473" dataType="text" label="/Controller/Welcome/SELECT" responseCode="200" time="63" success="true"/>
<sampleResult threadName="Thread Group1-4" responseMessage="OK" timeStamp="1086878638660" dataType="text" label="/Controller/Welcome/NEXT" responseCode="200" time="187" success="true"/>
<sampleResult threadName="Thread Group1-4" responseMessage="OK" timeStamp="1086878639301" dataType="text" label="/Controller/Search/VIEW" responseCode="200" time="641" success="true"/>
<sampleResult threadName="Thread Group1-4" responseMessage="OK" timeStamp="1086878639426" dataType="text" label="/Controller/LogOff/LogOff" responseCode="200" time="125" success="true"/>
<sampleResult threadName="Thread Group1-5" responseMessage="OK" timeStamp="1086878640191" dataType="text" label="/set_login" responseCode="200" time="0" success="true"/>
<sampleResult threadName="Thread Group1-5" responseMessage="OK" timeStamp="1086878640301" dataType="text" label="/login" responseCode="200" time="110" success="true"><sampleResult threadName="" responseMessage="Moved Temporarily" timeStamp="1086878640270" dataType="text" label="http://10.0.101.200:30033/login?sessionToken=" responseCode="302" time="79" success="true"/><sampleResult threadName="" responseMessage="OK" timeStamp="1086878640301" dataType="text" label="http://10.0.101.200:30033/Controller/index/" responseCode="200" time="31" success="true"/></sampleResult>
<sampleResult threadName="Thread Group1-5" responseMessage="OK" timeStamp="1086878640410" dataType="text" label="/Controller/index/" responseCode="200" time="109" success="true"/>
<sampleResult threadName="Thread Group1-5" responseMessage="OK" timeStamp="1086878640473" dataType="text" label="/Controller/Welcome/SELECT" responseCode="200" time="63" success="true"/>
<sampleResult threadName="Thread Group1-5" responseMessage="OK" timeStamp="1086878640660" dataType="text" label="/Controller/Welcome/NEXT" responseCode="200" time="187" success="true"/>
<sampleResult threadName="Thread Group1-5" responseMessage="OK" timeStamp="1086878641316" dataType="text" label="/Controller/Search/VIEW" responseCode="200" time="656" success="true"/>
<sampleResult threadName="Thread Group1-5" responseMessage="OK" timeStamp="1086878641441" dataType="text" label="/Controller/LogOff/LogOff" responseCode="200" time="125" success="true"/>
</testResults>````

</details>

@asfimport
Copy link
Collaborator Author

udele (migrated from Bugzilla):
I've attached a sample jtl file. Out of curiosity I opened up the jtl file in
two separate Aggregate reports in a new Test Plan. The only difference
between the two reports in the new plan seems to be the Total in the Rate
column. The difference appears more pronounced between an aggregate report
that is generated directly from a test run and a saved report.

@asfimport
Copy link
Collaborator Author

Sebb (migrated from Bugzilla):
Can't see any obvious problems when loading the JTL into two different
Aggregate Reports - apart from an extraneous "/" in the Totals Rate column.

Looking at the data shows that the /login URLs are different from the others,
in that they include two sub-results each. This is because /login returns a
302 - redirect temporary. This may be the cause.

If you can recode the test to avoid the redirect, it would be interesting to
see if this changed the calculations.

Could you give a bit more information on what figures you think are wrong?

@asfimport
Copy link
Collaborator Author

udele (migrated from Bugzilla):
Thank you seb! Once I stopped following redirects in my test plan, the
problem went away. For the majority of the time, the rate was being
calculated differently for the /login page. Occasionally, I would see the
min, max, and average off too, but I can't reproduce that as easily for the
same page. I would like to be able to follow redirects (specifically for
viewing in my results tree), but I can live without it for now.

@asfimport
Copy link
Collaborator Author

Sebb (migrated from Bugzilla):
Finally discovered the problem: when subresults are initially added to main
result, the elapsed time for the main result is accumulated.

However, when the results are read in from a file, this calculation has already
been done.

Fixed in 2.1 branch for both old and new XML format result files
[does not affect CSV results, as subresults are not saved]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant