Joh*_*Dow 2 ruby testing rspec ruby-on-rails capybara
我正在使用Rspec和Capybara.
如何编写单击图像的步骤?我一直无法找到让Capybara将图像视为链接的好方法.
谢谢
html的例子
<a title="inGroups" href="/de/users/index/roles-list/serviceID/1112/inGroup/1">
<img border="0" alt="inGroups" src="/themes/system/images/icon/16/role_activate.png">
<a title="inGroups" href="/de/users/index/roles-list/serviceID/1114/inGroup/1">
<img border="0" alt="inGroups" src="/themes/system/images/icon/16/role_activate.png">
<a title="notInGroups" href="/de/users/index/roles-list/serviceID/1112/inGroup/0">
<img border="0" alt="notInGroups" src="/themes/system/images/icon/16/role_deactivate.png">
<a title="notInGroups" href="/de/users/index/roles-list/serviceID/1114/inGroup/0">
<img border="0" alt="notInGroups" src="/themes/system/images/icon/16/role_deactivate.png">
Run Code Online (Sandbox Code Playgroud)
有什么建议?
点击普通链接应该没有任何不同.我不知道如何在您的示例中选择单个链接,但链接上没有任何唯一可识别的属性.
如果您无法更改标记,则可能需要使用XPath实际href
按URL 选择元素,例如
my_link = find(:xpath, "//a[contains(@href,'1114/inGroup/1')]")
Run Code Online (Sandbox Code Playgroud)
会给你第一个链接,然后
my_link.click
Run Code Online (Sandbox Code Playgroud)
应该正常点击它.
编辑:只是为了澄清,重要的是你选择a
元素并单击它,而不是img
.