You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by se...@apache.org on 2007/06/29 02:28:49 UTC

svn commit: r551742 - in /jakarta/jmeter/branches/rel-2-2/bin/testfiles: BatchTestLocal.csv BatchTestLocal.jmx BatchTestLocal.txt BatchTestLocal.xml

Author: sebb
Date: Thu Jun 28 17:28:48 2007
New Revision: 551742

URL: http://svn.apache.org/viewvc?view=rev&rev=551742
Log:
Add test for Bug 41612 Loop nested in IF behaves erraticly 

Added:
    jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.txt   (with props)
Modified:
    jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.csv
    jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.jmx
    jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.xml

Modified: jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.csv
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.csv?view=diff&rev=551742&r1=551741&r2=551742
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.csv (original)
+++ jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.csv Thu Jun 28 17:28:48 2007
@@ -1,4 +1,8 @@
-label,responseCode,responseMessage,threadName,dataType,success,failureMessage,bytes,grpThreads,allThreads,URL,Filename,Encoding
-Java 1,200,OK,Thread Group 1-1,text,true,,10,1,1,null,,ISO-8859-1
-Java 1,200,OK,Thread Group 1-1,text,true,,10,1,1,null,,ISO-8859-1
-Java 1,200,OK,Thread Group 1-1,text,true,,10,1,1,null,,ISO-8859-1
+label,responseCode,responseMessage,threadName,dataType,success,failureMessage,bytes,grpThreads,allThreads,URL,Filename
+Java 1,200,OK,Thread Group 1-1,text,true,,10,1,1,null,
+Java 1,200,OK,Thread Group 1-1,text,true,,10,1,1,null,
+Java 1,200,OK,Thread Group 1-1,text,true,,10,1,1,null,
+If Test,200,OK,Thread Group 1-1,,true,,0,1,1,null,
+Loop,200,OK,Thread Group 1-1,,true,,0,1,1,null,
+Loop,200,OK,Thread Group 1-1,,true,,0,1,1,null,
+Loop,200,OK,Thread Group 1-1,,true,,0,1,1,null,

Modified: jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.jmx
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.jmx?view=diff&rev=551742&r1=551741&r2=551742
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.jmx (original)
+++ jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.jmx Thu Jun 28 17:28:48 2007
@@ -1,6 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <jmeterTestPlan version="1.2" properties="1.8">
   <hashTree>
-    <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="BatchTestLocal" enabled="true">
+    <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Test Plan" enabled="true">
       <elementProp name="TestPlan.user_defined_variables" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
         <collectionProp name="Arguments.arguments"/>
       </elementProp>
@@ -17,8 +18,8 @@
         <stringProp name="ThreadGroup.num_threads">1</stringProp>
         <boolProp name="ThreadGroup.scheduler">false</boolProp>
         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
-          <stringProp name="LoopController.loops">1</stringProp>
           <boolProp name="LoopController.continue_forever">false</boolProp>
+          <stringProp name="LoopController.loops">1</stringProp>
         </elementProp>
         <longProp name="ThreadGroup.end_time">1172922900000</longProp>
         <stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
@@ -26,52 +27,52 @@
       </ThreadGroup>
       <hashTree>
         <LoopController guiclass="LoopControlPanel" testclass="LoopController" testname="Loop3" enabled="true">
-          <stringProp name="LoopController.loops">3</stringProp>
           <boolProp name="LoopController.continue_forever">true</boolProp>
+          <stringProp name="LoopController.loops">3</stringProp>
         </LoopController>
         <hashTree>
           <JavaSampler guiclass="JavaTestSamplerGui" testclass="JavaSampler" testname="Java 1" enabled="true">
             <elementProp name="arguments" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" enabled="true">
               <collectionProp name="Arguments.arguments">
                 <elementProp name="Sleep_Time" elementType="Argument">
-                  <stringProp name="Argument.metadata">=</stringProp>
-                  <stringProp name="Argument.value">100</stringProp>
                   <stringProp name="Argument.name">Sleep_Time</stringProp>
+                  <stringProp name="Argument.value">100</stringProp>
+                  <stringProp name="Argument.metadata">=</stringProp>
                 </elementProp>
                 <elementProp name="Sleep_Mask" elementType="Argument">
-                  <stringProp name="Argument.metadata">=</stringProp>
-                  <stringProp name="Argument.value">0xFF</stringProp>
                   <stringProp name="Argument.name">Sleep_Mask</stringProp>
+                  <stringProp name="Argument.value">0xFF</stringProp>
+                  <stringProp name="Argument.metadata">=</stringProp>
                 </elementProp>
                 <elementProp name="Label" elementType="Argument">
-                  <stringProp name="Argument.metadata">=</stringProp>
-                  <stringProp name="Argument.value"></stringProp>
                   <stringProp name="Argument.name">Label</stringProp>
+                  <stringProp name="Argument.value"></stringProp>
+                  <stringProp name="Argument.metadata">=</stringProp>
                 </elementProp>
                 <elementProp name="ResponseCode" elementType="Argument">
-                  <stringProp name="Argument.metadata">=</stringProp>
-                  <stringProp name="Argument.value">200</stringProp>
                   <stringProp name="Argument.name">ResponseCode</stringProp>
+                  <stringProp name="Argument.value">200</stringProp>
+                  <stringProp name="Argument.metadata">=</stringProp>
                 </elementProp>
                 <elementProp name="ResponseMessage" elementType="Argument">
-                  <stringProp name="Argument.metadata">=</stringProp>
-                  <stringProp name="Argument.value">OK</stringProp>
                   <stringProp name="Argument.name">ResponseMessage</stringProp>
+                  <stringProp name="Argument.value">OK</stringProp>
+                  <stringProp name="Argument.metadata">=</stringProp>
                 </elementProp>
                 <elementProp name="Status" elementType="Argument">
-                  <stringProp name="Argument.metadata">=</stringProp>
-                  <stringProp name="Argument.value">OK</stringProp>
                   <stringProp name="Argument.name">Status</stringProp>
+                  <stringProp name="Argument.value">OK</stringProp>
+                  <stringProp name="Argument.metadata">=</stringProp>
                 </elementProp>
                 <elementProp name="SamplerData" elementType="Argument">
-                  <stringProp name="Argument.metadata">=</stringProp>
-                  <stringProp name="Argument.value">SamplerData</stringProp>
                   <stringProp name="Argument.name">SamplerData</stringProp>
+                  <stringProp name="Argument.value">SamplerData</stringProp>
+                  <stringProp name="Argument.metadata">=</stringProp>
                 </elementProp>
                 <elementProp name="ResultData" elementType="Argument">
-                  <stringProp name="Argument.metadata">=</stringProp>
-                  <stringProp name="Argument.value">ResultData</stringProp>
                   <stringProp name="Argument.name">ResultData</stringProp>
+                  <stringProp name="Argument.value">ResultData</stringProp>
+                  <stringProp name="Argument.metadata">=</stringProp>
                 </elementProp>
               </collectionProp>
             </elementProp>
@@ -79,7 +80,121 @@
           </JavaSampler>
           <hashTree/>
         </hashTree>
+        <LoopController guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
+          <boolProp name="LoopController.continue_forever">true</boolProp>
+          <stringProp name="LoopController.loops">5</stringProp>
+        </LoopController>
+        <hashTree>
+          <IfController guiclass="IfControllerPanel" testclass="IfController" testname="If Controller" enabled="true">
+            <stringProp name="IfController.condition">${__StringFromFile(testfiles/BatchTestLocal.txt)} &gt; 2</stringProp>
+          </IfController>
+          <hashTree>
+            <JavaSampler guiclass="JavaTestSamplerGui" testclass="JavaSampler" testname="If Test" enabled="true">
+              <elementProp name="arguments" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" enabled="true">
+                <collectionProp name="Arguments.arguments">
+                  <elementProp name="Sleep_Time" elementType="Argument">
+                    <stringProp name="Argument.name">Sleep_Time</stringProp>
+                    <stringProp name="Argument.value">100</stringProp>
+                    <stringProp name="Argument.metadata">=</stringProp>
+                  </elementProp>
+                  <elementProp name="Sleep_Mask" elementType="Argument">
+                    <stringProp name="Argument.name">Sleep_Mask</stringProp>
+                    <stringProp name="Argument.value">0xFF</stringProp>
+                    <stringProp name="Argument.metadata">=</stringProp>
+                  </elementProp>
+                  <elementProp name="Label" elementType="Argument">
+                    <stringProp name="Argument.name">Label</stringProp>
+                    <stringProp name="Argument.value"></stringProp>
+                    <stringProp name="Argument.metadata">=</stringProp>
+                  </elementProp>
+                  <elementProp name="ResponseCode" elementType="Argument">
+                    <stringProp name="Argument.name">ResponseCode</stringProp>
+                    <stringProp name="Argument.value">200</stringProp>
+                    <stringProp name="Argument.metadata">=</stringProp>
+                  </elementProp>
+                  <elementProp name="ResponseMessage" elementType="Argument">
+                    <stringProp name="Argument.name">ResponseMessage</stringProp>
+                    <stringProp name="Argument.value">OK</stringProp>
+                    <stringProp name="Argument.metadata">=</stringProp>
+                  </elementProp>
+                  <elementProp name="Status" elementType="Argument">
+                    <stringProp name="Argument.name">Status</stringProp>
+                    <stringProp name="Argument.value">OK</stringProp>
+                    <stringProp name="Argument.metadata">=</stringProp>
+                  </elementProp>
+                  <elementProp name="SamplerData" elementType="Argument">
+                    <stringProp name="Argument.name">SamplerData</stringProp>
+                    <stringProp name="Argument.value"></stringProp>
+                    <stringProp name="Argument.metadata">=</stringProp>
+                  </elementProp>
+                  <elementProp name="ResultData" elementType="Argument">
+                    <stringProp name="Argument.name">ResultData</stringProp>
+                    <stringProp name="Argument.value"></stringProp>
+                    <stringProp name="Argument.metadata">=</stringProp>
+                  </elementProp>
+                </collectionProp>
+              </elementProp>
+              <stringProp name="classname">org.apache.jmeter.protocol.java.test.JavaTest</stringProp>
+            </JavaSampler>
+            <hashTree/>
+            <LoopController guiclass="LoopControlPanel" testclass="LoopController" testname="Test loop" enabled="true">
+              <boolProp name="LoopController.continue_forever">true</boolProp>
+              <stringProp name="LoopController.loops">3</stringProp>
+            </LoopController>
+            <hashTree>
+              <JavaSampler guiclass="JavaTestSamplerGui" testclass="JavaSampler" testname="Loop" enabled="true">
+                <elementProp name="arguments" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" enabled="true">
+                  <collectionProp name="Arguments.arguments">
+                    <elementProp name="Sleep_Time" elementType="Argument">
+                      <stringProp name="Argument.name">Sleep_Time</stringProp>
+                      <stringProp name="Argument.value">100</stringProp>
+                      <stringProp name="Argument.metadata">=</stringProp>
+                    </elementProp>
+                    <elementProp name="Sleep_Mask" elementType="Argument">
+                      <stringProp name="Argument.name">Sleep_Mask</stringProp>
+                      <stringProp name="Argument.value">0xFF</stringProp>
+                      <stringProp name="Argument.metadata">=</stringProp>
+                    </elementProp>
+                    <elementProp name="Label" elementType="Argument">
+                      <stringProp name="Argument.name">Label</stringProp>
+                      <stringProp name="Argument.value"></stringProp>
+                      <stringProp name="Argument.metadata">=</stringProp>
+                    </elementProp>
+                    <elementProp name="ResponseCode" elementType="Argument">
+                      <stringProp name="Argument.name">ResponseCode</stringProp>
+                      <stringProp name="Argument.value">200</stringProp>
+                      <stringProp name="Argument.metadata">=</stringProp>
+                    </elementProp>
+                    <elementProp name="ResponseMessage" elementType="Argument">
+                      <stringProp name="Argument.name">ResponseMessage</stringProp>
+                      <stringProp name="Argument.value">OK</stringProp>
+                      <stringProp name="Argument.metadata">=</stringProp>
+                    </elementProp>
+                    <elementProp name="Status" elementType="Argument">
+                      <stringProp name="Argument.name">Status</stringProp>
+                      <stringProp name="Argument.value">OK</stringProp>
+                      <stringProp name="Argument.metadata">=</stringProp>
+                    </elementProp>
+                    <elementProp name="SamplerData" elementType="Argument">
+                      <stringProp name="Argument.name">SamplerData</stringProp>
+                      <stringProp name="Argument.value"></stringProp>
+                      <stringProp name="Argument.metadata">=</stringProp>
+                    </elementProp>
+                    <elementProp name="ResultData" elementType="Argument">
+                      <stringProp name="Argument.name">ResultData</stringProp>
+                      <stringProp name="Argument.value"></stringProp>
+                      <stringProp name="Argument.metadata">=</stringProp>
+                    </elementProp>
+                  </collectionProp>
+                </elementProp>
+                <stringProp name="classname">org.apache.jmeter.protocol.java.test.JavaTest</stringProp>
+              </JavaSampler>
+              <hashTree/>
+            </hashTree>
+          </hashTree>
+        </hashTree>
         <ResultCollector guiclass="SimpleDataWriter" testclass="ResultCollector" testname="Write CSV" enabled="true">
+          <boolProp name="ResultCollector.error_logging">false</boolProp>
           <objProp>
             <value class="SampleSaveConfiguration">
               <time>false</time>
@@ -91,7 +206,7 @@
               <message>true</message>
               <threadName>true</threadName>
               <dataType>true</dataType>
-              <encoding>true</encoding>
+              <encoding>false</encoding>
               <assertions>true</assertions>
               <subresults>true</subresults>
               <responseData>true</responseData>
@@ -111,10 +226,10 @@
             <name>saveConfig</name>
           </objProp>
           <stringProp name="filename">BatchTestLocal.csv</stringProp>
-          <boolProp name="ResultCollector.error_logging">false</boolProp>
         </ResultCollector>
         <hashTree/>
         <ResultCollector guiclass="SimpleDataWriter" testclass="ResultCollector" testname="Write XML" enabled="true">
+          <boolProp name="ResultCollector.error_logging">false</boolProp>
           <objProp>
             <value class="SampleSaveConfiguration">
               <time>false</time>
@@ -126,7 +241,7 @@
               <message>true</message>
               <threadName>true</threadName>
               <dataType>true</dataType>
-              <encoding>true</encoding>
+              <encoding>false</encoding>
               <assertions>true</assertions>
               <subresults>true</subresults>
               <responseData>true</responseData>
@@ -146,10 +261,10 @@
             <name>saveConfig</name>
           </objProp>
           <stringProp name="filename">BatchTestLocal.xml</stringProp>
-          <boolProp name="ResultCollector.error_logging">false</boolProp>
         </ResultCollector>
         <hashTree/>
         <ResultCollector guiclass="ViewResultsFullVisualizer" testclass="ResultCollector" testname="View Results Tree" enabled="true">
+          <boolProp name="ResultCollector.error_logging">false</boolProp>
           <objProp>
             <value class="SampleSaveConfiguration">
               <time>true</time>
@@ -177,7 +292,6 @@
             <name>saveConfig</name>
           </objProp>
           <stringProp name="filename"></stringProp>
-          <boolProp name="ResultCollector.error_logging">false</boolProp>
         </ResultCollector>
         <hashTree/>
       </hashTree>

Added: jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.txt
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.txt?view=auto&rev=551742
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.txt (added)
+++ jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.txt Thu Jun 28 17:28:48 2007
@@ -0,0 +1,30 @@
+1
+2
+3
+1
+2
+3
+1
+2
+3
+1
+2
+3
+1
+2
+3
+1
+2
+3
+1
+2
+3
+1
+2
+3
+1
+2
+3
+1
+2
+3
\ No newline at end of file

Propchange: jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.txt
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Modified: jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.xml
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.xml?view=diff&rev=551742&r1=551741&r2=551742
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.xml (original)
+++ jakarta/jmeter/branches/rel-2-2/bin/testfiles/BatchTestLocal.xml Thu Jun 28 17:28:48 2007
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <testResults version="1.2">
-<sample lt="0" s="true" lb="Java 1" rc="200" rm="OK" tn="Thread Group 1-1" dt="text" de="ISO-8859-1" by="10" ng="1" na="1">
+<sample lt="0" s="true" lb="Java 1" rc="200" rm="OK" tn="Thread Group 1-1" dt="text" by="10" ng="1" na="1">
   <responseHeader class="java.lang.String"></responseHeader>
   <requestHeader class="java.lang.String"></requestHeader>
   <responseData class="java.lang.String">ResultData</responseData>
@@ -8,7 +8,7 @@
   <samplerData class="java.lang.String">SamplerData</samplerData>
   <null/>
 </sample>
-<sample lt="0" s="true" lb="Java 1" rc="200" rm="OK" tn="Thread Group 1-1" dt="text" de="ISO-8859-1" by="10" ng="1" na="1">
+<sample lt="0" s="true" lb="Java 1" rc="200" rm="OK" tn="Thread Group 1-1" dt="text" by="10" ng="1" na="1">
   <responseHeader class="java.lang.String"></responseHeader>
   <requestHeader class="java.lang.String"></requestHeader>
   <responseData class="java.lang.String">ResultData</responseData>
@@ -16,12 +16,40 @@
   <samplerData class="java.lang.String">SamplerData</samplerData>
   <null/>
 </sample>
-<sample lt="0" s="true" lb="Java 1" rc="200" rm="OK" tn="Thread Group 1-1" dt="text" de="ISO-8859-1" by="10" ng="1" na="1">
+<sample lt="0" s="true" lb="Java 1" rc="200" rm="OK" tn="Thread Group 1-1" dt="text" by="10" ng="1" na="1">
   <responseHeader class="java.lang.String"></responseHeader>
   <requestHeader class="java.lang.String"></requestHeader>
   <responseData class="java.lang.String">ResultData</responseData>
   <responseFile class="java.lang.String"></responseFile>
   <samplerData class="java.lang.String">SamplerData</samplerData>
+  <null/>
+</sample>
+<sample lt="0" s="true" lb="If Test" rc="200" rm="OK" tn="Thread Group 1-1" dt="" by="0" ng="1" na="1">
+  <responseHeader class="java.lang.String"></responseHeader>
+  <requestHeader class="java.lang.String"></requestHeader>
+  <responseData class="java.lang.String"/>
+  <responseFile class="java.lang.String"></responseFile>
+  <null/>
+</sample>
+<sample lt="0" s="true" lb="Loop" rc="200" rm="OK" tn="Thread Group 1-1" dt="" by="0" ng="1" na="1">
+  <responseHeader class="java.lang.String"></responseHeader>
+  <requestHeader class="java.lang.String"></requestHeader>
+  <responseData class="java.lang.String"/>
+  <responseFile class="java.lang.String"></responseFile>
+  <null/>
+</sample>
+<sample lt="0" s="true" lb="Loop" rc="200" rm="OK" tn="Thread Group 1-1" dt="" by="0" ng="1" na="1">
+  <responseHeader class="java.lang.String"></responseHeader>
+  <requestHeader class="java.lang.String"></requestHeader>
+  <responseData class="java.lang.String"/>
+  <responseFile class="java.lang.String"></responseFile>
+  <null/>
+</sample>
+<sample lt="0" s="true" lb="Loop" rc="200" rm="OK" tn="Thread Group 1-1" dt="" by="0" ng="1" na="1">
+  <responseHeader class="java.lang.String"></responseHeader>
+  <requestHeader class="java.lang.String"></requestHeader>
+  <responseData class="java.lang.String"/>
+  <responseFile class="java.lang.String"></responseFile>
   <null/>
 </sample>
 



---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org