Я работаю над всплывающими окнами, то есть обрабатываю окна базовой аутентификации. Пожалуйста, найдите приведенный ниже код, который я пытаюсь запустить с помощью теста
{
require 'watir/ie'
require 'win32ole'
require 'watir/WindowHelper'
ie=Watir::IE.new
ie.goto "http://www.google.com"
helper = WindowHelper.new
helper.logon('Connect to proxy1','Mohammed','WE8SR') # where title=Connect to Proxy1 is the auth window,User name= Mohammed and Password=WE8SR.
puts x.inspect
ie.close
}
Что происходит, если имя пользователя и пароль никогда не вводятся вОкно аутентификации и отображается Timedout Error
.
ruby google_search.rb
C:/Ruby192/lib/ruby/gems/1.9.1/gems/watir-1.7.1/lib/watir/ie-class.rb:494:in sleep': execution expired (Timeout::Error)
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/watir-1.7.1/lib/watir/ie-class.rb:494:in block in wait'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/watir-1.7.1/lib/watir/ie-class.rb:491:in wait'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/watir-1.7.1/lib/watir/ie-class.rb:357:in goto'
from google_search.rb:96:in `<main>'
>Exit code: 1
Это проблема с версией Ruby 1.9.2 , которую я использую?
Я изменилкод для метода logon
в WindowHelper.rb
и попытался это сделать.
// Actual method in the "WindowHelper.rb" file
{
def logon(title,name = 'john doe',password = 'john doe')
@autoit.WinWait title, ""
@autoit.Send name
@autoit.Send "{TAB}"
@autoit.Send password
@autoit.Send "{ENTER}"
end
}
код, который я модифицировал и иногда находил работающим
{
def logon(title,name,password)
@autoit.WinWait title, ""
@autoit.Send name
@autoit.Send "{TAB}"
@autoit.Send password
@autoit.Send "{ENTER}"
end
}
Я пытался найти решениев разных блогах.Подскажите, если я что-то упустил.