diff --git a/tests/org.eclipse.jst.jsp.core.tests/src/org/eclipse/jst/jsp/core/tests/validation/JSPActionValidatorTest.java b/tests/org.eclipse.jst.jsp.core.tests/src/org/eclipse/jst/jsp/core/tests/validation/JSPActionValidatorTest.java
index 9520642..e22c507 100644
--- a/tests/org.eclipse.jst.jsp.core.tests/src/org/eclipse/jst/jsp/core/tests/validation/JSPActionValidatorTest.java
+++ b/tests/org.eclipse.jst.jsp.core.tests/src/org/eclipse/jst/jsp/core/tests/validation/JSPActionValidatorTest.java
@@ -126,8 +126,15 @@
 
 		helper.setURI(filePath);
 		validator.validate(helper, reporter);
+		
+		StringBuffer error = new StringBuffer("jsp action validator found errors when it should not have");
+		List messages = reporter.getMessages();
+		for (int i = 0; i < messages.size(); i++) {
+			error.append('\n');
+			error.append(((IMessage) messages.get(i)).getText());
+		}
 
-		assertTrue("jsp action validator found errors when it should not have", reporter.getMessages().isEmpty());
+		assertTrue(error.toString(), reporter.getMessages().isEmpty());
 	}
 
 	/**
