gpt4 book ai didi

ruby-on-rails - 尝试在 Rails 中设置 rspec 测试时获取未初始化的常量 Faker::String

转载 作者:太空宇宙 更新时间:2023-11-03 17:43:28 24 4
gpt4 key购买 nike

我有一个 UrlContent 模型,我正在尝试为 Json 的索引页面的 API 调用编写一个 rspec 测试。但是,每当我运行 rspec 时,它都会给我这个错误:

 Failure/Error: content { Faker::String }

NameError:
uninitialized constant Faker::String

当该属性的 faker 似乎已经正确配置时,为什么会出现该错误?

这让我感到困惑,因为在我的 spec/factories/url_content.rb 文件中我有:

需要'伪造者'

FactoryBot.define do
factory :url_content do
content { Faker::String }
end
end

我设置的特定 rspec 测试是:

require 'rails_helper'
require 'faker'

RSpec.describe "UrlContents API", type: :request do

before { FactoryBot.create_list(:url_content, 3) }

describe 'GET /url_contents' do
before { get '/url_contents'}

it 'returns a status code of 200' do
expect(response).to have_http_status(200)
end

it 'returns an array of content in JSON' do
json = JSON.parse(response.body, symbolize_names: true)

end

end

end

最佳答案

Faker::String 已于 9 天前在 December 24 添加到 faker gem最新版本的 faker(1.8.7) 发布于 December 22 .您必须使用来自 Github 的版本才能使用 Faker::String。在您的 Gemfile 中指定 git 存储库,如下所示:

gem 'faker', git: 'https://github.com/stympy/faker'

关于ruby-on-rails - 尝试在 Rails 中设置 rspec 测试时获取未初始化的常量 Faker::String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48068549/

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