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 2016/02/10 23:04:30 UTC

svn commit: r1729747 - in /jmeter/trunk: src/core/org/apache/jmeter/report/core/CsvSampleReader.java src/core/org/apache/jmeter/report/core/Sample.java src/core/org/apache/jmeter/report/processor/FieldSampleComparator.java xdocs/changes.xml

Author: pmouawad
Date: Wed Feb 10 22:04:30 2016
New Revision: 1729747

URL: http://svn.apache.org/viewvc?rev=1729747&view=rev
Log:
Bug 58987 - Report/Dashboard: Improve error reporting
Bugzilla Id: 58987

Modified:
    jmeter/trunk/src/core/org/apache/jmeter/report/core/CsvSampleReader.java
    jmeter/trunk/src/core/org/apache/jmeter/report/core/Sample.java
    jmeter/trunk/src/core/org/apache/jmeter/report/processor/FieldSampleComparator.java
    jmeter/trunk/xdocs/changes.xml

Modified: jmeter/trunk/src/core/org/apache/jmeter/report/core/CsvSampleReader.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/report/core/CsvSampleReader.java?rev=1729747&r1=1729746&r2=1729747&view=diff
==============================================================================
--- jmeter/trunk/src/core/org/apache/jmeter/report/core/CsvSampleReader.java (original)
+++ jmeter/trunk/src/core/org/apache/jmeter/report/core/CsvSampleReader.java Wed Feb 10 22:04:30 2016
@@ -29,7 +29,9 @@ import java.io.UnsupportedEncodingExcept
 import org.apache.jmeter.samplers.SampleSaveConfiguration;
 import org.apache.jmeter.save.CSVSaveService;
 import org.apache.jmeter.util.JMeterUtils;
+import org.apache.jorphan.logging.LoggingManager;
 import org.apache.jorphan.util.JOrphanUtils;
+import org.apache.log.Logger;
 
 /**
  * Reader class for reading CSV files.<reader>
@@ -41,6 +43,7 @@ import org.apache.jorphan.util.JOrphanUt
  */
 public class CsvSampleReader implements Closeable{
 
+    private static final Logger LOG = LoggingManager.getLoggerForClass();
     private static final int BUF_SIZE = 10000;
 
     private static final String CHARSET = "ISO8859-1";
@@ -127,6 +130,10 @@ public class CsvSampleReader implements
                     && CSVSaveService.getSampleSaveConfiguration(line,
                             file.getAbsolutePath()) == null) {
                 // Build metadata from default save config
+                LOG.warn("File '"+file.getAbsolutePath()+"' does not contain any header, it is usually better to have it, "
+                        + "otherwise ensure you use the same jmeter.properties/user.properties when generating the CSV file and generating the report");
+                System.err.println("File '"+file.getAbsolutePath()+"' does not contain any header, it is usually better to have it, "
+                        + "otherwise ensure you use the same jmeter.properties/user.properties when generating the CSV file and generating the report");
                 result = new SampleMetadata(
                         SampleSaveConfiguration.staticConfig());
 

Modified: jmeter/trunk/src/core/org/apache/jmeter/report/core/Sample.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/report/core/Sample.java?rev=1729747&r1=1729746&r2=1729747&view=diff
==============================================================================
--- jmeter/trunk/src/core/org/apache/jmeter/report/core/Sample.java (original)
+++ jmeter/trunk/src/core/org/apache/jmeter/report/core/Sample.java Wed Feb 10 22:04:30 2016
@@ -32,7 +32,7 @@ import org.apache.commons.lang3.StringUt
  */
 public class Sample {
 
-    private static final String ERROR_ON_SAMPLE = "Error in sample #";
+    private static final String ERROR_ON_SAMPLE = "Error in sample at line:";
 
     private static final String CONTROLLER_PATTERN = "Number of samples in transaction";
 
@@ -97,13 +97,14 @@ public class Sample {
      *            the target class of the data
      * @param index
      *            the rank of the column
+     * @param fieldName Field name
      * @return the converted value of the data
      */
-    public <TData> TData getData(Class<TData> clazz, int index) {
+    public <TData> TData getData(Class<TData> clazz, int index, String fieldName) {
         try {
             return Converters.convert(clazz, data[index]);
         } catch (ConvertException ex) {
-            throw new SampleException(ERROR_ON_SAMPLE + row, ex);
+            throw new SampleException(ERROR_ON_SAMPLE + (row+1) + " converting field:"+fieldName+" to:"+clazz.getName()+", fieldValue:'"+data[index]+"'", ex);
         }
     }
 
@@ -118,7 +119,7 @@ public class Sample {
      * @return the converted value of the data
      */
     public <TData> TData getData(Class<TData> clazz, String name) {
-        return getData(clazz, metadata.ensureIndexOf(name));
+        return getData(clazz, metadata.ensureIndexOf(name), name);
     }
 
     /*

Modified: jmeter/trunk/src/core/org/apache/jmeter/report/processor/FieldSampleComparator.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/report/processor/FieldSampleComparator.java?rev=1729747&r1=1729746&r2=1729747&view=diff
==============================================================================
--- jmeter/trunk/src/core/org/apache/jmeter/report/processor/FieldSampleComparator.java (original)
+++ jmeter/trunk/src/core/org/apache/jmeter/report/processor/FieldSampleComparator.java Wed Feb 10 22:04:30 2016
@@ -48,6 +48,6 @@ public class FieldSampleComparator imple
      */
     @Override
     public long compare(Sample s1, Sample s2) {
-        return s1.getData(long.class, index).compareTo(s2.getData(long.class, index));
+        return s1.getData(long.class, index, fieldName).compareTo(s2.getData(long.class, index, fieldName));
     }
 }

Modified: jmeter/trunk/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?rev=1729747&r1=1729746&r2=1729747&view=diff
==============================================================================
--- jmeter/trunk/xdocs/changes.xml (original)
+++ jmeter/trunk/xdocs/changes.xml Wed Feb 10 22:04:30 2016
@@ -198,6 +198,7 @@ Summary
 <li><bug>58968</bug>Add a new template to allow to record script with think time included. Contributed by Antonio Gomes Rodrigues</li>
 <li><bug>58978</bug>Settings defaults : Switch "jmeter.save.saveservice.assertion_results_failure_message" to true (after 2.13)</li>
 <li><bug>58991</bug>Settings defaults : Switch "jmeter.save.saveservice.print_field_names" to true (after 2.13)</li>
+<li><bug>58987</bug>Report/Dashboard: Improve error reporting.</li>
 </ul>
 <ch_section>Non-functional changes</ch_section>
 <ul>