You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by se...@apache.org on 2010/01/21 19:02:20 UTC
svn commit: r901805 -
/jakarta/jmeter/trunk/src/components/org/apache/jmeter/extractor/XPathExtractor.java
Author: sebb
Date: Thu Jan 21 18:02:20 2010
New Revision: 901805
URL: http://svn.apache.org/viewvc?rev=901805&view=rev
Log:
Better reporting of XPath errors
Modified:
jakarta/jmeter/trunk/src/components/org/apache/jmeter/extractor/XPathExtractor.java
Modified: jakarta/jmeter/trunk/src/components/org/apache/jmeter/extractor/XPathExtractor.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/components/org/apache/jmeter/extractor/XPathExtractor.java?rev=901805&r1=901804&r2=901805&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/components/org/apache/jmeter/extractor/XPathExtractor.java (original)
+++ jakarta/jmeter/trunk/src/components/org/apache/jmeter/extractor/XPathExtractor.java Thu Jan 21 18:02:20 2010
@@ -128,18 +128,27 @@
previousResult.addAssertionResult(ass);
previousResult.setSuccessful(false);
} catch (ParserConfigurationException e) {// Should not happen
- final String errrorMessage = "error on ("+getXPathQuery()+")";
+ final String errrorMessage = "ParserConfigurationException while processing ("+getXPathQuery()+")";
log.error(errrorMessage,e);
throw new JMeterError(errrorMessage,e);
} catch (SAXException e) {// Can happen for bad input document
- log.warn("error on ("+getXPathQuery()+")"+e.getLocalizedMessage());
+ log.warn("SAXException while processing ("+getXPathQuery()+") "+e.getLocalizedMessage());
+ addAssertionFailure(previousResult, e, false); // Should this also fail the sample?
} catch (TransformerException e) {// Can happen for incorrect XPath expression
- log.warn("error on ("+getXPathQuery()+")"+e.getLocalizedMessage());
+ log.warn("TransformerException while processing ("+getXPathQuery()+") "+e.getLocalizedMessage());
+ addAssertionFailure(previousResult, e, false);
} catch (TidyException e) {
- AssertionResult ass = new AssertionResult("TidyException"); // $NON-NLS-1$
- ass.setFailure(true);
- ass.setFailureMessage(e.getLocalizedMessage());
- previousResult.addAssertionResult(ass);
+ addAssertionFailure(previousResult, e, true); // fail the sample
+ }
+ }
+
+ private void addAssertionFailure(final SampleResult previousResult,
+ final Throwable thrown, final boolean setFailed) {
+ AssertionResult ass = new AssertionResult(thrown.getClass().getSimpleName()); // $NON-NLS-1$
+ ass.setFailure(true);
+ ass.setFailureMessage(getXPathQuery()+" => "+thrown.getLocalizedMessage());
+ previousResult.addAssertionResult(ass);
+ if (setFailed){
previousResult.setSuccessful(false);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org