Mnementh
Mnementh

Reputation: 51311

How to test a webapplication?

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

Answers (5)

Željko Filipin
Željko Filipin

Reputation: 57262

I test web applications all day, and I use Watir.

Upvotes: 0

Terry Lacy
Terry Lacy

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

Kieveli
Kieveli

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

Nerdfest
Nerdfest

Reputation: 1685

Have a look at Selenium. It's a very nice tool, and should at least point you in the right direction for the integrated tests. Beyond that, use unit tests of your servlets and other support classes using JUnit.

Upvotes: 6

agnul
agnul

Reputation: 13048

Same problem. On my TODO list I have jetty and httpunit.

Also, if you're using some kind of framework (Spring, Struts, etc.) you can often test the pieces separatedly without the need to deploy the whole stuff.

Upvotes: 1

Related Questions