在测试运行中未获得相同数量的结果

基拉

在相同的Jmeter测试中,我在csv中得到了不同的结果。在一个我得到〜80,在其他我得到〜800。是否有一个设置,使我始终在.csv中获得相同数量的结果?

我也在使用从属设备,因此应该将其扩展,一个从属设备应为80,而10个从属设备应为800?

一切都在大型CI / CD管道中。所以我尝试了多次。但是对于相同的测试,永远不会获得相同的结果。

这是我的JMX XML。

<?xml version="1.0" encoding="UTF-8"?>
<jmeterTestPlan version="1.2" properties="5.0" jmeter="5.3">
  <hashTree>
    <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Testplan OneHundred" enabled="true">
      <stringProp name="TestPlan.comments"></stringProp>
      <boolProp name="TestPlan.functional_mode">true</boolProp>
      <boolProp name="TestPlan.tearDown_on_shutdown">true</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>
      <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="ThreadGroup1" enabled="true">
        <stringProp name="ThreadGroup.on_sample_error">stoptestnow</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">100</stringProp>
        </elementProp>
        <stringProp name="LoopController.loops">100</stringProp>
        <stringProp name="ThreadGroup.ramp_time">0</stringProp>
        <stringProp name="ThreadGroup.duration">0</stringProp>
        <stringProp name="ThreadGroup.delay">0</stringProp>
        <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp>
        <boolProp name="ThreadGroup.scheduler">false</boolProp>
        <stringProp name="ThreadGroup.num_threads">10</stringProp>
      </ThreadGroup>
      <hashTree>
        <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="GetRequest" enabled="true">
          <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="Variables pré-définies" enabled="true">
            <collectionProp name="Arguments.arguments">
              <elementProp name="" elementType="HTTPArgument">
                <boolProp name="HTTPArgument.always_encode">false</boolProp>
                <stringProp name="Argument.value"></stringProp>
                <stringProp name="Argument.metadata">=</stringProp>
                <boolProp name="HTTPArgument.use_equals">true</boolProp>
              </elementProp>
            </collectionProp>
          </elementProp>
          <stringProp name="HTTPSampler.domain">traefik_reverse-proxy_1/dashboard</stringProp>
          <stringProp name="HTTPSampler.port">80</stringProp>
          <stringProp name="HTTPSampler.protocol">http</stringProp>
          <stringProp name="HTTPSampler.contentEncoding"></stringProp>
          <stringProp name="HTTPSampler.path"></stringProp>
          <stringProp name="HTTPSampler.method">GET</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>
          <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
          <stringProp name="HTTPSampler.connect_timeout"></stringProp>
          <stringProp name="HTTPSampler.response_timeout"></stringProp>
        </HTTPSamplerProxy>
        <hashTree>
          <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
            <collectionProp name="HeaderManager.headers">
              <elementProp name="" elementType="Header">
                <stringProp name="Header.name">Host</stringProp>
                <stringProp name="Header.value">fend</stringProp>
              </elementProp>
            </collectionProp>
          </HeaderManager>
          <hashTree/>
          <ResultCollector guiclass="StatVisualizer" testclass="ResultCollector" testname="Aggregate 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>
                <url>true</url>
                <threadCounts>true</threadCounts>
                <idleTime>true</idleTime>
                <connectTime>true</connectTime>
              </value>
            </objProp>
            <stringProp name="filename">/masterdata/results/auth/cb/response_eight_get.csv</stringProp>
          </ResultCollector>
          <hashTree/>
        </hashTree>
      </hashTree>
    </hashTree>
  </hashTree>
</jmeterTestPlan>

这是我在终端机中收到的消息:

aiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
summary +      1 in 00:00:01 =    1.2/s Avg:   771 Min:   771 Max:   771 Err:     0 (0.00%) Active: 80 Started: 30 Finished: 0
summary +    104 in 00:00:21 =    4.9/s Avg:  9733 Min:    10 Max: 21163 Err:    80 (76.92%) Active: 0 Started: 30 Finished: 80
summary =    105 in 00:00:22 =    4.7/s Avg:  9647 Min:    10 Max: 21163 Err:    80 (76.19%)
Tidying up remote @ Tue Oct 27 22:08:54 UTC 2020 (1603836534920)
... end of run

以及results.csv中的最后几个条目

1603836484132,15040,GetRequest,Non HTTP response code: java.net.SocketException,Non HTTP response message: Socket closed,ThreadGroup1 1-9,text,false,,2682,0,4,4,http://traefik_reverse-proxy_1/dashboard/,0,0,185
1603836484168,14999,GetRequest,Non HTTP response code: java.net.SocketException,Non HTTP response message: Socket closed,ThreadGroup1 1-1,text,false,,2682,0,4,4,http://traefik_reverse-proxy_1/dashboard/,0,0,154
1603836484179,14998,GetRequest,Non HTTP response code: java.net.SocketException,Non HTTP response message: Socket closed,ThreadGroup1 1-4,text,false,,2682,0,4,4,http://traefik_reverse-proxy_1/dashboard/,0,0,137
德米特里
  1. 您的线程组中有10个用户和100个循环,因此您应该获得1000个总结果(如果一切顺利)

  2. 同时Stop Test Now出现Sampler错误之后,这意味着即使单个请求失败,测试也会立即(而不是正常地)停止测试

    在此处输入图片说明

  3. 所有JMeter奴隶都绝对独立地执行相同的测试计划,因此对于1个奴隶,您将获得1000个结果,对于2个奴隶,您将获得2000个结果,对于8个奴隶,您将具有8000个结果,等等。测试以立即停止强行终止连接(并添加更多错误),因此您可能希望将此“在发生采样器错误后采取的措施”切换为Continue,这样每次运行测试时您都可以获得相同数量的结果。

详细信息:如何在JMeter中执行分布式测试

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

可以在测试运行期间获得先前的测试

来自分类Dev

Android的测试运行失败:没有测试结果

来自分类Dev

通过VSTS中的命令行测试运行器发布测试结果

来自分类Dev

运行Nashorn程序时未获得结果

来自分类Dev

如何在tfs / mtm中的测试运行中将测试结果结果(失败/通过)添加到测试中

来自分类Dev

在pytest中为多个测试运行相同的进程

来自分类Dev

在全局变量中测试运行

来自分类Dev

如何自动重命名Testrail中的测试运行

来自分类Dev

使用查询未获得任何结果

来自分类Dev

阵列问题未获得预期结果

来自分类Dev

运行功能测试:上传测试运行结果/附件时出错

来自分类Dev

如何从SOAP UI TestSuite拆卸脚本中获取测试运行断言结果(状态和名称)?

来自分类Dev

在每次测试之后,让NUnit控制台在测试运行期间报告测试结果

来自分类Dev

使用Matplotlib将R绘图代码重写为Python,但未获得相同结果

来自分类Dev

着色golang测试运行输出

来自分类Dev

作为Maven测试运行

来自分类Dev

再现ScalaCheck测试运行

来自分类Dev

Couchbase测试运行失败

来自分类Dev

Intellij测试运行历史

来自分类Dev

测试运行null和字母?

来自分类Dev

Serverspec测试运行问题

来自分类Dev

使用JUNIT测试运行AsyncHttpClient

来自分类Dev

在测试运行期间浏览

来自分类Dev

计算单元测试运行期间发生的gc的数量

来自分类Dev

Azure DevOps-测试运行管理,还原运行结果

来自分类Dev

RowId在jqGrid中未获得SET

来自分类Dev

是否可以将测试计划中的测试用例附加到管道发布测试运行结果上?Azure DevOps API V6.0

来自分类Dev

如何获得NUnit GUI测试运行程序以使其可从Visual Studio使用?

来自分类Dev

调用对象中设置的匿名函数,未获得预期结果

Related 相关文章

  1. 1

    可以在测试运行期间获得先前的测试

  2. 2

    Android的测试运行失败:没有测试结果

  3. 3

    通过VSTS中的命令行测试运行器发布测试结果

  4. 4

    运行Nashorn程序时未获得结果

  5. 5

    如何在tfs / mtm中的测试运行中将测试结果结果(失败/通过)添加到测试中

  6. 6

    在pytest中为多个测试运行相同的进程

  7. 7

    在全局变量中测试运行

  8. 8

    如何自动重命名Testrail中的测试运行

  9. 9

    使用查询未获得任何结果

  10. 10

    阵列问题未获得预期结果

  11. 11

    运行功能测试:上传测试运行结果/附件时出错

  12. 12

    如何从SOAP UI TestSuite拆卸脚本中获取测试运行断言结果(状态和名称)?

  13. 13

    在每次测试之后,让NUnit控制台在测试运行期间报告测试结果

  14. 14

    使用Matplotlib将R绘图代码重写为Python,但未获得相同结果

  15. 15

    着色golang测试运行输出

  16. 16

    作为Maven测试运行

  17. 17

    再现ScalaCheck测试运行

  18. 18

    Couchbase测试运行失败

  19. 19

    Intellij测试运行历史

  20. 20

    测试运行null和字母?

  21. 21

    Serverspec测试运行问题

  22. 22

    使用JUNIT测试运行AsyncHttpClient

  23. 23

    在测试运行期间浏览

  24. 24

    计算单元测试运行期间发生的gc的数量

  25. 25

    Azure DevOps-测试运行管理,还原运行结果

  26. 26

    RowId在jqGrid中未获得SET

  27. 27

    是否可以将测试计划中的测试用例附加到管道发布测试运行结果上?Azure DevOps API V6.0

  28. 28

    如何获得NUnit GUI测试运行程序以使其可从Visual Studio使用?

  29. 29

    调用对象中设置的匿名函数,未获得预期结果

热门标签

归档