iframe内のボタンクリック時iframe要素が消える場合の親フレームへの移動方法
![匿名ユーザーアイコン](https://winactor.com/wpnew/wp-content/themes/winactor/img/anonymous-avatar.jpg)
お問い合わせ分類:シナリオ
( 導入環境:Windows10 64bit, 物理端末 )
( バージョン情報:WinActor 7.2.1 )
( ご利用中の資材:「管理者ユーザー用」(旧インストール版) )
Firefoxで動作するシステム内で、検索画面がiframeで構成されており、
検索を行うとそのiframeが消失するため、
フレーム移動ライブラリでparentに移動できなくなる状況の解決策を探しています。
実例をお示しできないのですが、
あるフレームの『検索画面を開く』ボタンを押すと、システム側でスクリプトが実行され、
検索画面がHTMLソース内でそのフレームの子要素である新たなiframe要素として生成されて、
検索画面の『検索』ボタンをクリックするとそのiframe要素が消失する構造です。
シナリオ構成としては、
クリック(検索画面を開くボタン)→フレーム移動(child)→クリック(検索ボタン)→フレーム移動(parent)
としているのですが、最後のフレーム移動(parent)が実行されないままシナリオが進行しなくなり、
60秒後に以下のエラーメッセージが表示され停止します。
スクリプトの実行に失敗しました。
エラー番号: 0x00000001
内容: ライブラリ実行(spv_web)に失敗しました。
The HTTP request to the remote WebDriver server for URL http://localhost:61329/session/(英数字列)/frame/parent timed out after 60 seconds.
試した解決策としては、
・検索画面での入力完了後、親フレームに移動してからエミュレーションで検索ボタンを押す
→フォーカスが親フレームの方に行くようでTabキーで検索ボタンにたどり着けず
・検索ボタンをクリックし、iframeが消失するまでのわずかな間にparentフレームに移動するために、
クリックライブラリのスクリプトの後ろにフレーム移動ライブラリの内容を追記する
→想定した動作になりましたが、検索などiframeが消えるまで時間があるものにしか対応できません。
どなたか、他の解決策をお持ちの方はいらっしゃいませんでしょうか。
また、解決策を調べる中で、Seleniumでの例があり、
こちらでは driver.switch_to.default_content() というメソッドで、
Webページにアクセスしたときのフレームに移動できるようでした。
https://teratail.com/questions/197392
WinActorに、これに相当する機能はあるのでしょうか。
ご存じの方いらっしゃいましたら、よろしくお願いいたします。