当我调用方法时,如何使用页面对象 gem 导航到页面?
class SidePage
include PageObject
link(:create, text: /Create/)
def navigate_to(link)
if link == 'Test'
create
else
navigate_to "http://test.jprr.w3test/#{link}" # --> here i need to navigate on else condition.
end
end
我需要根据 #{link} 文本在 else 条件下动态导航到给定的链接。
你不能在#navigate_to
内调用#navigate_to
,因为它会进入无限循环。有几种方法可以解决这个问题。
最简单的方法是以不同的方式命名方法。部分好处是很明显,此页面的#navigate_to
与其他页面不同。
def navigate_or_click(link)
if link == 'Test'
create
else
navigate_to "http://test.jprr.w3test/#{link}"
end
end
如果你想坚持使用#navigate_to
方法名称,你只需要调用适当的浏览器方法:
def navigate_or_click(link)
if link == 'Test'
create
else
browser.goto "http://test.jprr.w3test/#{link}" # or platform.navigate_to
end
end