2014-06-18 45 views
0

因此,這不是關於並行運行多個瀏覽器。它依次運行IE11,然後是IE10,然後是FireFox,所有這些都在不同的虛擬機上連接到Selenium Grid2上。如何在一個Watir腳本中使用測試單元寶石測試多個瀏覽器

這就是我所擁有的,在一臺虛擬機上運行一個瀏覽器。

文件:example_grid_ie11.rb

require "rubygems" 
require "test/unit" 
require "watir-webdriver" 

class GoogleSearch < Test::Unit::TestCase 
    def setup 
    caps = Selenium::WebDriver::Remote::Capabilities.ie 
    caps.version = "11" 
    caps[:name] = "Testing with IE 11" 

    @browser = Watir::Browser.new(
    :remote, 
    :url => "http://vm-auto.3mhis.vm:4444/wd/hub", 
    :desired_capabilities => caps) 
    end 

    def teardown 
    @browser.close 
    end 

    def test_search 
    @browser.goto "google.com" 
    @browser.text_field(:name => "q").set "watir" 
    @browser.button.click 
    @browser.div(:id => "resultStats").wait_until_present 
    @browser.screenshot.save ("GoogleSearch_IE11.png") 
    assert @browser.title == "watir - Google Search" 
    end 
end 

現在,我無法弄清楚,如果我可以運行多個設置方法和多撕裂起伏,其瀏覽器關閉拆除。

測試單元寶石,給我一個很好的結果XUnit風格,加上很多斷言。

回答

0

使用試驗::單位2.x的

寶石安裝測試單元

實施例:

https://github.com/test-unit/test-unit

多個設置:

class TC_MyTest < Test::Unit::TestCase 
    def setup # first 
     @standard = MyClass.new 
    end 

    setup # second 
    def setup_alpha 
     @alpha = MyClass.new 
    end 

    setup # third 
    def setup_beta 
     @beta = MyClass.new 
    end 

    def test_stuff 
     assert_true(1 == 1) 
    end 
end 

多個拆解:

class TC_MyTest < Test::Unit::TestCase 
    def test_stuff 
     assert_true(1 == 1) 
    end 

    def teardown # last 
     @standard = nil 
    end 

    teardown # second 
    def teardown_alpha 
     @alpha = nil 
    end 

    teardown # first 
    def teardown_beta 
     @beta = nil 
    end 
end 
相關問題