我一直在尝试使用Ruby和Watir webdriver进行测试自动化......我正在遇到一个奇怪的问题,我打开一个新窗口,但当我采取行动时,它会执行我的所有操作后面父窗口
这是我如何设置它(如果有所不同,使用Firefox):
# opens new window
b.button(:text => 'Upload').click
b.window(:url => 'urlname'). use do
# action performed on the new window
b.select_list(:id => 'selector').select 'Foo'
end
注意:它正确地对存在的选择列表执行操作,但它在后面主浏览器中执行操作。
是否有一些特定的东西我需要写入以便它留在主窗口前面?
答案 0 :(得分:1)
这应该有效:
b.window(:url => 'urlname').focus
将该行放在.use
行之后,您应该看到调用前景的新窗口。您实际上可能会发现您根本不需要.use
行(或do/end
)。