gpt4 book ai didi

rspec - capybara 的禁用复选框

转载 作者:行者123 更新时间:2023-12-02 17:12:52 25 4
gpt4 key购买 nike

如何使用 Capybara 验证复选框是否被禁用?

我尝试了几个选项,但似乎没有任何效果。上次尝试是

expect(page).to have_field("input[type='checkbox'][value='agreement']", disabled: true)

一如既往,谢谢。

最佳答案

如记录 - http://www.rubydoc.info/gems/capybara/Capybara/Node/Matchers#has_field%3F-instance_method - have_field 匹配器接受要检查的字段的标签、名称或 ID,它不接受 CSS 选择器。因此,您要么需要将预期元素的名称、ID 或相关标签文本传递给匹配器。对您在选择器中检查的所有其他内容执行此操作类似于。

expect(page).to have_field('id_of_checkbox', type: 'checkbox', with: 'agreement', disabled: true)

如果您使用的是最近的 capybara ,如果其他选项限制为唯一元素,您也可以跳过 id/name/label 文本。

expect(page).to have_field(type: 'checkbox', with: 'agreement', disabled: true)

如果你想用 CSS 选择器代替,那么你可以使用 :disabled CSS3 伪选择器和 have_css 匹配器

expect(page).to have_css("input[type='checkbox'][value='agreement']:disabled")

关于rspec - capybara 的禁用复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48162007/

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