4

ユーザーがボタンをクリックして iFrame を開くアプリがあります。続行する前に、このフレームがロードを開くのを待つのに本当に苦労しています。

私は使用できません:

wait_for_page_to_load

読み込まれるのはページではなく、iframe であるためです。

私は使用できません:

select_frame

フレームがまだロードされていないため

だから私はこれまでにない醜いものを残しています

sleep(3)

フレームを選択してそれについて何かを主張する前に。

これを適切に行う方法について何か提案はありますか? 複数のプロジェクトで使用するために Selenium DSL を抽出しているため、lib 固有の JS を使用したくありません。また、私は selenium-client を使用しているため、Ruby ベースのものはすべてプラスになります。

乾杯、

広告。

編集:使用できないようです:

wait_for_frame_to_load

いずれにせよ、タイムアウトします。

4

1 に答える 1

3

Iframeは通常のフレームとは別のサンドボックスで実行されるため、これが機能するかどうかはわかりません。クロスサイトページ呼び出しを実行でき、操作できない独自のJavaScriptを使用している可能性があるためです。

@selenium.wait_for_frame_to_load "iframe", "30000"

*chromeまたは*iehtaでテストを実行したが、現時点でテストするものがない場合は機能する可能性があります

于 2009-12-18T15:52:03.757 に答える