2014-11-24 34 views
0

我尝试使用watir制作一个测试脚本来进行自动化测试。我有一个问题,当我点击链接显示模式对话框,但它不能找到模式对话框中的元素(例如:Dropdownlist元素)。在watir中处理模式对话框

我已经试过这样,但它不工作。

browser.window(:标题=> “恼人的弹出”)用做 browser.button。(:ID => “关闭”)点击 结束

,我可以使用什么方法,使其当活动页面是modaldialog时,可以找到我们尝试测试输入的字段吗?请帮我..

许多谢谢..

回答

0

你可以试试这个,如果你认为标题抛出其关闭,以将浏览器设置:否则

browser.window(:index => 1).use

,我建议以下:

modal = browser.modal_dialog 
modal.button(:id => 'close').click 

modal.link(:text => 'close').click

将模态设置为modal后,您可以调用通常在浏览器上调用的任何方法。

+0

我已经试过你的回答,但是我得到了这个错误信息,说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

+1

可能有几件事情,会导致错误。该错误源于'watir'无法找到您的元素。这可能是因为你需要在元素上调用'.when_present'来允许它加载,或者元素在一个框架内,你需要指定它。你可能会指定错误的元素类型('button' vs'link')。可能有任何数量的问题,但没有看到代码很难确定你的确切情况。 – JMac 2014-11-24 17:44:37