2013-10-11 97 views
0

我有一個在Firefox中運行OK的腳本。爲什麼腳本在Firefox中運行,但不是IE8?

該腳本不能在Internet Explorer中運行。我會很感激的幫助。

以下是前幾行:

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

URL = "http://google.com/" 

class TestGoogle < Test::Unit::TestCase 
    def setup 
    #@browser = Watir::Browser.new :firefox 
    @browser = Watir::Browser.new :ie 
    end 

    def testSignInLink 
    @browser.goto URL 

這裏選擇錯誤消息:

C:\Ruby193\bin\ruby.exe -e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)  C:/RubymineProjects/ditto/Google_01_TU_03.rb 
C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.7.0/lib/watir-classic/version.rb:3:    warning: already initialized constant VERSION 
... 
... 
    1) Error: 
testSignInLink(TestGoogle): 
TypeError: superclass mismatch for class UnknownObjectException 
C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.7.0/lib/watir- classic/exceptions.rb:12:in `<module:Exception>' 
C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.7.0/lib/watir- classic/exceptions.rb:2:in `<module:Watir>' 
C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.7.0/lib/watir-classic/exceptions.rb:1:in `<top (required)>' 
C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.7.0/lib/watir-classic.rb:6:in `require' 
C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.7.0/lib/watir-classic.rb:6:in `<top (required)>' 
C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-4.0.2-x86-mingw32/lib/watir/loader.rb:48:in `require' 
C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-4.0.2-x86-mingw32/lib/watir/loader.rb:48:in `load_driver' 
C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-4.0.2-x86-mingw32/lib/watir/loader.rb:40:in `load_driver_for' 
C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-4.0.2-x86-mingw32/lib/watir/loader.rb:8:in `new' 
C:/RubymineProjects/ditto/Google_01_TU_03.rb:11:in `setup' 

11號線是:基於@abe評論

@browser = Watir::Browser.new :ie 
+2

你不應該在同一個腳本既需要的Watir和的Watir-的webdriver。不確定這是你問題的根源,但它沒有什麼幫助。 –

回答

0

,我做了以下。

僅適用於IE瀏覽器,我刪除了「require'watir'」。這工作得很好。

恢復「require'watir'」。刪除「require'watir-webdriver'」。這工作得很好。

這就是我的問題的答案。但我不明白這一點。這聽起來好像兩個API是可以互換的:)

+1

它們是兩個獨立的庫。如果我打算主要通過IE測試,那麼我可能會使用watir。如果我要測試所有瀏覽器,那麼我可能會使用watur-webriver。 –

相關問題