我刚刚开始玩Capycabra,执行完第一次Capy测试后,它失败并出现错误
Failure/Error: expect(page).to have_content I18n.t("form_input.item.item_s")
NameError:
uninitialized constant I18n
我的考试
#spec/features/test_spec.rb
require 'spec_helper'
describe 'accessibility of webpage' do
it 'should access web page' do
visit '/item/new'
expect(page).to have_content I18n.t("form_input.item.item_s")
end
end
我尝试明确包含I18n模块,如require 'i18n'
,但测试失败,结果为
Failure/Error: expect(page).to have_content I18n.t("form_input.item.item_s")
expected #has_content?("translation missing: en.form_input.item.item_s") to return true, got false
我的spec_helper.rb文件
require 'capybara'
require 'capybara/dsl'
require 'capybara/poltergeist'
Capybara.javascript_driver = :poltergeist
RSpec.configure do |config|
config.include Capybara::DSL
end
完整版spec_helper:http://pastebin.com/qkANfu39
显然我需要将模块I18n包含在spec_helper中,但不知道该怎么做。
我需要你们的帮助:)
答案 0 :(得分:3)
通过将'rails_helper'文件包含在测试文件中来实现它.Capy测试的最终版本:
#spec/features/test_spec.rb
require 'rails_helper'
require 'spec_helper'
describe 'accessibility of webpage' do
it 'should access web page' do
visit '/item/new'
expect(page).to have_content I18n.t("form_input.item.item_s")
end
end