Недавно столкнулся с проблемой, если веб-приложение использует AJAX, то Canoo Webtest может не "увидеть" обновленную аджаксом HTML страницу, а будет пытаться работать с изначальным HTML..
Решение: по-сути, нужно просто добавить паузу в скрипт, чтобы Webtest подгрузил страницц до конца. Но чтобы тест не тормозил из-за таких пауз, лучше сделать ее динамической, давая тесту, например, 10 попыток по 1 секунде. Делаеться это так:
1) Определяем новый макрос:
<macrodef name="LoadAjax">
<element name="value" implicit="yes"/>
<sequential>
<retry maxcount="10">
<sleep seconds="1"/>
<value/>
</retry>
</sequential>
</macrodef>
2) Используем его в тех местах, где используеться AJAX, как в этом примере:
<clickLink description="your link on the page that requests Ajax page update" ...../>
<loadAjax>
..... строка 1 продолжения теста, которая будет выполнена после "догрузки" страницы
</loadAjax>
.... остальное продолжение теста ...