gpt4 book ai didi

Capybara,通过 ID 和 Class 检查 HTML 元素

转载 作者:行者123 更新时间:2023-12-03 13:22:13 25 4
gpt4 key购买 nike

初学者的两个问题。

Q1- 是否可以通过 ID 和类断言 HTML 节点的存在?
例如,查看以下元素是否存在:

<div class="drawer" id="first"....>

我看到你可以使用类似的东西:
 page.should have_css('div.drawer')
page.should have_css('div#first')

但是我们可以以某种方式查询这两个参数的存在吗,我尝试了以下方法但没有奏效:
page.should have_selector("div", :class => "drawer", :id => "first")

Q2-是否可以在“内部” capybara 方法中添加 2 个选择器,即,我已经看到您可以通过以下方式限制范围:
within("//div[@id='first']") do

但是我们可以通过以某种方式添加 id='first' 和 class='drawer' 来过滤该 DIV 吗?

非常感谢!

最佳答案

您可以组合选择器。

对于您的第一个问题,以下检查 id 为“first”且类为“drawer”的 div:

page.should have_css('div#first.drawer')

对于您的第二个问题, within block 可以使用与上面相同的 css-selector:
within('div#first.drawer') do

或者如果你真的更喜欢 xpath,你可以这样做:
within("//div[@id='first' and @class='drawer']") do

CSS 选择器的一个很好的引用: http://www.w3.org/TR/CSS2/selector.html

关于Capybara,通过 ID 和 Class 检查 HTML 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13811763/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com