Модальное диалоговое окно с Selenium

Поэтому я пытаюсь перейти на страницу в IE9 с помощью Selenium, которая при загрузке страницы сообщает об ошибке сертификата. Используя AutoIT, я могу заставить его щелкнуть в браузере, а затем дважды нажать TAB, затем нажать Enter, без проблем. Однако, когда он продолжается, он выдает «Ошибка модального диалога». Вот метод, который должен обрабатывать ошибки IE Security Warning:

# Handle IE Security Warning errors.
class  Selenium::WebDriver::Navigation
  def to(url)
  @bridge.get url
  if @bridge.getTitle.match(/Certificate Error.*/)
      Thread.new do
        sleep 0.75
        security_warning = 'Security Warning'
        if @auto_it.WinActive(security_warning)
             @auto_it.ControlClick(security_warning, "Yes", '[CLASS:Button; INSTANCE:2]' )
      end
       auto_it = WIN32OLE.new("AutoItX3.Control")
       auto_it.WinWait('[CLASS:IEFrame]','', 90)
       x = auto_it.WinGetPosX('[CLASS:IEFrame]') 
       y = auto_it.WinGetPosY('[CLASS:IEFrame]')
       auto_it.MouseClick("left", x + 100, y + 200, 1, 0) 
       auto_it.Send "{TAB 2}{ENTER}"
       sleep 0.25
       wait.until { @bridge.executeScript("return document.readyState;") == "complete" }
    end
  end
end

Лучшее, что я могу сделать здесь - это вызов «sleep 0.25»:

auto_it.Send "{TAB}{ENTER}"

(За исключением того, что {ENTER} ничего не делает, он просто висит там до истечения времени ожидания теста)

Мне нужно знать, как заставить Selenium взаимодействовать с всплывающим диалоговым окном. Я знаю, что Selenium не очень хорошо с ними справляется (вот почему используется AutoIT). Есть идеи?

Постскриптум Это не мой код, этот метод был создан моим коллегой

Ответы на вопрос(1)

Ваш ответ на вопрос