0
如何從另一個文件控制Watir-Webdriver的實例?例如,在 文件webdriver.rb我有從另一個文件中控制Watir-Webdriver的實例
require 'watir-webdriver'
class Crawler
attr_accessor :browser
def initialize
self.browser = Watir::Browser.new
end
def goto_mypage
browser.goto("http://www.mypage.com")
end
def kill
browser.close
end
end
a = Crawler.new
現在我將如何訪問一個從文件「another_file.rb」與內容,如
a.goto("htttp://www.another_page.com")
a.goto_mypage
我試圖使需要' ./webdriver.rb'在another_file.rb中。並使模塊的Crawler類成爲其中的一部分。跨文件訪問方法不是問題 - 訪問webdriver實例是。
我試着在webdriver.rb中設置實例變量@a = a,然後從another_file.rb訪問@a。
我認爲這很簡單,但它讓我失望了。
謝謝。是的,我得到一個無類錯誤 'NoMethodError - 未定義方法'goto'爲零:NilClass:' 當試圖控制from another_file.rb時 錯誤指的是,比方說,在webdriver中的方法goto_mypage。 RB。我不能在第二個文件中放入'a = Crawler.new',因爲a所做的大部分工作都是在webdriver.rb文件中定義的。它必須坐下來觀察網頁中的更改。非常偶爾 - 取決於another_file.rb中的代碼是否被調用 - 我需要檢出一個不同的頁面並返回到它正在監視的原始頁面。 – sarkon 2015-04-01 21:57:33