What kind of tools or techniques exist for this purpose?
They provide a headless-browser mechanism that allows you to write tests by navigating HTML pages, filling in forms, pressing buttons etc.
Having said that, I try to put as little functionality in my JSPs (or similar) as possible, and focus my testing on the underlying business logic objects and their creation of beans for JSP display. But final testing of the JSPs is definitely a good idea.
Strip it out? ;)
In Container testing (using say Cactus) or compile the JSPs to servlets and then mock in the response/reply objects.
JUnit In Action has a section of unit testing JSPs & server side code. I would highly recommend the book.
Other than display logic, which is notoriously hard to test, my advice would be don't put logic in JSPs. Instead move it into POJOs and it's problem solved.
Try JspTest. Use it for testing the view logic in a JSP page.