watir 3 модальное окно доступа

Я пробовал пример watir wiki для доступа к модальному окну. Но получал ошибку Аргумента. Я пытаюсь с Watir 3 версии.

    puts b.modal_dialog(:title, "showModalDialog Method Sample Target Page").exists?
    puts b.modal_dialog(:title, "showModalDialog Method Sample Target Page").title
    b.modal_dialog(:title, "showModalDialog Method Sample Target Page").close
    b = Watir::Browser.new()
    b.goto("http://samples.msdn.microsoft.com/workshop/samples/author/dhtml/refs/showModalDialog.htm")
    b.button(:value,"Push To Create").click_no_wait

Сообщение об ошибке

    C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.0.0/lib/watir-classic/contai
    ner.rb:60:in `modal_dialog': wrong number of arguments (2 for 0) (ArgumentError) from C:/webtest/popup.rb:29:in `<main>'

Может ли кто-нибудь помочь, как получить доступ к модальному окну с помощью Watir 3

Спасибо

1 ответ

Решение

Ошибка, которую вы получаете, говорит о том, что вы предоставляете больше аргументов, чем фактически берется методом.

У меня никогда не было необходимости использовать реальные модальные методы в Watir, но после быстрого эксперимента со страницей, которую вы предоставили, я смог взаимодействовать с модальным с помощью следующего:

b.goto("http://samples.msdn.microsoft.com/workshop/samples/author/dhtml/refs/showModalDialog.htm")
b.button(:id => "dCommand").click_no_wait
puts b.modal_dialog.text

В приведенном выше примере я распечатал текст модального окна, но, вероятно, можно заменить любую обычную команду Watir.

Может показаться, что требование к аргументу, указывающему, с каким модом взаимодействовать, было удалено в Watir 3.0 или более ранней версии (предположительно, потому что вы можете взаимодействовать только с одним?). Я перешел на Watir-webdriver, так как я в основном тестирую в Firefox, поэтому я не уверен, когда это могло измениться, но похоже, что он не принимает никаких аргументов в 3.0.

Другие вопросы по тегам