索引在 WindowCollection 上不可靠
indexing not reliable on WindowCollection
我已经升级到最近的 WATIR(7.0.0.beta5),当我执行以下行时
@browser.windows.last.use
我遇到了这个错误
"indexing not reliable on WindowCollection"
这在我之前的 WATIR 版本 (6.19.1) 中运行良好。有什么问题?
还有一个问题,貌似能力变化比较多。我现在必须分别设置 page_load_timeout
和 read_timeout
吗?我也读过 open_timeout
,我不知道它是干什么用的,有人能帮我理解它是什么吗?
不保证驱动程序总是 return windows 以相同的顺序,因此已决定弃用根据它们的索引(即在数组中的位置)访问 windows windows)。你有几个选择。
与 2 windows
合作
如果您只使用 2 windows(可能是大多数情况),建议使用 2 种新方法:
# Switch to the second window that was opened
browser.switch_window
# Return to the first window
browser.original_window
与 3+ 一起工作 windows
最好的方法是根据已知属性找到您想要的window:
# By url
browser.window(url: /closeable\.html/).use
# By title
browser.window(title: 'closeable window').use
# By an element in the window (new)
browser.window(element: browser.a(id: 'close')).use
(不推荐)按索引
不建议这样做,但是如果你坚持使用索引,你可以通过将 WindowsCollection 强制为 Array 来作弊:
browser.windows.each.to_a.last
我已经升级到最近的 WATIR(7.0.0.beta5),当我执行以下行时
@browser.windows.last.use
我遇到了这个错误
"indexing not reliable on WindowCollection"
这在我之前的 WATIR 版本 (6.19.1) 中运行良好。有什么问题?
还有一个问题,貌似能力变化比较多。我现在必须分别设置 page_load_timeout
和 read_timeout
吗?我也读过 open_timeout
,我不知道它是干什么用的,有人能帮我理解它是什么吗?
不保证驱动程序总是 return windows 以相同的顺序,因此已决定弃用根据它们的索引(即在数组中的位置)访问 windows windows)。你有几个选择。
与 2 windows
合作如果您只使用 2 windows(可能是大多数情况),建议使用 2 种新方法:
# Switch to the second window that was opened
browser.switch_window
# Return to the first window
browser.original_window
与 3+ 一起工作 windows
最好的方法是根据已知属性找到您想要的window:
# By url
browser.window(url: /closeable\.html/).use
# By title
browser.window(title: 'closeable window').use
# By an element in the window (new)
browser.window(element: browser.a(id: 'close')).use
(不推荐)按索引
不建议这样做,但是如果你坚持使用索引,你可以通过将 WindowsCollection 强制为 Array 来作弊:
browser.windows.each.to_a.last