You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by pm...@apache.org on 2017/05/26 21:19:13 UTC
svn commit: r1796345 - in /jmeter/trunk:
src/core/org/apache/jmeter/report/processor/
test/src/org/apache/jmeter/report/processor/ xdocs/
Author: pmouawad
Date: Fri May 26 21:19:13 2017
New Revision: 1796345
URL: http://svn.apache.org/viewvc?rev=1796345&view=rev
Log:
Bug 61129 - Report/Dashboard : If response code is empty but a failureMessage is present, Errors and Top 5 Errors are not accurate
Bugzilla Id: 61129
Modified:
jmeter/trunk/src/core/org/apache/jmeter/report/processor/ErrorsSummaryConsumer.java
jmeter/trunk/src/core/org/apache/jmeter/report/processor/Top5ErrorsBySamplerConsumer.java
jmeter/trunk/test/src/org/apache/jmeter/report/processor/ErrorsSummaryConsumerTest.java
jmeter/trunk/xdocs/changes.xml
Modified: jmeter/trunk/src/core/org/apache/jmeter/report/processor/ErrorsSummaryConsumer.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/report/processor/ErrorsSummaryConsumer.java?rev=1796345&r1=1796344&r2=1796345&view=diff
==============================================================================
--- jmeter/trunk/src/core/org/apache/jmeter/report/processor/ErrorsSummaryConsumer.java (original)
+++ jmeter/trunk/src/core/org/apache/jmeter/report/processor/ErrorsSummaryConsumer.java Fri May 26 21:19:13 2017
@@ -78,11 +78,21 @@ public class ErrorsSummaryConsumer exten
*/
@Override
protected String getKeyFromSample(Sample sample) {
+ return getErrorKey(sample);
+ }
+
+ /**
+ * @param sample {@link Sample}
+ * @return String Error key for sample
+ */
+ static String getErrorKey(Sample sample) {
String responseCode = sample.getResponseCode();
String responseMessage = sample.getResponseMessage();
String key = responseCode + (!StringUtils.isEmpty(responseMessage) ?
"/" + StringEscapeUtils.escapeJson(responseMessage) : "");
- if (isSuccessCode(responseCode)) {
+ if (isSuccessCode(responseCode) ||
+ (StringUtils.isEmpty(responseCode) &&
+ !StringUtils.isEmpty(sample.getFailureMessage()))) {
key = ASSERTION_FAILED;
if (ASSERTION_RESULTS_FAILURE_MESSAGE) {
String msg = sample.getFailureMessage();
@@ -93,7 +103,6 @@ public class ErrorsSummaryConsumer exten
}
return key;
}
-
/*
* (non-Javadoc)
*
Modified: jmeter/trunk/src/core/org/apache/jmeter/report/processor/Top5ErrorsBySamplerConsumer.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/report/processor/Top5ErrorsBySamplerConsumer.java?rev=1796345&r1=1796344&r2=1796345&view=diff
==============================================================================
--- jmeter/trunk/src/core/org/apache/jmeter/report/processor/Top5ErrorsBySamplerConsumer.java (original)
+++ jmeter/trunk/src/core/org/apache/jmeter/report/processor/Top5ErrorsBySamplerConsumer.java Fri May 26 21:19:13 2017
@@ -17,8 +17,6 @@
*/
package org.apache.jmeter.report.processor;
-import org.apache.commons.lang3.StringEscapeUtils;
-import org.apache.commons.lang3.StringUtils;
import org.apache.jmeter.report.core.Sample;
import org.apache.jmeter.util.JMeterUtils;
@@ -57,28 +55,11 @@ public class Top5ErrorsBySamplerConsumer
}
if(!sample.getSuccess()) {
- data.registerError(getError(sample));
+ data.registerError(ErrorsSummaryConsumer.getErrorKey(sample));
data.incErrors();
}
data.incTotal();
}
-
- private String getError(Sample sample) {
- String responseCode = sample.getResponseCode();
- String responseMessage = sample.getResponseMessage();
- String key = responseCode + (!StringUtils.isEmpty(responseMessage) ?
- "/" + StringEscapeUtils.escapeJson(responseMessage) : "");
- if (ErrorsSummaryConsumer.isSuccessCode(responseCode)) {
- key = ErrorsSummaryConsumer.ASSERTION_FAILED;
- if (ErrorsSummaryConsumer.ASSERTION_RESULTS_FAILURE_MESSAGE) {
- String msg = sample.getFailureMessage();
- if (!StringUtils.isEmpty(msg)) {
- key = StringEscapeUtils.escapeJson(msg);
- }
- }
- }
- return key;
- }
/*
* (non-Javadoc)
Modified: jmeter/trunk/test/src/org/apache/jmeter/report/processor/ErrorsSummaryConsumerTest.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/test/src/org/apache/jmeter/report/processor/ErrorsSummaryConsumerTest.java?rev=1796345&r1=1796344&r2=1796345&view=diff
==============================================================================
--- jmeter/trunk/test/src/org/apache/jmeter/report/processor/ErrorsSummaryConsumerTest.java (original)
+++ jmeter/trunk/test/src/org/apache/jmeter/report/processor/ErrorsSummaryConsumerTest.java Fri May 26 21:19:13 2017
@@ -26,6 +26,24 @@ import org.junit.Test;
public class ErrorsSummaryConsumerTest {
@Test
+ public void testGetErrorKey() {
+ SampleMetadata metadata = new SampleMetadata(',', new String[] { CSVSaveService.SUCCESSFUL,
+ CSVSaveService.RESPONSE_CODE, CSVSaveService.RESPONSE_MESSAGE, CSVSaveService.FAILURE_MESSAGE });
+ Sample sample = new Sample(0, metadata, new String[] { "false", "", "", "FailureMessage" });
+ Assert.assertEquals("FailureMessage", ErrorsSummaryConsumer.getErrorKey(sample));
+
+ sample = new Sample(0, metadata, new String[] { "false", "200", "", "FailureMessage" });
+ Assert.assertEquals("FailureMessage", ErrorsSummaryConsumer.getErrorKey(sample));
+
+ sample = new Sample(0, metadata, new String[] { "true", "200", "", "" });
+ Assert.assertEquals(ErrorsSummaryConsumer.ASSERTION_FAILED, ErrorsSummaryConsumer.getErrorKey(sample));
+
+ sample = new Sample(0, metadata, new String[] { "false", "500", "Server Error", "FailureMessage" });
+ Assert.assertEquals("500/Server Error", ErrorsSummaryConsumer.getErrorKey(sample));
+ }
+
+
+ @Test
public void testErrorSampleCounter() {
ErrorsSummaryConsumer consumer = new ErrorsSummaryConsumer();
Sample sample = createSample(false);
Modified: jmeter/trunk/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?rev=1796345&r1=1796344&r2=1796345&view=diff
==============================================================================
--- jmeter/trunk/xdocs/changes.xml [utf-8] (original)
+++ jmeter/trunk/xdocs/changes.xml [utf-8] Fri May 26 21:19:13 2017
@@ -164,6 +164,7 @@ Summary
<h3>Report / Dashboard</h3>
<ul>
+ <li><bug>61129</bug>Report/Dashboard : If response code is empty but a failureMessage is present, Errors and Top 5 Errors are not accurate</li>
</ul>
<h3>General</h3>