gpt4 book ai didi

rspec - Rspec have_css、have_selector 和 have_field 有什么区别?

转载 作者:行者123 更新时间:2023-12-04 12:19:35 24 4
gpt4 key购买 nike

我有这个 html.erb Rails 表单:

<h1 class=new_vendor_header>New Vendor Form</h1>

<%= form_for(@vendor) do |f| %>
<%= f.label :name %>
<%= f.text_field :name, placeholder: "ex: Jeff" %>
<%= f.submit "Submit" %>
<% end %>

这通过:
expect(page).to have_selector('input[placeholder="ex: Jeff"]')

但这不会:
expect(page).to have_field('input[placeholder="ex: Jeff"]')

这不会:
expect(page).to have_selector('input[placeholder="ex: Jeff"]')

选择器指的是 HTML 选择器,所以它指的是 html 元素?
have_css 我以为是在寻找 CSS,但它似乎做得更多。这是备忘单中的示例:
response.body.should have_css("input", :count => 3) #True if there are 3 input tags in response

这似乎在寻找输入 HTML 选择器。

那么有什么区别,为什么其他两个在我的例子中失败了?

最佳答案

来自文档 here have_css将调用 has_selectorcss作为参数,如 has_selector可以处理css , xpath , ...

def have_css(css, options={})
HaveSelector.new(:css, css, options)
end

关于rspec - Rspec have_css、have_selector 和 have_field 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31562129/

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