watir 3模态窗口访问

时间:2012-05-04 02:27:51

标签: watir modal-window

我尝试了watir wiki示例来访问模态窗口。但是得到了Argument错误。我正在尝试使用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 个答案:

答案 0 :(得分:2)

您收到的错误是说您提供的参数多于该方法实际采用的参数。

我从未打电话使用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中的任何参数。