关闭浏览器后,如何将现有页面对象与新浏览器重新关联

时间:2014-11-04 01:33:51

标签: page-object-gem

有时浏览器卡住并且没有响应(据报道这是Firefox上刷新操作的已知问题) 在这些情况下,我仍然可以通过执行browser.close并重新打开新浏览器来继续。 问题是当前页面对象仍指向旧浏览器。有没有办法在不破坏和重新创建整个页面对象的情况下重新创建现有页面对象的浏览器?

1 个答案:

答案 0 :(得分:0)

底层浏览器存储在页面对象的@browser变量中。此变量通常由initialize_browser方法设置。从理论上讲,你可以称之为:

# An existing page object instance
page = MyPage.new(browser)

# A new browser
browser2 = Watir::Browser.new

# Change the browser in the page object instance
page.initialize_browser(browser2)

除非您在页面对象实例中设置其他实例变量,否则我认为这不仅仅是重新初始化页面对象实例(即执行另一个page = MyPage.new(browser2))。