gpt4 book ai didi

ruby-on-rails - 需要检查文本在页面上出现一次且仅出现一次

转载 作者:行者123 更新时间:2023-12-05 05:26:43 28 4
gpt4 key购买 nike

我正在使用 RSpec/Capybara 进行 Rails 应用程序测试,我需要检查 View 中的一个元素是否只出现一次。

例如,在下面的代码中,我需要确保 task.title 在页面中只出现一次。如图所示,我可以检查它是否存在,但我找不到如何检查它是否只出现一次。

task = FactoryGirl.create(:task)
login_as(task.user, :scope => :user)
visit tasks_index_url
expect(page).to have_content task.title

最佳答案

Capybara 的 page.has_content?(page.has_text? 的别名)采用可选的文本出现次数。所以你可以改变你的期望

expect(page).to have_content(task.title, count: 1)

has_text?/has_content? 还有其他几个选项,这些选项没有出现在 the rdoc 中。但记录在 the source 中(从当前版本的第 234 行开始:):

# @option options [Integer] :count (nil) Number of times the text should occur
# @option options [Integer] :minimum (nil) Minimum number of times the text should occur
# @option options [Integer] :maximum (nil) Maximum number of times the text should occur
# @option options [Range] :between (nil) Range of times that should contain number of times text occurs

关于ruby-on-rails - 需要检查文本在页面上出现一次且仅出现一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24393096/

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