0

IE 10 ブラウザーで Selenium テストを実行する必要があります。次のスクリプトを実行するために、次のことを行いました。

  1. ここからIEDriverServer(私のマシンは64ビットなので64ビット)をダウンロードしました
  2. その(.exe)ファイルを「C://drivers」フォルダーに入れます
  3. 環境変数にパス「C://drivers」を設定します
  4. スクリプトを実行

    require 'selenium-webdriver'    
    driver = Selenium::WebDriver.for :ie
    
    driver.get "http://www.google.com"
    
    button = driver.find_element(:id, "gbqfba")
    puts button.text
    driver.quit
    

aboe スクリプトを実行すると、次のエラーが発生します。

c:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.33.0/lib/selenium/webdriver/remote/response.rb:51:in `assert_ok': Unable to find element with id == gbq
fba (Selenium::WebDriver::Error::NoSuchElementError)
        from c:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.33.0/lib/selenium/webdriver/remote/response.rb:15:in `initialize'
        from c:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.33.0/lib/selenium/webdriver/remote/http/common.rb:59:in `new'
        from c:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.33.0/lib/selenium/webdriver/remote/http/common.rb:59:in `create_response'
        from c:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.33.0/lib/selenium/webdriver/remote/http/default.rb:66:in `request'
        from c:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.33.0/lib/selenium/webdriver/remote/http/common.rb:40:in `call'
        from c:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.33.0/lib/selenium/webdriver/remote/bridge.rb:629:in `raw_execute'
        from c:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.33.0/lib/selenium/webdriver/remote/bridge.rb:607:in `execute'
        from c:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.33.0/lib/selenium/webdriver/remote/bridge.rb:575:in `find_element_by'
        from c:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.33.0/lib/selenium/webdriver/common/search_context.rb:42:in `find_element'
        from ie.rb:7:in `<main>'

Chrome と Firefox ブラウザーで同じスクリプトが正常に動作します。私が間違っているところを理解するのを手伝ってください。

4

3 に答える 3

1

ここでちょっとした予感がしますが、これに従っていますか?

Windows Vista または Windows 7 の IE 7 以降では、各ゾーンの保護モード設定を同じ値に設定する必要があります。値は、すべてのゾーンで同じである限り、オンまたはオフにすることができます。保護モードを設定するには、[ツール] メニューから [インターネット オプション...] を選択し、[セキュリティ] タブをクリックします。ゾーンごとに、タブの下部に「保護モードを有効にする」というラベルの付いたチェックボックスがあります。

于 2013-08-28T12:43:46.740 に答える
1
  • IEDriverserver をダウンロード
  • 圧縮されたフォルダーを抽出し、それらを環境変数パスに追加します。

    [マイ コンピュータ] > (右クリック) [プロパティ] > [システムの詳細設定] > [環境変数]

  • システム変数の下のパスをクリックし、[編集] を選択します。
  • ドライバーの場所を貼り付けます。

ここに画像の説明を入力

@driver = Selenium::WebDriver.for :ie

または|

@driver = Selenium::WebDriver.for :internet_explorer

于 2014-04-16T05:29:51.277 に答える
1

必要な構成

  1. IEDriverServer 実行可能ファイルをダウンロードして、PATH に配置する必要があります。

  2. Windows Vista または Windows 7 の IE 7 以降では、各ゾーンの保護モード設定を同じ値に設定する必要があります。値は、すべてのゾーンで同じである限り、オンまたはオフにすることができます。保護モードを設定するには、[ツール] メニューから [インターネット オプション...] を選択し、[セキュリティ] タブをクリックします。ゾーンごとに、タブの下部に「保護モードを有効にする」というラベルの付いたチェックボックスがあります。

  3. ネイティブ マウス イベントを正しい座標に設定できるように、ブラウザーのズーム レベルを 100% に設定する必要があります。

詳細については、http://code.google.com/p/selenium/wiki/InternetExplorerDriverを参照してください。

于 2013-08-28T13:02:09.420 に答える