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 2007/03/17 18:36:10 UTC
svn commit: r519376 - in /jakarta/jmeter/branches/rel-2-2:
src/components/org/apache/jmeter/assertions/
src/components/org/apache/jmeter/visualizers/
src/core/org/apache/jmeter/assertions/
src/core/org/apache/jmeter/resources/ xdocs/
Author: sebb
Date: Sat Mar 17 10:36:09 2007
New Revision: 519376
URL: http://svn.apache.org/viewvc?view=rev&rev=519376
Log:
Bug 41873 - Add name to AssertionResult and display AssertionResult in ViewResultsFullVisualizer
Modified:
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/BeanShellAssertion.java
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/DurationAssertion.java
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/HTMLAssertion.java
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/MD5HexAssertion.java
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/ResponseAssertion.java
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/SizeAssertion.java
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XMLAssertion.java
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XMLSchemaAssertion.java
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XPathAssertion.java
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/AssertionVisualizer.java
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/ViewResultsFullVisualizer.java
jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/assertions/AssertionResult.java
jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/resources/messages.properties
jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml
Modified: jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/BeanShellAssertion.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/BeanShellAssertion.java?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/BeanShellAssertion.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/BeanShellAssertion.java Sat Mar 17 10:36:09 2007
@@ -96,7 +96,7 @@
* @see org.apache.jmeter.assertions.Assertion#getResult(org.apache.jmeter.samplers.SampleResult)
*/
public AssertionResult getResult(SampleResult response) {
- AssertionResult result = new AssertionResult();
+ AssertionResult result = new AssertionResult(getName());
if (bshInterpreter == null) {
result.setFailure(true);
Modified: jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/DurationAssertion.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/DurationAssertion.java?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/DurationAssertion.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/DurationAssertion.java Sat Mar 17 10:36:09 2007
@@ -43,7 +43,7 @@
* AssertionResult will reflect the success of the Sample.
*/
public AssertionResult getResult(SampleResult response) {
- AssertionResult result = new AssertionResult();
+ AssertionResult result = new AssertionResult(getName());
result.setFailure(false);
long duration=getAllowedDuration();
if (duration > 0) {
Modified: jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/HTMLAssertion.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/HTMLAssertion.java?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/HTMLAssertion.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/HTMLAssertion.java Sat Mar 17 10:36:09 2007
@@ -75,7 +75,7 @@
log.debug("HTMLAssertions.getResult() called");
// no error as default
- AssertionResult result = new AssertionResult();
+ AssertionResult result = new AssertionResult(getName());
if (inResponse.getResponseData().length == 0) {
return result.setResultForNull();
Modified: jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/MD5HexAssertion.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/MD5HexAssertion.java?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/MD5HexAssertion.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/MD5HexAssertion.java Sat Mar 17 10:36:09 2007
@@ -51,7 +51,7 @@
*/
public AssertionResult getResult(SampleResult response) {
- AssertionResult result = new AssertionResult();
+ AssertionResult result = new AssertionResult(getName());
result.setFailure(false);
byte[] resultData = response.getResponseData();
Modified: jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/ResponseAssertion.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/ResponseAssertion.java?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/ResponseAssertion.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/ResponseAssertion.java Sat Mar 17 10:36:09 2007
@@ -254,7 +254,7 @@
AssertionResult evaluateResponse(SampleResult response) {
boolean pass = true;
boolean not = (NOT & getTestType()) > 0;
- AssertionResult result = new AssertionResult();
+ AssertionResult result = new AssertionResult(getName());
String toCheck = ""; // The string to check (Url or data)
if (getAssumeSuccess()) {
Modified: jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/SizeAssertion.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/SizeAssertion.java?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/SizeAssertion.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/SizeAssertion.java Sat Mar 17 10:36:09 2007
@@ -64,7 +64,7 @@
* AssertionResult will reflect the success of the Sample.
*/
public AssertionResult getResult(SampleResult response) {
- AssertionResult result = new AssertionResult();
+ AssertionResult result = new AssertionResult(getName());
result.setFailure(false);
resultData = response.getResponseData();
long resultSize = resultData.length;
Modified: jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XMLAssertion.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XMLAssertion.java?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XMLAssertion.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XMLAssertion.java Sat Mar 17 10:36:09 2007
@@ -53,7 +53,7 @@
*/
public AssertionResult getResult(SampleResult response) {
// no error as default
- AssertionResult result = new AssertionResult();
+ AssertionResult result = new AssertionResult(getName());
byte[] responseData = response.getResponseData();
if (responseData.length == 0) {
return result.setResultForNull();
Modified: jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XMLSchemaAssertion.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XMLSchemaAssertion.java?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XMLSchemaAssertion.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XMLSchemaAssertion.java Sat Mar 17 10:36:09 2007
@@ -63,7 +63,7 @@
*
*/
public AssertionResult getResult(SampleResult response) {
- AssertionResult result = new AssertionResult();
+ AssertionResult result = new AssertionResult(getName());
// Note: initialised with error = failure = false
byte data[] = response.getResponseData();
Modified: jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XPathAssertion.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XPathAssertion.java?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XPathAssertion.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/assertions/XPathAssertion.java Sat Mar 17 10:36:09 2007
@@ -69,7 +69,7 @@
*/
public AssertionResult getResult(SampleResult response) {
// no error as default
- AssertionResult result = new AssertionResult();
+ AssertionResult result = new AssertionResult(getName());
byte[] responseData = response.getResponseData();
if (responseData.length == 0) {
return result.setResultForNull();
Modified: jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/AssertionVisualizer.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/AssertionVisualizer.java?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/AssertionVisualizer.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/AssertionVisualizer.java Sat Mar 17 10:36:09 2007
@@ -74,6 +74,7 @@
if (item.isFailure() || item.isError()) {
display.append("\n\t"); // $NON-NLS-1$
+ display.append(item.getName() != null ? item.getName() + " : " : "");
display.append(item.getFailureMessage());
}
}
Modified: jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/ViewResultsFullVisualizer.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/ViewResultsFullVisualizer.java?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/ViewResultsFullVisualizer.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/ViewResultsFullVisualizer.java Sat Mar 17 10:36:09 2007
@@ -70,6 +70,7 @@
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
+import org.apache.jmeter.assertions.AssertionResult;
import org.apache.jmeter.samplers.Clearable;
import org.apache.jmeter.samplers.SampleResult;
import org.apache.jmeter.util.JMeterUtils;
@@ -144,9 +145,13 @@
private JScrollPane resultsScrollPane;
+ private JPanel resultsPane;
+
private JLabel imageLabel;
private JTextArea sampleDataField;
+
+ private JPanel requestPane;
private JRadioButton textButton;
@@ -158,6 +163,8 @@
private JTree jTree;
+ private JTabbedPane rightSide;
+
private static final ImageIcon imageSuccess = JMeterUtils.getImage(
JMeterUtils.getPropDefault("viewResultsTree.success", "icon_success_sml.gif"));
@@ -187,9 +194,21 @@
if (log.isDebugEnabled()) {
log.debug("updateGui1 : sample result - " + res);
}
+ // Add sample
DefaultMutableTreeNode currNode = new DefaultMutableTreeNode(res);
treeModel.insertNodeInto(currNode, root, root.getChildCount());
addSubResults(currNode, res);
+ // Add any assertion that failed as children of the sample node
+ AssertionResult assertionResults[] = res.getAssertionResults();
+ int assertionIndex = 0;
+ for (int j = 0; j < assertionResults.length; j++) {
+ AssertionResult item = assertionResults[j];
+
+ if (item.isFailure() || item.isError()) {
+ DefaultMutableTreeNode assertionNode = new DefaultMutableTreeNode(item);
+ treeModel.insertNodeInto(assertionNode, currNode, assertionIndex++);
+ }
+ }
if (root.getChildCount() == 1) {
jTree.expandPath(new TreePath(root));
@@ -266,90 +285,116 @@
sampleDataField.setText(""); // $NON-NLS-1$
results.setText(""); // $NON-NLS-1$
if (node != null) {
- SampleResult res = (SampleResult) node.getUserObject();
+ Object userObject = node.getUserObject();
+ if(userObject instanceof SampleResult) {
+ SampleResult res = (SampleResult) userObject;
+
+ // We are displaying a SampleResult
+ setupTabPaneForSampleResult();
- if (log.isDebugEnabled()) {
- log.debug("valueChanged1 : sample result - " + res);
- }
+ if (log.isDebugEnabled()) {
+ log.debug("valueChanged1 : sample result - " + res);
+ }
- if (res != null) {
- // load time label
+ if (res != null) {
+ // load time label
- log.debug("valueChanged1 : load time - " + res.getTime());
- String sd=res.getSamplerData();
- if (sd != null) {
- String rh = res.getRequestHeaders();
- if (rh != null) {
- StringBuffer sb = new StringBuffer(sd.length()+rh.length()+20);
- sb.append(sd);
- sb.append("\nRequest Headers:\n");
- sb.append(rh);
- sd = sb.toString();
- }
- sampleDataField.setText(sd);
- }
-
- statsDoc.insertString(statsDoc.getLength(), "Thread Name: "+res.getThreadName()+"\n", null);
- String startTime = new Date(res.getStartTime()).toString();
- statsDoc.insertString(statsDoc.getLength(), "Sample Start: "+startTime+"\n", null);
- statsDoc.insertString(statsDoc.getLength(), "Load time: " + res.getTime() + "\n", null);
-
- String responseCode = res.getResponseCode();
- log.debug("valueChanged1 : response code - " + responseCode);
-
- int responseLevel = 0;
- if (responseCode != null) {
- try {
- responseLevel = Integer.parseInt(responseCode) / 100;
- } catch (NumberFormatException numberFormatException) {
- // no need to change the foreground color
+ log.debug("valueChanged1 : load time - " + res.getTime());
+ String sd = res.getSamplerData();
+ if (sd != null) {
+ String rh = res.getRequestHeaders();
+ if (rh != null) {
+ StringBuffer sb = new StringBuffer(sd.length() + rh.length()+20);
+ sb.append(sd);
+ sb.append("\nRequest Headers:\n");
+ sb.append(rh);
+ sd = sb.toString();
+ }
+ sampleDataField.setText(sd);
}
- }
- Style style = null;
- switch (responseLevel) {
- case 3:
- style = statsDoc.getStyle(STYLE_REDIRECT);
- break;
- case 4:
- style = statsDoc.getStyle(STYLE_CLIENT_ERROR);
- break;
- case 5:
- style = statsDoc.getStyle(STYLE_SERVER_ERROR);
- break;
- }
- statsDoc.insertString(statsDoc.getLength(), "HTTP response code: " + responseCode + "\n", style);
-
- // response message label
- String responseMsgStr = res.getResponseMessage();
+ statsDoc.insertString(statsDoc.getLength(), "Thread Name: " + res.getThreadName() + "\n", null);
+ String startTime = new Date(res.getStartTime()).toString();
+ statsDoc.insertString(statsDoc.getLength(), "Sample Start: " + startTime + "\n", null);
+ statsDoc.insertString(statsDoc.getLength(), "Load time: " + res.getTime() + "\n", null);
+
+ String responseCode = res.getResponseCode();
+ log.debug("valueChanged1 : response code - " + responseCode);
+
+ int responseLevel = 0;
+ if (responseCode != null) {
+ try {
+ responseLevel = Integer.parseInt(responseCode) / 100;
+ } catch (NumberFormatException numberFormatException) {
+ // no need to change the foreground color
+ }
+ }
- log.debug("valueChanged1 : response message - " + responseMsgStr);
- statsDoc
- .insertString(statsDoc.getLength(), "HTTP response message: " + responseMsgStr + "\n", null);
-
- statsDoc.insertString(statsDoc.getLength(), "\nHTTP response headers:\n" + res.getResponseHeaders()
- + "\n", null);
-
- // get the text response and image icon
- // to determine which is NOT null
- if ((SampleResult.TEXT).equals(res.getDataType())) // equals(null)
- // is OK
- {
- String response = getResponseAsString(res);
- if (command.equals(TEXT_COMMAND)) {
- showTextResponse(response);
- } else if (command.equals(HTML_COMMAND)) {
- showRenderedResponse(response, res);
- } else if (command.equals(XML_COMMAND)) {
- showRenderXMLResponse(response);
+ Style style = null;
+ switch (responseLevel) {
+ case 3:
+ style = statsDoc.getStyle(STYLE_REDIRECT);
+ break;
+ case 4:
+ style = statsDoc.getStyle(STYLE_CLIENT_ERROR);
+ break;
+ case 5:
+ style = statsDoc.getStyle(STYLE_SERVER_ERROR);
+ break;
}
- } else {
- byte[] responseBytes = res.getResponseData();
- if (responseBytes != null) {
- showImage(new ImageIcon(responseBytes));
+ statsDoc.insertString(statsDoc.getLength(), "HTTP response code: " + responseCode + "\n", style);
+
+ // response message label
+ String responseMsgStr = res.getResponseMessage();
+
+ log.debug("valueChanged1 : response message - " + responseMsgStr);
+ statsDoc.insertString(statsDoc.getLength(), "HTTP response message: " + responseMsgStr + "\n", null);
+
+ statsDoc.insertString(statsDoc.getLength(), "\nHTTP response headers:\n" + res.getResponseHeaders() + "\n", null);
+
+ // get the text response and image icon
+ // to determine which is NOT null
+ if ((SampleResult.TEXT).equals(res.getDataType())) // equals(null)
+ // is OK
+ {
+ String response = getResponseAsString(res);
+ if (command.equals(TEXT_COMMAND)) {
+ showTextResponse(response);
+ } else if (command.equals(HTML_COMMAND)) {
+ showRenderedResponse(response, res);
+ } else if (command.equals(XML_COMMAND)) {
+ showRenderXMLResponse(response);
+ }
+ } else {
+ byte[] responseBytes = res.getResponseData();
+ if (responseBytes != null) {
+ showImage(new ImageIcon(responseBytes));
+ }
}
}
}
+ else if(userObject instanceof AssertionResult) {
+ AssertionResult res = (AssertionResult) userObject;
+
+ // We are displaying an AssertionResult
+ setupTabPaneForAssertionResult();
+
+ if (log.isDebugEnabled()) {
+ log.debug("valueChanged1 : sample result - " + res);
+ }
+
+ if (res != null) {
+ statsDoc.insertString(statsDoc.getLength(),
+ "Assertion error: " + res.isError() + "\n",
+ null);
+ statsDoc.insertString(statsDoc.getLength(),
+ "Assertion failure: " + res.isFailure() + "\n",
+ null);
+ statsDoc.insertString(statsDoc.getLength(),
+ "Assertion failure message : " + res.getFailureMessage() + "\n",
+ null);
+ }
+ }
}
} catch (BadLocationException exc) {
log.error("Error setting statistics text", exc);
@@ -600,15 +645,42 @@
add(makeTitlePanel(), BorderLayout.NORTH);
Component leftSide = createLeftPanel();
- JTabbedPane rightSide = new JTabbedPane();
-
+ rightSide = new JTabbedPane();
+ // Add the common tab
rightSide.addTab(JMeterUtils.getResString("view_results_tab_sampler"), createResponseMetadataPanel()); // $NON-NLS-1$
- rightSide.addTab(JMeterUtils.getResString("view_results_tab_request"), createRequestPanel()); // $NON-NLS-1$
- rightSide.addTab(JMeterUtils.getResString("view_results_tab_response"), createResponseDataPanel()); // $NON-NLS-1$
+ // Create the panels for the other tabs
+ requestPane = createRequestPanel();
+ resultsPane = createResponseDataPanel();
JSplitPane mainSplit = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, leftSide, rightSide);
add(mainSplit, BorderLayout.CENTER);
}
+
+ private void setupTabPaneForSampleResult() {
+ // Set the title for the first tab
+ rightSide.setTitleAt(0, JMeterUtils.getResString("view_results_tab_sampler"));
+ // Add the other tabs if not present
+ if(rightSide.indexOfTab(JMeterUtils.getResString("view_results_tab_request")) < 0) { // $NON-NLS-1$
+ rightSide.addTab(JMeterUtils.getResString("view_results_tab_request"), requestPane); // $NON-NLS-1$
+ }
+ if(rightSide.indexOfTab(JMeterUtils.getResString("view_results_tab_response")) < 0) { // $NON-NLS-1$
+ rightSide.addTab(JMeterUtils.getResString("view_results_tab_response"), resultsPane); // $NON-NLS-1$
+ }
+ }
+
+ private void setupTabPaneForAssertionResult() {
+ // Set the title for the first tab
+ rightSide.setTitleAt(0, JMeterUtils.getResString("view_results_tab_assertion"));
+ // Remove the other tabs if present
+ int requestTabIndex = rightSide.indexOfTab(JMeterUtils.getResString("view_results_tab_request")); // $NON-NLS-1$
+ if(requestTabIndex >= 0) {
+ rightSide.removeTabAt(requestTabIndex);
+ }
+ int responseTabIndex = rightSide.indexOfTab(JMeterUtils.getResString("view_results_tab_response")); // $NON-NLS-1$
+ if(responseTabIndex >= 0) {
+ rightSide.removeTabAt(responseTabIndex);
+ }
+ }
private Component createLeftPanel() {
SampleResult rootSampleResult = new SampleResult();
@@ -651,7 +723,7 @@
return pane;
}
- private Component createRequestPanel() {
+ private JPanel createRequestPanel() {
sampleDataField = new JTextArea();
sampleDataField.setEditable(false);
sampleDataField.setLineWrap(true);
@@ -662,7 +734,7 @@
return pane;
}
- private Component createResponseDataPanel() {
+ private JPanel createResponseDataPanel() {
results = new JEditorPane();
results.setEditable(false);
@@ -680,7 +752,18 @@
public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded,
boolean leaf, int row, boolean focus) {
super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, focus);
- if (!((SampleResult) ((DefaultMutableTreeNode) value).getUserObject()).isSuccessful()) {
+ boolean failure = true;
+ Object userObject = ((DefaultMutableTreeNode) value).getUserObject();
+ if(userObject instanceof SampleResult) {
+ failure = !(((SampleResult) userObject).isSuccessful());
+ }
+ else if(userObject instanceof AssertionResult) {
+ AssertionResult assertion = (AssertionResult) userObject;
+ failure = assertion.isError() || assertion.isFailure();
+ }
+
+ // Set the status for the node
+ if (failure) {
this.setForeground(Color.red);
this.setIcon(imageFailure);
} else {
Modified: jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/assertions/AssertionResult.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/assertions/AssertionResult.java?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/assertions/AssertionResult.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/assertions/AssertionResult.java Sat Mar 17 10:36:09 2007
@@ -22,11 +22,13 @@
/**
* @author Michael Stover
- * @version $Revision$
*/
public class AssertionResult implements Serializable {
- public static final String RESPONSE_WAS_NULL = "Response was null";
+ public static final String RESPONSE_WAS_NULL = "Response was null"; // $NON-NLS-1$
+ /** Name of the assertion. */
+ private String name;
+
/** True if the assertion failed. */
private boolean failure;
@@ -39,11 +41,40 @@
/**
* Create a new Assertion Result. The result will indicate no failure or
* error.
+ * @deprecated - use the named constructor
*/
- public AssertionResult() {
+ AssertionResult() {
+ }
+
+ /**
+ * Create a new Assertion Result. The result will indicate no failure or
+ * error.
+ *
+ * @param name the name of the assertion
+ */
+ public AssertionResult(String name) {
+ setName(name);
+ }
+
+ /**
+ * Get the name of the assertion
+ *
+ * @return the name of the assertion
+ */
+ public String getName() {
+ return name;
}
/**
+ * Set the name of the assertion
+ *
+ * @param name the name of the assertion
+ */
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ /**
* Check if the assertion failed. If it failed, the failure message may give
* more details about the failure.
*
@@ -132,4 +163,7 @@
return this;
}
+ public String toString() {
+ return getName() != null ? getName() : super.toString();
+ }
}
Modified: jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/resources/messages.properties
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/resources/messages.properties?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/resources/messages.properties (original)
+++ jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/resources/messages.properties Sat Mar 17 10:36:09 2007
@@ -760,6 +760,7 @@
view_results_tab_request=Request
view_results_tab_response=Response data
view_results_tab_sampler=Sampler result
+view_results_tab_assertion=Assertion result
view_results_title=View Results
view_results_tree_title=View Results Tree
warning=Warning!
Modified: jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml?view=diff&rev=519376&r1=519375&r2=519376
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml (original)
+++ jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml Sat Mar 17 10:36:09 2007
@@ -120,6 +120,7 @@
<li>New -j option to easily change jmeter log file</li>
<li>Bug 41259 - Comment field added to all test elements</li>
<li>Add standard deviation to Summary Report</li>
+<li>Bug 41873 - Add name to AssertionResult and display AssertionResult in ViewResultsFullVisualizer</li>
</ul>
<h4>Non-functional improvements:</h4>
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org