我已将此添加到我的spec_helper:
require 'capybara'
require 'capybara/dsl'
require 'capybara/rspec'
require 'selenium-webdriver'
require 'site_prism'
我的页面是这样的:
class AboutPage < SitePrism::Page
end
我的rspec是这样的:
require_relative 'spec_helper'
describe 'About Page' do
it "test" do
about = AboutPage.new
end
end
我不断得到的错误是:
故障:
1)关于页面测试 失败/错误:about = AboutPage.new NameError: 未初始化的常量AboutPage #。/ about_spec.rb:6:在&#39;
中的块(2级)答案 0 :(得分:0)
如果AboutPage不在controller
的根路径中,则必须使用如下命名空间来调用它:
about = SomeNameSpace::AboutPage.new
答案 1 :(得分:0)
看起来我需要添加到我的spec_helper.rb:
require_relative about_page.rb
在使用之前,您需要在规范文件中使用所有页面。
答案 2 :(得分:0)
如果您使用rspec将所有网站棱镜对象都放在spec/page_objects
中,则可以将此行添加到rails_helper.rb
Dir[Rails.root.join('spec/page_objects/**/*.rb')].each { |f| require f }
这将自动需要about_page.rb
和任何其他页面对象,包括子文件夹。