jmeter-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lisa Waugh" <wa...@us.ibm.com>
Subject Re: Using HTTP Request to test POST to upload and store a file
Date Mon, 31 Jul 2017 17:43:31 GMT
I attached the test but it looks like it was stripped out too.  Here is 
the text of the test:

<?xml version="1.0" encoding="UTF-8"?>
<jmeterTestPlan version="1.2" properties="3.1" jmeter="3.1 r1770033">
  <hashTree>
    <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Test 
Plan" enabled="true">
      <stringProp name="TestPlan.comments"></stringProp>
      <boolProp name="TestPlan.functional_mode">false</boolProp>
      <boolProp name="TestPlan.serialize_threadgroups">false</boolProp>
      <elementProp name="TestPlan.user_defined_variables" 
elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" 
testname="User Defined Variables" enabled="true">
        <collectionProp name="Arguments.arguments"/>
      </elementProp>
      <stringProp name="TestPlan.user_define_classpath"></stringProp>
    </TestPlan>
    <hashTree>
      <ConfigTestElement guiclass="HttpDefaultsGui" 
testclass="ConfigTestElement" testname="HTTP Request Defaults" 
enabled="true">
        <elementProp name="HTTPsampler.Arguments" elementType="Arguments" 
guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined 
Variables" enabled="true">
          <collectionProp name="Arguments.arguments"/>
        </elementProp>
        <stringProp 
name="HTTPSampler.domain">ecl-stage.mybluemix.net</stringProp>
        <stringProp name="HTTPSampler.port"></stringProp>
        <stringProp 
name="HTTPSampler.connect_timeout">40000000</stringProp>
        <stringProp 
name="HTTPSampler.response_timeout">40000000</stringProp>
        <stringProp name="HTTPSampler.protocol">https</stringProp>
        <stringProp name="HTTPSampler.contentEncoding"></stringProp>
        <stringProp name="HTTPSampler.path"></stringProp>
        <stringProp name="HTTPSampler.concurrentPool">4</stringProp>
      </ConfigTestElement>
      <hashTree/>
      <ResultCollector guiclass="ViewResultsFullVisualizer" 
testclass="ResultCollector" testname="View Results Tree" enabled="true">
        <boolProp name="ResultCollector.error_logging">false</boolProp>
        <objProp>
          <name>saveConfig</name>
          <value class="SampleSaveConfiguration">
            <time>true</time>
            <latency>true</latency>
            <timestamp>true</timestamp>
            <success>true</success>
            <label>true</label>
            <code>true</code>
            <message>true</message>
            <threadName>true</threadName>
            <dataType>false</dataType>
            <encoding>false</encoding>
            <assertions>true</assertions>
            <subresults>false</subresults>
            <responseData>false</responseData>
            <samplerData>false</samplerData>
            <xml>false</xml>
            <fieldNames>true</fieldNames>
            <responseHeaders>false</responseHeaders>
            <requestHeaders>false</requestHeaders>
            <responseDataOnError>true</responseDataOnError>
 
<saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
            <assertionsResultsToSave>0</assertionsResultsToSave>
            <bytes>true</bytes>
            <hostname>true</hostname>
            <threadCounts>true</threadCounts>
            <sampleCount>true</sampleCount>
          </value>
        </objProp>
        <stringProp name="filename"></stringProp>
      </ResultCollector>
      <hashTree/>
      <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" 
testname="Group for Admin" 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">1</stringProp>
        </elementProp>
        <stringProp name="ThreadGroup.num_threads">1</stringProp>
        <stringProp name="ThreadGroup.ramp_time">10</stringProp>
        <longProp name="ThreadGroup.start_time">1492612210000</longProp>
        <longProp name="ThreadGroup.end_time">1492612210000</longProp>
        <boolProp name="ThreadGroup.scheduler">false</boolProp>
        <stringProp name="ThreadGroup.duration"></stringProp>
        <stringProp name="ThreadGroup.delay"></stringProp>
      </ThreadGroup>
      <hashTree>
        <AuthManager guiclass="AuthPanel" testclass="AuthManager" 
testname="HTTP Authorization Manager" enabled="true">
          <collectionProp name="AuthManager.auth_list">
            <elementProp name="" elementType="Authorization">
              <stringProp name="Authorization.url"></stringProp>
              <stringProp 
name="Authorization.username">41da76f0fc3ec62a6939e634bfb6a342</stringProp>
              <stringProp 
name="Authorization.password">41da76f0fc3ec62a6939e634bfb6a342</stringProp>
              <stringProp name="Authorization.domain"></stringProp>
              <stringProp name="Authorization.realm"></stringProp>
            </elementProp>
          </collectionProp>
        </AuthManager>
        <hashTree/>
        <HTTPSamplerProxy guiclass="HttpTestSampleGui" 
testclass="HTTPSamplerProxy" testname="Start Session" enabled="true">
          <elementProp name="HTTPsampler.Arguments" 
elementType="Arguments" guiclass="HTTPArgumentsPanel" 
testclass="Arguments" testname="User Defined Variables" enabled="true">
            <collectionProp name="Arguments.arguments"/>
          </elementProp>
          <stringProp name="HTTPSampler.domain"></stringProp>
          <stringProp name="HTTPSampler.port"></stringProp>
          <stringProp name="HTTPSampler.connect_timeout"></stringProp>
          <stringProp name="HTTPSampler.response_timeout"></stringProp>
          <stringProp name="HTTPSampler.protocol"></stringProp>
          <stringProp name="HTTPSampler.contentEncoding"></stringProp>
          <stringProp 
name="HTTPSampler.path">/api/v1/session/startSession</stringProp>
          <stringProp name="HTTPSampler.method">POST</stringProp>
          <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
          <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
          <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
          <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
          <boolProp name="HTTPSampler.monitor">false</boolProp>
          <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
        </HTTPSamplerProxy>
        <hashTree>
 <com.atlantbh.jmeter.plugins.jsonutils.jsonformatter.JSONFormatter 
guiclass="com.atlantbh.jmeter.plugins.jsonutils.jsonformatter.gui.JSONFormatterGui" 
testclass="com.atlantbh.jmeter.plugins.jsonutils.jsonformatter.JSONFormatter" 
testname="jp@gc - JSON Format Post Processor" enabled="true"/>
          <hashTree/>
          <JSONPostProcessor guiclass="JSONPostProcessorGui" 
testclass="JSONPostProcessor" testname="JSON Extractor" enabled="true">
            <stringProp 
name="JSONPostProcessor.referenceNames">sessionContextId3</stringProp>
            <stringProp 
name="JSONPostProcessor.jsonPathExprs">$.sessionId</stringProp>
            <stringProp 
name="JSONPostProcessor.match_numbers"></stringProp>
          </JSONPostProcessor>
          <hashTree/>
          <ResponseAssertion guiclass="AssertionGui" 
testclass="ResponseAssertion" testname="Response Assertion" 
enabled="true">
            <collectionProp name="Asserion.test_strings">
              <stringProp name="687667916">successfully generated 
session</stringProp>
            </collectionProp>
            <stringProp 
name="Assertion.test_field">Assertion.response_data</stringProp>
            <boolProp name="Assertion.assume_success">false</boolProp>
            <intProp name="Assertion.test_type">16</intProp>
          </ResponseAssertion>
          <hashTree/>
        </hashTree>
        <HTTPSamplerProxy guiclass="HttpTestSampleGui" 
testclass="HTTPSamplerProxy" testname="addMediaToLearnerCollection" 
enabled="true">
          <elementProp name="HTTPsampler.Files" 
elementType="HTTPFileArgs">
            <collectionProp name="HTTPFileArgs.files">
              <elementProp 
name="c:\ibm\apache-jmeter-3.1\bin\inputs\IMG_1573.JPG" 
elementType="HTTPFileArg">
                <stringProp 
name="File.path">c:\ibm\apache-jmeter-3.1\bin\inputs\IMG_1573.JPG</stringProp>
                <stringProp name="File.paramname">mediaFile</stringProp>
                <stringProp name="File.mimetype"></stringProp>
              </elementProp>
            </collectionProp>
          </elementProp>
          <elementProp name="HTTPsampler.Arguments" 
elementType="Arguments" guiclass="HTTPArgumentsPanel" 
testclass="Arguments" testname="User Defined Variables" enabled="true">
            <collectionProp name="Arguments.arguments">
              <elementProp name="sessionContextId" 
elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp 
name="Argument.value">${sessionContextId3}</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp 
name="Argument.name">sessionContextId</stringProp>
              </elementProp>
              <elementProp name="vocabWord" elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value">arachnid</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp name="Argument.name">vocabWord</stringProp>
              </elementProp>
              <elementProp name="learnerGivenMediaLabels" 
elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value">arachnid</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp 
name="Argument.name">learnerGivenMediaLabels</stringProp>
              </elementProp>
              <elementProp name="mediaCategory" 
elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value">IMAGE</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp 
name="Argument.name">mediaCategory</stringProp>
              </elementProp>
            </collectionProp>
          </elementProp>
          <stringProp name="HTTPSampler.domain"></stringProp>
          <stringProp name="HTTPSampler.port"></stringProp>
          <stringProp 
name="HTTPSampler.connect_timeout">80000000</stringProp>
          <stringProp 
name="HTTPSampler.response_timeout">80000000</stringProp>
          <stringProp name="HTTPSampler.protocol">https</stringProp>
          <stringProp name="HTTPSampler.contentEncoding"></stringProp>
          <stringProp 
name="HTTPSampler.path">/api/v1/profile/addMediaToLearnerCollection</stringProp>
          <stringProp name="HTTPSampler.method">POST</stringProp>
          <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
          <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
          <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
          <boolProp name="HTTPSampler.DO_MULTIPART_POST">true</boolProp>
          <boolProp name="HTTPSampler.monitor">false</boolProp>
          <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
        </HTTPSamplerProxy>
        <hashTree>
          <ResponseAssertion guiclass="AssertionGui" 
testclass="ResponseAssertion" testname="Response Assertion" 
enabled="true">
            <collectionProp name="Asserion.test_strings">
              <stringProp name="-1094768879">Successfully added media to 
learner&apos;s collection</stringProp>
            </collectionProp>
            <stringProp 
name="Assertion.test_field">Assertion.response_data</stringProp>
            <boolProp name="Assertion.assume_success">false</boolProp>
            <intProp name="Assertion.test_type">16</intProp>
          </ResponseAssertion>
          <hashTree/>
        </hashTree>
        <HTTPSamplerProxy guiclass="HttpTestSampleGui" 
testclass="HTTPSamplerProxy" testname="addMediaToLearnerCollection" 
enabled="true">
          <elementProp name="HTTPsampler.Files" 
elementType="HTTPFileArgs">
            <collectionProp name="HTTPFileArgs.files">
              <elementProp 
name="c:\ibm\apache-jmeter-3.1\bin\inputs\IMG_4536.JPG" 
elementType="HTTPFileArg">
                <stringProp 
name="File.path">c:\ibm\apache-jmeter-3.1\bin\inputs\IMG_4536.JPG</stringProp>
                <stringProp name="File.paramname">mediaFile</stringProp>
                <stringProp name="File.mimetype"></stringProp>
              </elementProp>
            </collectionProp>
          </elementProp>
          <elementProp name="HTTPsampler.Arguments" 
elementType="Arguments" guiclass="HTTPArgumentsPanel" 
testclass="Arguments" testname="User Defined Variables" enabled="true">
            <collectionProp name="Arguments.arguments">
              <elementProp name="sessionContextId" 
elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp 
name="Argument.value">${sessionContextId3}</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp 
name="Argument.name">sessionContextId</stringProp>
              </elementProp>
              <elementProp name="vocabWord" elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value">arachnid</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp name="Argument.name">vocabWord</stringProp>
              </elementProp>
              <elementProp name="learnerGivenMediaLabels" 
elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value">arachnid</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp 
name="Argument.name">learnerGivenMediaLabels</stringProp>
              </elementProp>
              <elementProp name="mediaCategory" 
elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value">IMAGE</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp 
name="Argument.name">mediaCategory</stringProp>
              </elementProp>
            </collectionProp>
          </elementProp>
          <stringProp name="HTTPSampler.domain"></stringProp>
          <stringProp name="HTTPSampler.port"></stringProp>
          <stringProp 
name="HTTPSampler.connect_timeout">40000000</stringProp>
          <stringProp 
name="HTTPSampler.response_timeout">40000000</stringProp>
          <stringProp name="HTTPSampler.protocol">https</stringProp>
          <stringProp name="HTTPSampler.contentEncoding"></stringProp>
          <stringProp 
name="HTTPSampler.path">/api/v1/profile/addMediaToLearnerCollection</stringProp>
          <stringProp name="HTTPSampler.method">POST</stringProp>
          <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
          <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
          <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
          <boolProp name="HTTPSampler.DO_MULTIPART_POST">true</boolProp>
          <boolProp name="HTTPSampler.monitor">false</boolProp>
          <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
        </HTTPSamplerProxy>
        <hashTree>
          <ResponseAssertion guiclass="AssertionGui" 
testclass="ResponseAssertion" testname="Response Assertion" 
enabled="true">
            <collectionProp name="Asserion.test_strings">
              <stringProp name="-1094768879">Successfully added media to 
learner&apos;s collection</stringProp>
            </collectionProp>
            <stringProp 
name="Assertion.test_field">Assertion.response_data</stringProp>
            <boolProp name="Assertion.assume_success">false</boolProp>
            <intProp name="Assertion.test_type">16</intProp>
          </ResponseAssertion>
          <hashTree/>
        </hashTree>
        <HTTPSamplerProxy guiclass="HttpTestSampleGui" 
testclass="HTTPSamplerProxy" testname="addMediaToLearnerCollection" 
enabled="true">
          <elementProp name="HTTPsampler.Files" 
elementType="HTTPFileArgs">
            <collectionProp name="HTTPFileArgs.files">
              <elementProp 
name="c:\ibm\apache-jmeter-3.1\bin\inputs\dsc00010.jpg" 
elementType="HTTPFileArg">
                <stringProp 
name="File.path">c:\ibm\apache-jmeter-3.1\bin\inputs\dsc00010.jpg</stringProp>
                <stringProp name="File.paramname">mediaFile</stringProp>
                <stringProp name="File.mimetype"></stringProp>
              </elementProp>
            </collectionProp>
          </elementProp>
          <elementProp name="HTTPsampler.Arguments" 
elementType="Arguments" guiclass="HTTPArgumentsPanel" 
testclass="Arguments" testname="User Defined Variables" enabled="true">
            <collectionProp name="Arguments.arguments">
              <elementProp name="sessionContextId" 
elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp 
name="Argument.value">${sessionContextId3}</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp 
name="Argument.name">sessionContextId</stringProp>
              </elementProp>
              <elementProp name="vocabWord" elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value">arachnid</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp name="Argument.name">vocabWord</stringProp>
              </elementProp>
              <elementProp name="learnerGivenMediaLabels" 
elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value">arachnid</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp 
name="Argument.name">learnerGivenMediaLabels</stringProp>
              </elementProp>
              <elementProp name="mediaCategory" 
elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value">IMAGE</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp 
name="Argument.name">mediaCategory</stringProp>
              </elementProp>
            </collectionProp>
          </elementProp>
          <stringProp name="HTTPSampler.domain"></stringProp>
          <stringProp name="HTTPSampler.port"></stringProp>
          <stringProp 
name="HTTPSampler.connect_timeout">40000000</stringProp>
          <stringProp 
name="HTTPSampler.response_timeout">40000000</stringProp>
          <stringProp name="HTTPSampler.protocol">https</stringProp>
          <stringProp name="HTTPSampler.contentEncoding"></stringProp>
          <stringProp 
name="HTTPSampler.path">/api/v1/profile/addMediaToLearnerCollection</stringProp>
          <stringProp name="HTTPSampler.method">POST</stringProp>
          <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
          <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
          <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
          <boolProp name="HTTPSampler.DO_MULTIPART_POST">true</boolProp>
          <boolProp name="HTTPSampler.monitor">false</boolProp>
          <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
        </HTTPSamplerProxy>
        <hashTree>
          <ResponseAssertion guiclass="AssertionGui" 
testclass="ResponseAssertion" testname="Response Assertion" 
enabled="true">
            <collectionProp name="Asserion.test_strings">
              <stringProp name="-1094768879">Successfully added media to 
learner&apos;s collection</stringProp>
            </collectionProp>
            <stringProp 
name="Assertion.test_field">Assertion.response_data</stringProp>
            <boolProp name="Assertion.assume_success">false</boolProp>
            <intProp name="Assertion.test_type">16</intProp>
          </ResponseAssertion>
          <hashTree/>
        </hashTree>
        <HTTPSamplerProxy guiclass="HttpTestSampleGui" 
testclass="HTTPSamplerProxy" testname="addMediaToLearnerCollection" 
enabled="true">
          <elementProp name="HTTPsampler.Files" 
elementType="HTTPFileArgs">
            <collectionProp name="HTTPFileArgs.files">
              <elementProp 
name="c:\ibm\apache-jmeter-3.1\bin\inputs\IMG_1573.JPG" 
elementType="HTTPFileArg">
                <stringProp 
name="File.path">c:\ibm\apache-jmeter-3.1\bin\inputs\IMG_1573.JPG</stringProp>
                <stringProp name="File.paramname">mediaFile</stringProp>
                <stringProp name="File.mimetype"></stringProp>
              </elementProp>
            </collectionProp>
          </elementProp>
          <elementProp name="HTTPsampler.Arguments" 
elementType="Arguments" guiclass="HTTPArgumentsPanel" 
testclass="Arguments" testname="User Defined Variables" enabled="true">
            <collectionProp name="Arguments.arguments">
              <elementProp name="sessionContextId" 
elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp 
name="Argument.value">${sessionContextId3}</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp 
name="Argument.name">sessionContextId</stringProp>
              </elementProp>
              <elementProp name="vocabWord" elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value">arachnid</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp name="Argument.name">vocabWord</stringProp>
              </elementProp>
              <elementProp name="learnerGivenMediaLabels" 
elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value">arachnid</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp 
name="Argument.name">learnerGivenMediaLabels</stringProp>
              </elementProp>
              <elementProp name="mediaCategory" 
elementType="HTTPArgument">
                <boolProp 
name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value">IMAGE</stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
                <stringProp 
name="Argument.name">mediaCategory</stringProp>
              </elementProp>
            </collectionProp>
          </elementProp>
          <stringProp name="HTTPSampler.domain"></stringProp>
          <stringProp name="HTTPSampler.port"></stringProp>
          <stringProp 
name="HTTPSampler.connect_timeout">80000000</stringProp>
          <stringProp 
name="HTTPSampler.response_timeout">80000000</stringProp>
          <stringProp name="HTTPSampler.protocol">https</stringProp>
          <stringProp name="HTTPSampler.contentEncoding"></stringProp>
          <stringProp 
name="HTTPSampler.path">/api/v1/profile/addMediaToLearnerCollection</stringProp>
          <stringProp name="HTTPSampler.method">POST</stringProp>
          <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
          <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
          <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
          <boolProp name="HTTPSampler.DO_MULTIPART_POST">true</boolProp>
          <boolProp name="HTTPSampler.monitor">false</boolProp>
          <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
        </HTTPSamplerProxy>
        <hashTree>
          <ResponseAssertion guiclass="AssertionGui" 
testclass="ResponseAssertion" testname="Response Assertion" 
enabled="true">
            <collectionProp name="Asserion.test_strings">
              <stringProp name="-1094768879">Successfully added media to 
learner&apos;s collection</stringProp>
            </collectionProp>
            <stringProp 
name="Assertion.test_field">Assertion.response_data</stringProp>
            <boolProp name="Assertion.assume_success">false</boolProp>
            <intProp name="Assertion.test_type">16</intProp>
          </ResponseAssertion>
          <hashTree/>
        </hashTree>
        <kg.apc.jmeter.samplers.HTTPRawSampler 
guiclass="kg.apc.jmeter.samplers.HTTPRawSamplerGui" 
testclass="kg.apc.jmeter.samplers.HTTPRawSampler" testname="jp@gc - HTTP 
Raw Request" enabled="false">
          <stringProp name="hostname">https://ecl-stage.mybluemix.net
</stringProp>
          <stringProp name="port">80</stringProp>
          <boolProp name="keepalive">true</boolProp>
          <stringProp name="timeout">0</stringProp>
          <stringProp name="data">POST 
https://ecl-stage.mybluemix.net/api/v1/profile/addMediaToLearnerCollection 
HTTP/1.1&#xd;
Host:: ecl-stage.mybluemix.net&#xd;
Authorization: Basic 
NDFkYTc2ZjBmYzNlYzYyYTY5MzllNjM0YmZiNmEzNDI6NDFkYTc2ZjBmYzNlYzYyYTY5MzllNjM0YmZiNmEzNDI=&#xd;
Cache-Control: no-cache&#xd;
Content-Type: multipart/form-data; 
boundary=----WebKitFormBoundaryW9R6VagwvACnorws&#xd;
&#xd;
&#xd;
------WebKitFormBoundaryW9R6VagwvACnorws&#xd;
Content-Disposition: form-data; name=&quot;sessionContextId&quot;&#xd;
&#xd;
ba58cf70-342b-11e7-8eaf-b5f5ce961296&#xd;
------WebKitFormBoundaryW9R6VagwvACnorws&#xd;
Content-Disposition: form-data; name=&quot;vocabWord&quot;&#xd;
&#xd;
arachnid&#xd;
------WebKitFormBoundaryW9R6VagwvACnorws&#xd;
Content-Disposition: form-data; 
name=&quot;learnerGivenMediaLabels&quot;&#xd;
&#xd;
arachnid&#xd;
------WebKitFormBoundaryW9R6VagwvACnorws&#xd;
Content-Disposition: form-data; name=&quot;mediaCategory&quot;&#xd;
&#xd;
IMAGE&#xd;
------WebKitFormBoundaryW9R6VagwvACnorws&#xd;
Content-Disposition: form-data; name=&quot;mediaFile&quot;; 
filename=&quot;DSC0010.jpg&quot;&#xd;
Content-Type: image/jpeg&#xd;
&#xd;
&#xd;
------WebKitFormBoundaryW9R6VagwvACnorws--</stringProp>
          <stringProp 
name="fileName">C:\ibm\apache-jmeter-3.1\bin\inputs\</stringProp>
          <boolProp name="parse">false</boolProp>
        </kg.apc.jmeter.samplers.HTTPRawSampler>
        <hashTree/>
        <ResultCollector guiclass="SummaryReport" 
testclass="ResultCollector" testname="Summary Report" enabled="true">
          <boolProp name="ResultCollector.error_logging">false</boolProp>
          <objProp>
            <name>saveConfig</name>
            <value class="SampleSaveConfiguration">
              <time>true</time>
              <latency>true</latency>
              <timestamp>true</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>false</samplerData>
              <xml>false</xml>
              <fieldNames>true</fieldNames>
              <responseHeaders>false</responseHeaders>
              <requestHeaders>false</requestHeaders>
              <responseDataOnError>false</responseDataOnError>
 
<saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
              <assertionsResultsToSave>0</assertionsResultsToSave>
              <bytes>true</bytes>
              <sentBytes>true</sentBytes>
              <threadCounts>true</threadCounts>
              <idleTime>true</idleTime>
              <connectTime>true</connectTime>
            </value>
          </objProp>
          <stringProp name="filename"></stringProp>
        </ResultCollector>
        <hashTree/>
      </hashTree>
    </hashTree>
    <WorkBench guiclass="WorkBenchGui" testclass="WorkBench" 
testname="WorkBench" enabled="true">
      <boolProp name="WorkBench.save">true</boolProp>
    </WorkBench>
    <hashTree>
      <ProxyControl guiclass="ProxyControlGui" testclass="ProxyControl" 
testname="HTTP(S) Test Script Recorder" enabled="true">
        <stringProp name="ProxyControlGui.port">8888</stringProp>
        <collectionProp name="ProxyControlGui.exclude_list">
          <stringProp 
name="1409425616">(?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|woff)</stringProp>
          <stringProp 
name="-2135475220">(?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|woff)[\?;].*</stringProp>
        </collectionProp>
        <collectionProp name="ProxyControlGui.include_list"/>
        <boolProp 
name="ProxyControlGui.capture_http_headers">true</boolProp>
        <intProp name="ProxyControlGui.grouping_mode">4</intProp>
        <boolProp name="ProxyControlGui.add_assertion">false</boolProp>
        <stringProp name="ProxyControlGui.sampler_type_name"></stringProp>
        <boolProp 
name="ProxyControlGui.sampler_redirect_automatically">false</boolProp>
        <boolProp 
name="ProxyControlGui.sampler_follow_redirects">true</boolProp>
        <boolProp name="ProxyControlGui.use_keepalive">true</boolProp>
        <boolProp 
name="ProxyControlGui.sampler_download_images">false</boolProp>
        <boolProp name="ProxyControlGui.regex_match">true</boolProp>
        <stringProp 
name="ProxyControlGui.content_type_include"></stringProp>
        <stringProp 
name="ProxyControlGui.content_type_exclude"></stringProp>
        <boolProp 
name="ProxyControlGui.notify_child_sl_filtered">true</boolProp>
        <stringProp 
name="ProxyControlGui.proxy_prefix_http_sampler_name"></stringProp>
      </ProxyControl>
      <hashTree>
        <ResultCollector guiclass="ViewResultsFullVisualizer" 
testclass="ResultCollector" testname="View Results Tree" enabled="true">
          <boolProp name="ResultCollector.error_logging">false</boolProp>
          <objProp>
            <name>saveConfig</name>
            <value class="SampleSaveConfiguration">
              <time>true</time>
              <latency>true</latency>
              <timestamp>true</timestamp>
              <success>true</success>
              <label>true</label>
              <code>true</code>
              <message>true</message>
              <threadName>true</threadName>
              <dataType>false</dataType>
              <encoding>false</encoding>
              <assertions>true</assertions>
              <subresults>false</subresults>
              <responseData>false</responseData>
              <samplerData>false</samplerData>
              <xml>false</xml>
              <fieldNames>true</fieldNames>
              <responseHeaders>false</responseHeaders>
              <requestHeaders>false</requestHeaders>
              <responseDataOnError>true</responseDataOnError>
 
<saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
              <assertionsResultsToSave>0</assertionsResultsToSave>
              <bytes>true</bytes>
              <hostname>true</hostname>
              <threadCounts>true</threadCounts>
              <sampleCount>true</sampleCount>
            </value>
          </objProp>
          <stringProp name="filename"></stringProp>
        </ResultCollector>
        <hashTree/>
      </hashTree>
    </hashTree>
  </hashTree>
</jmeterTestPlan>

Thanks,
Lisa

Lisa Waugh
720-396-0112
Fax:  720-396-0112
Charlotte, NC







From:   Felix Schumacher <felix.schumacher@internetallee.de>
To:     JMeter Users List <user@jmeter.apache.org>
Date:   07/31/2017 01:15 PM
Subject:        Re: Using HTTP Request to test POST to upload and store a 
file



The images didn't make it through the mailing list. 

Can you post the test? I counted three images in the log, only. Can you 
add a debit sampler to check that your variables are correctly 
initialized? 

Felix




Am 31. Juli 2017 18:20:42 MESZ schrieb Lisa Waugh <waugh@us.ibm.com>:
>Hi Felix,
>Here is my HTTP Request:
> 
>
> 
>
> 
>I have the same http request set up to run 4 times.  The only thing I'm
>
>changing is the file name.
>
> 
>I can run this same exact request in Postman on the same machine and it
>
>work consistently so I don't think I have any firewall issues.
> 
>I am running JMeter 3.1 r1770033 and Java 
>java version "1.8.0"
>Java(TM) SE Runtime Environment (build pwa6480sr4fp5-20170421_01(SR4
>FP5))
>IBM J9 VM (build 2.8, JRE 1.8.0 Windows 10 amd64-64 Compressed
>References 
>20170419_344392 (JIT enabled, AOT enabled)
>J9VM - R28_20170419_1004_B344392
>JIT  - tr.r14.java_20170419_344392
>GC   - R28_20170419_1004_B344392_CMPRSS
>J9CL - 20170419_344392)
>JCL - 20170420_01 based on Oracle jdk8u131-b11
> 
>I enabled debugging and captured the log
>2017/07/31 11:32:14 INFO  - jmeter.engine.StandardJMeterEngine: Running
>
>the test! 
>2017/07/31 11:32:14 INFO  - jmeter.samplers.SampleEvent: List of 
>sample_variables: [] 
>2017/07/31 11:32:14 INFO  - jmeter.gui.util.JMeterMenuBar: 
>setRunning(true,*local*) 
>2017/07/31 11:32:14 INFO  - jmeter.engine.StandardJMeterEngine:
>Starting 
>ThreadGroup: 1 : Group for Admin 
>2017/07/31 11:32:14 INFO  - jmeter.engine.StandardJMeterEngine:
>Starting 1 
>threads for group Group for Admin. 
>2017/07/31 11:32:14 INFO  - jmeter.engine.StandardJMeterEngine: Thread 
>will continue on error 
>2017/07/31 11:32:14 INFO  - jmeter.threads.ThreadGroup: Starting thread
>
>group number 1 threads 1 ramp-up 10 perThread 10000.0
>delayedStart=false 
>2017/07/31 11:32:14 INFO  - jmeter.threads.ThreadGroup: Started thread 
>group number 1 
>2017/07/31 11:32:14 INFO  - jmeter.engine.StandardJMeterEngine: All
>thread 
>groups have been started 
>2017/07/31 11:32:14 INFO  - jmeter.threads.JMeterThread: Thread
>started: 
>Group for Admin 1-1 
>2017/07/31 11:32:15 INFO  - jmeter.services.FileServer: Stored: 
>c:\ibm\apache-jmeter-3.1\bin\inputs\IMG_1573.JPG 
>2017/07/31 11:32:34 INFO  - jmeter.services.FileServer: Stored: 
>c:\ibm\apache-jmeter-3.1\bin\inputs\IMG_4536.JPG 
>2017/07/31 11:32:44 INFO  - jmeter.services.FileServer: Stored: 
>c:\ibm\apache-jmeter-3.1\bin\inputs\dsc00010.jpg 
>2017/07/31 11:33:15 INFO  - jmeter.threads.JMeterThread: Thread is
>done: 
>Group for Admin 1-1 
>2017/07/31 11:33:15 INFO  - jmeter.threads.JMeterThread: Thread
>finished: 
>Group for Admin 1-1 
>2017/07/31 11:33:15 INFO  - jmeter.engine.StandardJMeterEngine:
>Notifying 
>test listeners of end of test 
>2017/07/31 11:33:15 INFO  - jmeter.gui.util.JMeterMenuBar: 
>setRunning(false,*local*) 
> 
>I'll capture a thread dump and send it later today.
> 
>thanks,
>Lisa
> 
>Lisa Waugh
>Performance Test Engineer
>IBM Watson Education
>+1 (720) 396-0112
>+1 (704) 907-7008 m
>waugh@us.ibm.com
>
>
>Watson Education 
> 
> 
> 
>----- Original message -----
>From: Felix Schumacher <felix.schumacher@internetallee.de>
>To: user@jmeter.apache.org
>Cc:
>Subject: Re: Using HTTP Request to test POST to upload and store a file
>Date: Sat, Jul 29, 2017 5:57 AM
> 
>Am 28.07.2017 um 13:30 schrieb Felix Schumacher:
>>
>> Am 27. Juli 2017 23:50:20 MESZ schrieb Lisa Waugh <waugh@us.ibm.com>:
>>> I'm trying to use HTTP Request to upload and store a file via a POST
>to
>>> a
>>> REST api.  I can't use HTTP Raw because it is an https request.
>>>
>>> I can successfully accomplish this with smaller files (<= 500 kb).
>>> With
>>> larger files (>= 582 kb) it fails with a 500 Error: Connection
>error.
>>> I
>>> know it is not an issue with my REST api because I can use POSTMAN
>and
>>> successfully post the same file.
>>>
>>> I've increased the Connect timeouts and Response timeouts to
>80000000
>>> msecs.
>>>
>>> These are images or audio recordings, not text files.
>>>
>>> No errors appear in the jmeter logs.
>> I think I can confirm this. Is the requests duration longer than 
>expected?
>>
>> Could you take a threaddump while the request is waiting?
>Strangely enough, I can't reproduce it at home with my linux setup.
>
>How do you setup the http sampler to send the file? Which version of
>JMeter and Java are you using. Is this between different computers,
>could there be a firewall that interferes with the requests?
>
>Can you try to set the logging of JMeter to something more detailed
>like
>debug?
>
>Felix
>>
>> Felix
>>
>>> Is there a setting controlling the size somewhere I haven't found? 
>Is
>>> there anyway to get this to work successfully?
>>>
>>> Lisa Waugh
>>> 720-396-0112
>>> Fax:  720-396-0112
>>> Charlotte, NC
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@jmeter.apache.org
>> For additional commands, e-mail: user-help@jmeter.apache.org
>>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: user-unsubscribe@jmeter.apache.org
>For additional commands, e-mail: user-help@jmeter.apache.org
> 
> 





Mime
  • Unnamed multipart/related (inline, None, 0 bytes)
View raw message