Reputation: 51311
If I have java-webapp (servlets), what is the best way to create automated tests for this application?
Should I start a server? But that is very fragile. Should I call the servlets directly? But how can this be done? I don't know how to create a ServletResponse/ServletRequest.
And what is the best way to test the functionality of the webapp? Should I check the generated HTML-text? But if I change the templates (typo) the test is broken.
What are your best practices and experiences with testing webapps?
Upvotes: 8
Views: 582
Reputation: 31
I use htmlunit almost exclusively and have no complaints. Once we built up a decent set of test utility methods, it was pretty easy to test even complex web applications. It works a treat with javascript, too. We've even used it without problems with AJAX applications.
Upvotes: 1
Reputation: 11075
Look at Selenium for webapp testing, and Abbott for java applet testing. We've managed to mix the two so that Selenium calls the Abbott test via javascript. They're both tools that allow you to record actions as you view the page, and then autogenerate test code. You can modify and tweak it once you've recorded the basic test. You get beautiful tests with a minimal amount of effort. They'll name a drink after you.
Upvotes: 2