如何在水豚中忽略辅助功能隐藏文本

问题描述 投票:0回答:1
<a href="/link/12345" class="dont-print report-link">
                        Explore 
<span class="govuk-visually-hidden">report data</span>
in detail
</a>

我似乎无法使用click_link("Explore in detail")单击链接,因为存在隐藏的可访问性文本。如何点击使用文字?不太热衷于使用href单击。

capybara
1个回答
0
投票
传递到Capybara选择器的

locators(主要的非关键字参数)与所定位元素的多个属性匹配。对于link选择器,它是ID,标题,文本内容,后代imgs alt,aria标签(如果已配置)和测试ID(如果已配置)。出于性能原因,不考虑匹配对象的可见性,仅检查返回的元素的可见性(默认配置)。如果您需要通过可见的包含文本查找链接,则可以通过text选项,该选项确实考虑了可见性。

click_link(text: "Explore in detail")

这比基于定位器的搜索效率低很多,因此,如果您有很多链接,则值得将其范围限定在页面的特定部分。另一个可能的选择是根据类单击

click_link(class: 'report-link')

click_link(class: ['dont-print', 'report-link'])
© www.soinside.com 2019 - 2024. All rights reserved.