Author: sebb
Date: Wed Sep 14 13:11:04 2011
New Revision: 1170595
URL: http://svn.apache.org/viewvc?rev=1170595&view=rev
Log:
Bug 48943 - Functions are invoked additional times when used in combination
with a Config Element
Modified:
jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.csv
jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.jmx
jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.xml
jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/property/AbstractProperty.java
jakarta/jmeter/trunk/xdocs/changes.xml
Modified: jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.csv
URL:
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.csv?rev=1170595&r1=1170594&r2=1170595&view=diff
==============================================================================
--- jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.csv (original)
+++ jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.csv Wed Sep 14 13:11:04
2011
@@ -106,7 +106,7 @@ Java If once 1,,,Thread Group 1-2,,false
Java If once 2,200,OK,Thread Group 1-2,,true,,0,1,1,null,,1,0
Java If all 1,,,Thread Group 1-2,,false,,0,1,1,null,,1,1
Java OK,200,OK,Thread Group 1-2,,true,,0,1,1,null,,1,0
-"HTTP ""Request,",200,OK,Thread Group
2-1,text,true,,122764,1,1,file:testfiles/BatchTestLocal.jmx,,1,0
+"HTTP ""Request,",200,OK,Thread Group
2-1,text,true,,127746,1,1,file:testfiles/BatchTestLocal.jmx,,1,0
1 1,200,OK,Thread Group 2-1,,true,,0,1,1,null,,1,0
2 2,200,OK,Thread Group 2-1,,true,,0,1,1,null,,1,0
3 3,200,OK,Thread Group 2-1,,true,,0,1,1,null,,1,0
@@ -126,4 +126,7 @@ CSV_VAR=2,200,OK,CSV Test 6-1,,true,,0,1
CSV_VAR=3,200,OK,CSV Test 6-1,,true,,0,1,1,null,,1,0
CSV_VAR=1,200,OK,CSV Test 6-1,,true,,0,1,1,null,,1,0
CSV_VAR=2,200,OK,CSV Test 6-1,,true,,0,1,1,null,,1,0
+BSH Counter: 1,200,OK,Bug 48943 7-1,text,true,,0,1,1,null,,1,0
+BSH Counter: 2,200,OK,Bug 48943 7-1,text,true,,0,1,1,null,,1,0
+BSH Counter: 3,200,OK,Bug 48943 7-1,text,true,,0,1,1,null,,1,0
Post 3,200,OK,Post Thread Group 1-1,,true,,0,1,1,null,,1,0
Modified: jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.jmx
URL:
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.jmx?rev=1170595&r1=1170594&r2=1170595&view=diff
==============================================================================
--- jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.jmx (original)
+++ jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.jmx Wed Sep 14 13:11:04
2011
@@ -2092,6 +2092,103 @@ We use this file, which has eol=LF - but
</ResultCollector>
<hashTree/>
</hashTree>
+ <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup"
testname="Bug 48943" enabled="true">
+ <stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
+ <elementProp name="ThreadGroup.main_controller"
elementType="LoopController" guiclass="LoopControlPanel"
testclass="LoopController" testname="Loop Controller" enabled="true">
+ <boolProp name="LoopController.continue_forever">false</boolProp>
+ <stringProp name="LoopController.loops">3</stringProp>
+ </elementProp>
+ <stringProp name="ThreadGroup.num_threads">1</stringProp>
+ <stringProp name="ThreadGroup.ramp_time">1</stringProp>
+ <longProp name="ThreadGroup.start_time">1316002322000</longProp>
+ <longProp name="ThreadGroup.end_time">1316002322000</longProp>
+ <boolProp name="ThreadGroup.scheduler">false</boolProp>
+ <stringProp name="ThreadGroup.duration"></stringProp>
+ <stringProp name="ThreadGroup.delay"></stringProp>
+ </ThreadGroup>
+ <hashTree>
+ <ConfigTestElement guiclass="SimpleConfigGui"
testclass="ConfigTestElement" testname="Simple Config Element" enabled="true"/>
+ <hashTree/>
+ <BeanShellSampler guiclass="BeanShellSamplerGui"
testclass="BeanShellSampler" testname="BeanShell Sampler" enabled="true">
+ <stringProp
name="BeanShellSampler.query">SampleResult.setSampleLabel("BSH Counter:
${__counter(FALSE)}");</stringProp>
+ <stringProp name="BeanShellSampler.filename"></stringProp>
+ <stringProp name="BeanShellSampler.parameters"></stringProp>
+ <boolProp name="BeanShellSampler.resetInterpreter">false</boolProp>
+ </BeanShellSampler>
+ <hashTree/>
+ <ResultCollector guiclass="SimpleDataWriter"
testclass="ResultCollector" testname="Write XML" enabled="true">
+ <boolProp name="ResultCollector.error_logging">false</boolProp>
+ <objProp>
+ <name>saveConfig</name>
+ <value class="SampleSaveConfiguration">
+ <time>false</time>
+ <latency>false</latency>
+ <timestamp>false</timestamp>
+ <success>true</success>
+ <label>true</label>
+ <code>true</code>
+ <message>true</message>
+ <threadName>true</threadName>
+ <dataType>true</dataType>
+ <encoding>false</encoding>
+ <assertions>true</assertions>
+ <subresults>true</subresults>
+ <responseData>false</responseData>
+ <samplerData>true</samplerData>
+ <xml>true</xml>
+ <fieldNames>true</fieldNames>
+ <responseHeaders>true</responseHeaders>
+ <requestHeaders>true</requestHeaders>
+ <responseDataOnError>false</responseDataOnError>
+
<saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
+ <assertionsResultsToSave>0</assertionsResultsToSave>
+ <bytes>true</bytes>
+ <url>true</url>
+ <fileName>true</fileName>
+ <threadCounts>true</threadCounts>
+ <sampleCount>true</sampleCount>
+ </value>
+ </objProp>
+ <stringProp name="filename">BatchTestLocal.xml</stringProp>
+ </ResultCollector>
+ <hashTree/>
+ <ResultCollector guiclass="SimpleDataWriter"
testclass="ResultCollector" testname="Write CSV" enabled="true">
+ <boolProp name="ResultCollector.error_logging">false</boolProp>
+ <objProp>
+ <name>saveConfig</name>
+ <value class="SampleSaveConfiguration">
+ <time>false</time>
+ <latency>false</latency>
+ <timestamp>false</timestamp>
+ <success>true</success>
+ <label>true</label>
+ <code>true</code>
+ <message>true</message>
+ <threadName>true</threadName>
+ <dataType>true</dataType>
+ <encoding>false</encoding>
+ <assertions>true</assertions>
+ <subresults>true</subresults>
+ <responseData>false</responseData>
+ <samplerData>true</samplerData>
+ <xml>false</xml>
+ <fieldNames>true</fieldNames>
+ <responseHeaders>true</responseHeaders>
+ <requestHeaders>true</requestHeaders>
+ <responseDataOnError>false</responseDataOnError>
+
<saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
+ <assertionsResultsToSave>0</assertionsResultsToSave>
+ <bytes>true</bytes>
+ <url>true</url>
+ <fileName>true</fileName>
+ <threadCounts>true</threadCounts>
+ <sampleCount>true</sampleCount>
+ </value>
+ </objProp>
+ <stringProp name="filename">${__P(CSVFILE)}</stringProp>
+ </ResultCollector>
+ <hashTree/>
+ </hashTree>
<ResultCollector guiclass="ViewResultsFullVisualizer"
testclass="ResultCollector" testname="View Results Tree" enabled="true">
<boolProp name="ResultCollector.error_logging">false</boolProp>
<objProp>
Modified: jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.xml
URL:
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.xml?rev=1170595&r1=1170594&r2=1170595&view=diff
==============================================================================
--- jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.xml (original)
+++ jakarta/jmeter/trunk/bin/testfiles/BatchTestLocal.xml Wed Sep 14 13:11:04
2011
@@ -653,7 +653,7 @@
<responseData class="java.lang.String"/>
<responseFile class="java.lang.String"></responseFile>
</sample>
-<httpSample s="true" lb="HTTP "Request," rc="200" rm="OK" tn="Thread
Group 2-1" dt="text" by="122764" sc="1" ec="0" ng="1" na="1">
+<httpSample s="true" lb="HTTP "Request," rc="200" rm="OK" tn="Thread
Group 2-1" dt="text" by="127746" sc="1" ec="0" ng="1" na="1">
<responseHeader class="java.lang.String"></responseHeader>
<requestHeader class="java.lang.String"></requestHeader>
<responseFile class="java.lang.String"></responseFile>
@@ -752,6 +752,24 @@
<requestHeader class="java.lang.String"></requestHeader>
<responseFile class="java.lang.String"></responseFile>
</sample>
+<sample s="true" lb="BSH Counter: 1" rc="200" rm="OK" tn="Bug 48943 7-1"
dt="text" by="0" sc="1" ec="0" ng="1" na="1">
+ <responseHeader class="java.lang.String"></responseHeader>
+ <requestHeader class="java.lang.String"></requestHeader>
+ <responseFile class="java.lang.String"></responseFile>
+ <samplerData class="java.lang.String">SampleResult.setSampleLabel("BSH
Counter: 1");</samplerData>
+</sample>
+<sample s="true" lb="BSH Counter: 2" rc="200" rm="OK" tn="Bug 48943 7-1"
dt="text" by="0" sc="1" ec="0" ng="1" na="1">
+ <responseHeader class="java.lang.String"></responseHeader>
+ <requestHeader class="java.lang.String"></requestHeader>
+ <responseFile class="java.lang.String"></responseFile>
+ <samplerData class="java.lang.String">SampleResult.setSampleLabel("BSH
Counter: 2");</samplerData>
+</sample>
+<sample s="true" lb="BSH Counter: 3" rc="200" rm="OK" tn="Bug 48943 7-1"
dt="text" by="0" sc="1" ec="0" ng="1" na="1">
+ <responseHeader class="java.lang.String"></responseHeader>
+ <requestHeader class="java.lang.String"></requestHeader>
+ <responseFile class="java.lang.String"></responseFile>
+ <samplerData class="java.lang.String">SampleResult.setSampleLabel("BSH
Counter: 3");</samplerData>
+</sample>
<sample s="true" lb="Post 3" rc="200" rm="OK" tn="Post Thread Group 1-1" dt=""
by="0" sc="1" ec="0" ng="1" na="1">
<responseHeader class="java.lang.String"></responseHeader>
<requestHeader class="java.lang.String"></requestHeader>
Modified:
jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/property/AbstractProperty.java
URL:
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/property/AbstractProperty.java?rev=1170595&r1=1170594&r2=1170595&view=diff
==============================================================================
---
jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/property/AbstractProperty.java
(original)
+++
jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/property/AbstractProperty.java
Wed Sep 14 13:11:04 2011
@@ -197,9 +197,9 @@ public abstract class AbstractProperty i
if (!name.equals(jpo.getName())) {
return false;
}
- String s1 = getStringValue();
- String s2 = jpo.getStringValue();
- return s1 == null ? s2 == null : s1.equals(s2);
+ Object o1 = getObjectValue();
+ Object o2 = jpo.getObjectValue();
+ return o1 == null ? o2 == null : o1.equals(o2);
}
/** {@inheritDoc} */
@@ -207,8 +207,8 @@ public abstract class AbstractProperty i
public int hashCode() {
int result = 17;
result = result * 37 + name.hashCode();// name cannot be null
- String s = getStringValue();
- result = result * 37 + (s == null ? 0 : s.hashCode());
+ Object o = getObjectValue();
+ result = result * 37 + (o == null ? 0 : o.hashCode());
return result;
}
Modified: jakarta/jmeter/trunk/xdocs/changes.xml
URL:
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/changes.xml?rev=1170595&r1=1170594&r2=1170595&view=diff
==============================================================================
--- jakarta/jmeter/trunk/xdocs/changes.xml (original)
+++ jakarta/jmeter/trunk/xdocs/changes.xml Wed Sep 14 13:11:04 2011
@@ -69,8 +69,10 @@ This can be overridden by setting the JM
<h3>HTTP Samplers and Proxy</h3>
<ul>
+<li>Fix HttpClient 4 sampler so it reuses HttpClient instances and connections
where possible.</li>
<li>Bug 51750 - Retrieve all embedded resources doesn't follow IFRAME</li>
<li>Change the default so the HttpClient 4 sampler does not retry</li>
+<li>Bug 51752 - HTTP Cache is broken when using "Retrieve all embedded
resources" with concurrent pool</li>
</ul>
<h3>Other Samplers</h3>
@@ -95,6 +97,7 @@ This can be overridden by setting the JM
<h3>Functions</h3>
<ul>
+<li>Bug 48943 - Functions are invoked additional times when used in
combination with a Config Element</li>
</ul>
<h3>I18N</h3>
@@ -103,7 +106,6 @@ This can be overridden by setting the JM
<h3>General</h3>
<ul>
-<li>Bug 51752 - HTTP Cache is broken when using "Retrieve all embedded
resources" with concurrent pool</li>
</ul>
<!-- ==================================================== -->
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]