我尝试了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
访问模态窗口由于
答案 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中的任何参数。