在watir中处理模式对话框
问题描述:
我尝试使用watir制作一个测试脚本来进行自动化测试。我有一个问题,当我点击链接显示模式对话框,但它不能找到模式对话框中的元素(例如:Dropdownlist元素)。在watir中处理模式对话框
我已经试过这样,但它不工作。
browser.window(:标题=> “恼人的弹出”)用做 browser.button。(:ID => “关闭”)点击 结束
,我可以使用什么方法,使其当活动页面是modaldialog时,可以找到我们尝试测试输入的字段吗?请帮我..
许多谢谢..
答
你可以试试这个,如果你认为标题抛出其关闭,以将浏览器设置:否则
browser.window(:index => 1).use
,我建议以下:
modal = browser.modal_dialog
modal.button(:id => 'close').click
或
modal.link(:text => 'close').click
将模态设置为modal
后,您可以调用通常在浏览器上调用的任何方法。
我已经试过你的回答,但是我得到了这个错误信息,说C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-4.0.1/lib/watir-classic/elemen t.rb:328:在'assert_exists':无法找到元素,使用{:TAG_NAME => [ “SELEC 吨”],:ID => “ctl00_m_g_8f040f77_8a11_4762_a6b0_500e731fb4ed_ff19_1_ctl00_DropDownC hoice”}(的Watir ::异常:: UnknownObjectException): ID => “ctl00_m_g_8f040f77_8a11_4762_a6b0_500e731fb4ed_ff19_1_ctl00_DropDownC hoice”}(的Watir ::例外:: UnknownObjectException) – user2109 2014-11-24 06:02:03
可能有几件事情,会导致错误。该错误源于'watir'无法找到您的元素。这可能是因为你需要在元素上调用'.when_present'来允许它加载,或者元素在一个框架内,你需要指定它。你可能会指定错误的元素类型('button' vs'link')。可能有任何数量的问题,但没有看到代码很难确定你的确切情况。 – JMac 2014-11-24 17:44:37