新しいrubyselenium-webdriverは、以前のバージョンのseleniumとそれに付属するrubyドライバーよりもほとんど直感的に見えるため、慣れようとしています。また、古いセレンをウィンドウ内のルビー1.9.1で動作させるのに苦労したので、別の方法を探したいと思いました。これまでのところ、スクリプトを使用してこれを実行しました。
require "selenium-webdriver"
driver = Selenium::WebDriver.for :firefox
driver.get "https://example.com"
element = driver.find_element(:name, 'username')
element.send_keys "mwolfe"
element = driver.find_element(:name, 'password')
element.send_keys "mypass"
driver.find_element(:id, "sign-in-button").click
driver.find_element(:id,"menu-link-my_profile_professional_info").click
driver.find_element(:id,"add_education_btn").click
country_select = driver.find_element(:name, "address_country")
つまり、基本的には自分のサイトにログインして、ユーザープロファイルに教育エントリを追加しようとしています。(country_select変数に)オプションのある選択ボックスへの参照があり、指定された値のオプションを選択したいと思います。 ..新しいクライアントでこれを行う方法がわかりません..私が考えることができる唯一のことは、必要なオプションが見つかるまですべてのオプションをループしてから、execute_script: http://seleniumを呼び出すことです。 googlecode.com/svn/trunk/docs/api/rb/Selenium/WebDriver/Driver.html#execute_script-class_method メソッドを使用してselectedIndexを設定します。
これを行う他の方法はありますか?ここにあるselenium2.0/ webdriverのJavaAPI:http ://seleniumhq.org/docs/09_webdriver.html これを行う例があります
Select select = new Select(driver.findElement(By.xpath("//select")));
select.deselectAll();
select.selectByVisibleText("Edam");
何かが足りない場合を除いて、ルビーバージョンにはこの機能があるようには見えません。どんな助けでもいただければ幸いです。