public void setUp() throws Exception {
webClient = new WebClient();
// NicelyResynchronizingAjaxController changes XHR calls from asynchronous
// to synchronous, saving the test from needing to wait or sleep for XHR
// completion.
webClient.setAjaxController(new NicelyResynchronizingAjaxController());
webClient.waitForBackgroundJavaScript(120000); // Closure can take a long time...
webClient.setHTMLParserListener(HTMLParserListener.LOG_REPORTER);
webClient.setTimeout(120000); // Closure can take a long time...
alertHandler = new CollectingAlertHandler();