2016-11-21 12 views
0

私はそれが起こる未定義のメソッド `execute_scriptは」

undefined method `execute_script' for <Selenium::WebDriver::Firefox::Bridge:0x00000003cbdba0> (NoMethodError) 

/usr/lib64/ruby/gems/2.2.0/gems/page-object-1.2.2/lib/page-object/platforms/selenium_webdriver/element.rb:146:in `parent' 

/usr/lib64/ruby/gems/2.2.0/gems/page-object-1.2.2/lib/page-object/platforms/selenium_webdriver/table_row.rb:30:in `find_index_by_title' 

/usr/lib64/ruby/gems/2.2.0/gems/page-object-1.2.2/lib/page-object/platforms/selenium_webdriver/table_row.rb:15:in `[]' 

スタックトレースページオブジェクト宝石

の1.2.2バージョンを使用して私のテストを実行しているときに、このエラーを取得し始めていますこのよう

left_table_element[rank][column] 

NBなどの方法を使用してテーブルから値を取得しようとしたとき。これは以前に1年以上働いていたので、新しい問題が導入されたのだろうか?

gitの責任を見ると、element.rbのエラーを投げているコードの行が最近変更された可能性がありますが、この回帰が起こった可能性がありますか?

+0

あなたは最近、Firefoxの更新したの?インストールはいの場合は、以前のバージョンにダウングレードしてください。https://support.mozilla.org/en-US/kb/install-older-version-of-firefox –

答えて

1

問題は、Selenium-WebDriverの変更によるものです。バージョン3.0.0では、Remote::Bridge#executeScriptメソッドの名前が#execute_scriptに変更されました。

Page-Object gemが新しいメソッドを使用するようにバージョン1.2.2で更新されました。しかし、宝石の依存関係は、必要なバージョンを反映するように更新されていませんでした。つまり、Selenium-WebDriver v2.53.4が最低要件としてリストされています。これは最終的なPage-Object v2.0リリースで修正されているようです。一方

、あなたは(あなたがページ・オブジェクトをダウングレードしたくないと仮定した場合)セレンwebdriverをV3にアップグレードすることで問題を解決することができます

gem install selenium-webdriver 
0

この問題を解決するには、単にあなたのページを更新する必要があります1.2.2バージョンへの-object宝石

逸品-v 1.2.2(唯一のセレンwebdriverを3.xのための)

関連する問題