页面导航之间的存储和访问元素

时间:2018-08-29 01:19:24

标签: watir pageobjects

我是watir和page对象的新手。 我已经定义了两个页面,SearchPage和ReportsPage;在SearchPage上,我有按钮报告,我单击了它,然后打开了ReportPage,我希望能够使用ReportsPage上SearchPage的元素值进行一些断言。

如何存储SearchPage页面中的值并在ReportPage上使用它?

我的SearchPage定义如下:

class SearchPage < Browser
  URL = "http://localhost:3000/"

  def open
    @browser.goto URL
    self
  end



  def reports_link
    @browser.link(href: '/reports')
  end

  def name_field
    @browser.div(class: 'M0Z8m _1_jJ7')

  end

和ReportsPage:

class ReportPage < Browser
  URL = "http://localhost:3000/reports"

  def report_value
    @browser.element(class: '_1CV_I')
  end
end

浏览器页面的定义如下:

class Browser
  def initialize(browser)
    @browser = browser
  end
end

在步骤上,我点击这样的报告链接:

Given (/^I navigate to application$/) do
  @searchPage = SearchgPage.new(@browser);
  @searchPage.open; sleep 1

end

When (/^I click on reports$/) do
@search_page.reports_link.click 

ReportPage已加载,然后在然后步骤中,我需要来自 SearchPAge 的字段 name_field 的值。我该如何访问该值,因为@search_page无法按预期工作,因为该页面不再加载。

0 个答案:

没有答案