JMeter断言失败

JMeter断言失败,jmeter,assertions,Jmeter,Assertions,我不熟悉JMeter和断言概念。当我试图执行一个JMX文件时,遇到此错误消息,该文件包含JMeter中的断言: 断言错误:false 断言失败:true 断言失败消息:测试失败:变量(搜索结果)不等于/ 已接收:未找到[[]]] 比较:未找到[[]]] 脚本的执行方式如下: $java-jar./apache-jmeter-2.10/bin/ApacheJMeter.jar-t./jmeter-master/test.jmx-Jhost=myhost.com-Joutput_后缀=localte

我不熟悉JMeter和断言概念。当我试图执行一个JMX文件时,遇到此错误消息,该文件包含JMeter中的断言:

断言错误:false 断言失败:true 断言失败消息:测试失败:变量(搜索结果)不等于/ 已接收:未找到[[]]] 比较:未找到[[]]]

脚本的执行方式如下: $java-jar./apache-jmeter-2.10/bin/ApacheJMeter.jar-t./jmeter-master/test.jmx-Jhost=myhost.com-Joutput_后缀=localtest

我试图删除MySQL中数据库表的内容,重新填充它们,然后重新执行jmx文件。但是,它仍然失败,并显示上面相同的错误消息

jmeter.log仅表示以下信息: 2013/11/27 05:58:52错误-jmeter.threads.JMeterThread:测试失败!java.lang.OutOfMemoryError 位于java.lang.ClassLoader.defineClassImpl(本机方法) 位于java.lang.ClassLoader.defineClass(ClassLoader.java:284) 位于org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:27) 位于org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:130) 位于org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:85) 位于org.mozilla.javascript.Context.compileImpl(Context.java:2394) 位于org.mozilla.javascript.Context.compileString(Context.java:1335) 位于org.mozilla.javascript.Context.compileString(Context.java:1324) 位于org.mozilla.javascript.Context.evaluateString(Context.java:1076) 位于org.apache.jmeter.control.IfController.evaluateCondition(IfController.java:110) 位于org.apache.jmeter.control.IfController.next(IfController.java:167) 位于org.apache.jmeter.control.GenericController.nextIsAController(GenericController.java:214) 位于org.apache.jmeter.control.GenericController.next(GenericController.java:174) 位于org.apache.jmeter.control.GenericController.nextIsAController(GenericController.java:223) 位于org.apache.jmeter.control.GenericController.next(GenericController.java:174) 位于org.apache.jmeter.control.GenericController.nextIsAController(GenericController.java:214) 在org.apache.jmeter.control.GenericController.reInitializeSubcroller上(GenericController.java:274) 在org.apache.jmeter.control.GenericController.reInitializeSubcroller(GenericController.java:275)上 位于org.apache.jmeter.control.IfController.next(IfController.java:178) 位于org.apache.jmeter.control.GenericController.nextIsAController(GenericController.java:214) 位于org.apache.jmeter.control.GenericController.next(GenericController.java:174) 位于org.apache.jmeter.control.LoopController.next(LoopController.java:118) 位于org.apache.jmeter.control.GenericController.nextIsAController(GenericController.java:223) 位于org.apache.jmeter.control.GenericController.next(GenericController.java:174) 位于org.apache.jmeter.control.LoopController.next(LoopController.java:118) 位于org.apache.jmeter.control.GenericController.nextIsAController(GenericController.java:223) 位于org.apache.jmeter.control.GenericController.next(GenericController.java:174) 位于org.apache.jmeter.control.LoopController.next(LoopController.java:118) 位于org.apache.jmeter.control.GenericController.nextIsAController(GenericController.java:223) 位于org.apache.jmeter.control.GenericController.next(GenericController.java:174) 位于org.apache.jmeter.control.LoopController.next(LoopController.java:118) 位于org.apache.jmeter.threads.AbstractThreadGroup.next(AbstractThreadGroup.java:88) 位于org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:255) 运行(Thread.java:769)

这是记录在JTL文件中的消息:

/</failureMessage>
  </assertionResult>
</httpSample>
<httpSample t="436" lt="406" ts="1385112442588" s="true" lb="Homepage:Home" rc="200" rm="OK" tn="Thread Group 1-4" dt="text" by="238401" sc="1" ec="0" ng="6" na="6"/>
<httpSample t="111" lt="34" ts="1385112445679" s="false" lb="Search:Leads" rc="200" rm="OK" tn="Thread Group 1-2" dt="text" by="15237" sc="1" ec="1" ng="6" na="6">
  <assertionResult>
    <name>Check for found lead</name>
    <failure>true</failure>
    <error>false</error>
    <failureMessage>Test failed: variable(searchResult) expected not to equal /

****** received  : NOT_FOUND[[[]]]

****** comparison: NOT_FOUND[[[]]]

/</failureMessage>
  </assertionResult>
</httpSample>
<httpSample t="138" lt="124" ts="1385112448413" s="false" lb="Search:Leads" rc="200" rm="OK" tn="Thread Group 1-4" dt="text" by="182785" sc="1" ec="1" ng="6" na="6">
  <assertionResult>
    <name>Check for found lead</name>
    <failure>true</failure>
    <error>false</error>
    <failureMessage>Test failed: variable(searchResult) expected not to equal /

****** received  : NOT_FOUND[[[]]]

****** comparison: NOT_FOUND[[[]]]



Here's the segment of the JMX file that was produced and executed:
        <ResultCollector guiclass="TableVisualizer" testclass="ResultCollector" testname="Result Table" 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>false</subresults>
              <responseData>false</responseData>
              <samplerData>false</samplerData>
              <xml>true</xml>
              <fieldNames>false</fieldNames>
              <responseHeaders>false</responseHeaders>
              <requestHeaders>false</requestHeaders>
              <responseDataOnError>false</responseDataOnError>
              <saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
              <assertionsResultsToSave>0</assertionsResultsToSave>
              <bytes>true</bytes>
              <threadCounts>true</threadCounts>
              <sampleCount>true</sampleCount>
            </value>
          </objProp>
          <stringProp name="filename">jmeter_output_${__P(output_suffix,generic)}.xml</stringProp>
        </ResultCollector>
任何人都可以提供有关此错误的疑难解答的提示吗

非常感谢你,
Ari.

日志显示OutOfMemoryError。 您可以先尝试增加内存,如:

$java-Xms256m-Xmx512m-jar./apache-jmeter-2.10/bin/ApacheJMeter.jar-t./jmeter-master/test.jmx-Jhost=myhost.com-Joutput_suffix=localtest

HI Lifecube,感谢您在堆附件中指出。它解决了OutOfMemory错误。关于确定响应断言错误的根本原因有什么建议吗?我忘了在JMeter的响应断言部分提到,它配置了以下选项。应用于->JMeter variable=searchResult响应字段以进行测试->文本响应模式匹配规则->等于要测试的模式->未找到