Selenium-Webdriverのフレーム取得方法
Selenium-Webdriverのフレーム取得方法について教えてください。
現在、一つのページ(ウィンドウ)に2つのフレームがあります。1つのフレーム(フレームA)で条件を指定して抽出ボタンをクリックすれば、もう一つのフレーム(フレームB)に結果が反映されます。フレームAで条件を指定した後にフレームBの操作をSelenium-Webdriverでruby言語で行いたいと考えています。下記のプログラムでフレームAを取得して、
frame = driver.find_element(:id, "フレームA")
driver.switch_to.frame(frame)
下記のプログラムで一度、最上位のフレームに戻して、フレームBを取得しようとしましたが、何度やっても取得できません。
driver.switch_to.window(driver.window_handle)
frame = driver.find_element(:name, "フレームB")
driver.switch_to.frame(frame)
逆に同じ方法で、フレームBの取得をはじめに行うと取得できました。しかし、最上位フレームに戻って、フレームAを取得しようとするとエラーになります。
どのようにすれば取得できるのでしょうか?
ちなみにOSはUbunto16.04でブラウザはFirefoxを使用しています。