2013-01-07 81 views
5

如何使用我的代碼打開多個瀏覽器,例如通過從0到10的while循環?Watir打開多個瀏覽器或選項卡的

這裏是我的代碼:

require 'watir-webdriver' 
require 'headless' 
class Page 
    @headless = Headless.new 
    @headless.start 
    @browser = Watir::Browser.start 'bit.ly/***' 
    def self.get_connection 

     puts "Browser started" 
     puts @browser.title 
     @browser.driver.manage.timeouts.implicit_wait = 3 #3 seconds 

     @browser.select_list(:name => 'ctl00$tresc$111').select_value('6') 
     puts "Selected country" 
     @browser.select_list(:name => 'ctl00$tresc$222').wait_until_present 
     @browser.select_list(:name => 'ctl00$tresc$333').select_value('95') 
     puts "Selected city" 
    end 

    def self.close_connection 
     @browser.close 
     @headless.destroy 
    end 
end 

Page.get_connection 
Page.close_connection 

但如何做這樣的事情?

while i < 10 
Page.get_connection 
end 

回答

4

這應該打開10個瀏覽器:

10.times {Watir::Browser.new} 

如果你以後要使用的瀏覽器,你可以把它們放在一個哈希:

browsers = {} 
(0..9).each {|i| browsers[i] = Watir::Browser.new} 
browsers[0].goto "google.com" 
browsers[1].goto "yahoo.com" 
+0

又是如何通過做類變量@? – brabertaser19

+1

只需用'@browsers [i]'替換'瀏覽器[i]'。你應該閱讀一本關於Ruby的書。當你瞭解該語言的基礎知識時,編寫Ruby代碼就容易多了。 –

+0

我只是不知道類變量可能寫成數組 – brabertaser19

相關問題