What's the best, crossplatform way to perform blackbox tests on AJAX web applications?

Ideally, the solution should have the following attributes:

  • Able to integrate into a continuous integration build loop
  • Cross platform so I you can run it on Windows laptops and Linux continuous integration servers
  • Easy way to script the interactions
  • Free-as-in-freedom so you can adapt it into your tool chain if necessary

I've looked into HttpUnit but I'm not conviced it can handle AJAX-heavy websites.

+3  A: 

Selenium might be what you're looking for:

It allows you to script actions and evaluate the results. It's open-source (Apache 2.0), cross platform, and has nice tools.

+2  A: 

I have used Selenium for exactly this task, but found it to be brittle.

Check out this talk by two Googlers: Does my button look big in this? Building testable AJAX applications

They isolate the testable javascript (non DOM-interaction) and test that using the Rhino javascript engine.