我正在使用黄瓜和水豚来测试具有以下大纲的网页。
<span> Title 1 </span>
<span> Some text </span>
<div> link Y </div>
<span> Title 2 </span>
<span> Some text </span>
<div> link Y </div>
<span> Title 3 </span>
<span> Some text </span>
<div> link Y </div>
我想单击标题 2 下方的链接。但是由于所有链接都具有相同的名称和相同的 css,除了异步 ajax 调用,我可以在查找器中以某种方式使用它吗?我还想设计一个辅助方法来获取 Title 并找到它的链接,这样一个精确的 xpath 就不起作用了。
到目前为止我已经尝试过:
within(find("span", :text => title)) do
within(find(:xpath, "../div")) do
click_link 'publish'
end
end
如您所知,xpaths 不是我的强项。
我还尝试通过本机获取 capybara:node:element 的路径:find("span", :text => title).path
希望使用它来提取标题跨度的子 nbr 以获取 div find(:xpath, "/div[N]"
)。但是.path
给我一个错误,告诉我我的 webdriver 不支持它,我正在使用 selenium webdriver,因为页面包含异步 ajax 调用。
我也尝试过查看.native
selenium webdriver 元素,但没有找到任何帮助。
请帮忙!另外在你告诉我之前,不,我不能以任何方式更改网页。