Я использую простой вызов browser.goto (url) на наши страницы отчетности Microsoft SQL. Он делает «goto» на первом url, но затем просто сидит там. В настоящее время я запускаю его через командную строку.Ruby/Watir застрял после использования «goto»
Если я Ctrl + C, чтобы отменить его, вывод говорит:
C:/Ruby/lib/ruby/gems/1.8/gems/watir-1.6.5/lib/watir/ie-class.rb:506:in `wait': Interrupt
from C:/Ruby/lib/ruby/gems/1.8/gems/watir-1.6.5/lib/watir/ie-class.rb:355:in `goto'
from screen.rb:37:in `SqlReports'
from screen.rb:35:in `each'
from screen.rb:35:in `SqlReports'
from screen.rb:45
Итак, я предполагаю, что-то на странице вызывает проблемы Waitr. Я искал фрагменты, но не возвращался ни с чем. Все, что я хочу, это загрузить страницу, сидеть там в течение определенного времени, а затем перейти к следующему URL-адресу (это для телевизора), ничего сложного.
Так что я попытался размещения «начать/спасения», то есть:
begin
$browser.goto(url)
rescue
end
не повезло, он просто сидит на первой ссылке. И я пробовал обертывание, используя класс Timeout, то есть:
begin
Timeout::timeout(30) do
$browser.goto(url)
end
rescue
end
По-прежнему не повезло, оно падает. Кто-нибудь знает исправление или как переопределить неявное «ожидание», которое делает Watir при выполнении goto?
страницы, открывается без каких-либо проблем, когда вы делаете это вручную? –
Я бы порекомендовал разместить это также на http://groups.google.com/group/watir-general/ –
Yep работает отлично вручную. Предоставляя загрузку страницы, затем выполняется какой-то запрос внутренней страницы для сбора данных отчета. Очевидно, что Watir знает, загрузилась ли страница. Ниже приведенное предложение щелчка выглядит как хорошая, если хакерская работа. – Bealer