ページ内の正規表現を検索しようとするとエラーが発生します。以下を使用して実際に正規表現を見つけましたが、さまざまなエラーが発生します。
...
browser.script.html.include? "event49"
エラーはブラウザ(および場合によっては環境)に依存しているようです。Safari、Chrome、Firefoxの間でテストを行ってきました。Firefoxには断続的な問題があるようです。Chrome、ほぼ一定。私もこれを私のPCとMacの間でテストしました、そしてそれは全面的に標準のようです。
Safariに問題はありません。
このエラーはFirefoxからのものです:
[remote server] resource://fxdriver/modules/web_element_cache.js:7204:in `fxdriver.cache.getElementAt': Element not found in the cache - perhaps the page has changed since it was looked up (Selenium::WebDriver::Error::StaleElementReferenceError)
このエラーはChromeからのものです:
/Library/Ruby/Gems/1.8/gems/selenium-webdriver-2.29.0/lib/selenium/webdriver/remote/response.rb:52:in `assert_ok': getElementTagName execution failed; (Selenium::WebDriver::Error::StaleElementReferenceError)
Element does not exist in cache
どんな助けでも大歓迎です!
アップデート:
以下のスクリプトを参照してください。
require "rubygems"
require "watir-webdriver"
require "watir-webdriver-performance"
require "rspec"
include Watir
require 'logger'
browser = Watir::Browser.new :chrome
test_site = 'http://laughlin:driveafirestone@fcac-rebrand.laughlin.com/'
browser.goto(test_site)
year_select = browser.select_list(:id => 'universal-year')
browser.select_list(:id => 'universal-year', :disabled => 'disabled').wait_while_present
year_select.select '2010'
make_select = browser.select_list(:id => 'universal-make')
browser.select_list(:id => 'universal-make', :disabled => 'disabled').wait_while_present
make_select.select 'Volkswagen'
model_select = browser.select_list(:id => 'universal-model')
browser.select_list(:id => 'universal-model', :disabled => 'disabled').wait_while_present
model_select.select 'Jetta'
submodel_select = browser.select_list(:id => 'universal-submodel')
browser.select_list(:id => 'universal-submodel', :disabled => 'disabled').wait_while_present
submodel_select.select '2.0T TDI Sedan'
zipcode_input = browser.text_field(:id => 'universal-selectorZip')
zipcode_input.set '53202'
browser.button(:id => 'universal-submit-tires-quote').click
browser.script.html.include? "event49"
browser.close