繁体   English   中英

使用Selenium和Cucumber实例化Ruby中的页面对象

[英]instantiating a page object in Ruby with Selenium and Cucumber

我正在尝试使浏览器自动化以浏览网站并单击其他页面。 为此,我有两个继承自AllPages的类AllPages和SearchPage。

我要做的第一件事是实例化AllPages,转到网站并单击一个链接,该链接将我带到Searchpage,这时我尝试使用这些代码行实例化SearchPage。

所有页面:

def return_search_page browser
    @browser = browser
end

脚步:

  @newpage = AllPages.new @browser
  @searchpage = @newpage.return_search_page @newpage
  @searchpage.find_searchbox

我尝试运行的错误是:“#<AllPages:0x00000002632cf0>的未定义方法'find_searchbox'(NoMethodError)”

我位于SearchPage中的方法find_searchbox是这个

def find_searchbox
    @browser.find_element(:class, "searchbox")
end

我猜想我搞砸了对象@searchpage的实例化,因为这是在打开浏览器并导航到网站之后出现的情况。

任何帮助将不胜感激

def return_search_page browser
  SearchPage.new browser
end

@newpage = AllPages.new @browser
@searchpage = @newpage.return_search_page @browser
@searchpage.find_searchbox

如果您在初始化中设置@browser,则无需将其作为参数传递给#return_seearch_page

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM