Я пытаюсь выполнить простую реализацию шаблона объекта страницы с использованием capybara и rspec. Я нахожусь в точке, где мне нужно инициализировать новый объект страницы из другого экземпляра объекта объекта страницы. Но после инициализации нового объекта страницы системы жалуется, чтоПередача сеанса Capybara на объект страницы
неопределенного локальные переменной или метод `страница»
Я предполагаю, что я должен пройти как-то сеанс драйвера для нового объекта, но я не знаю, как Вот мой первый класс:
class DashBoardLoginPage
include Dashboard
include Logging
include Locator
include Capybara::DSL
def initialize
super
@locator = locators_for :dashboard_login_page_selectors
log.info "Dashboard Login page initialized"
end
#param user is a hash with name and pass keys
def login_user user
visit '/'
fill_in user_name_field, with: user[:name]
fill_in user_password_field, with: user[:password]
click_button login_button
page.save_screenshot "#{Time.now.getutc}_screenshot.png"
dashboard_landing_page = DashboardLandingPage.new
end
end
и мой второй объект:
require_relative "dashboard_base"
class DashboardLandingPage < DashboardBasePage
def initialize
super
@locator = locators_for :dashboard_login_page_selectors
log.info "Dashboard Landing page initialized"
end
def is_open?
page.has_title? "Apps - Fyber Ad Monetization Dashboard"
end
end
Я в том числе это правда, что 'require_relative "dashboard_base"' линию. Это модуль со всеми включениями, которые мне нужны. –
На самом деле это была проблема. Большое спасибо. Я забыл поместить эту строку в свой модуль :) –