У меня тоже была эта проблема, это связано с перенаправлением, а команда waitFor * не совсем хорошо работает с перенаправлениями.Он никогда не будет ждать 2 страницы (это то, что нам нужно здесь), но если вы поместите 2 ожидания подряд (что в теории является правильным решением), часто 2-я будет зависать.Похоже, что это какое-то состояние гонки, так как оно непредсказуемо, хотя 90% времени кажется, что оно зависает, хотя
Так что я просто вращался в цикле, пока не увидел какой-то сигнал на странице после перенаправлениячто я ожидал увидеть.Вы также можете получить сигнал, который вы ищете для фактического теста.Мое решение, короткий блок Perl, который, я уверен, вы можете перевести на C #:
$sel->open('/some/page/that/will/redirect/us');
$sel->wait_for_page_to_load("30000"); #wait for the redirect to hit
do {
$sel->pause(50); #now spin while we're in no-mans land
#until you spot what you need:
last if $sel->is_text_present('This is the Real Home Page');
} while( 1 );
#carry on.... redirect is completed and page is loaded
Приятным бонусом этого является то, что журнал истории команд подсчитывает миллисекунды при "Та же команда (99 мс): xyz ", как он вращается, давая вам знать, что все живо и здорово, в то время как перенаправление идет своим чередом.