Ajax-тестирование с использованием htmlunit - PullRequest
1 голос
/ 17 февраля 2011

Я использую HtmlUnit для автоматического тестирования моего веб-приложения, которое не работает должным образом из-за асинхронного характера ajax. Я использовал NicelyResynchronizingAjaxController, но, похоже, он не работает, потому что мое приложение использует несколько потоков для извлечения данных.

Есть ли альтернатива? Заранее спасибо.

1 Ответ

2 голосов
/ 23 января 2012

Попробуйте позвонить.

webClient.waitForBackgroundJavaScript(10000);

или

webClient.waitForBackgroundJavaScriptStartingBefore(10000);

до доступа к полям, измененным с помощью ajax.

Если это не помогло, попробуйте явно дождаться выполнения условия, которое ожидается при запуске JavaScript

for (int i = 0; i < 20; i++) {
        if (condition_to_happen_after_js_execution) {
            break;
        }
        synchronized (page) {
            page.wait(500);
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...