2017-03-03 6 views
1

私は現在、サイトのテストに取り組んでいます。私が実行している問題の1つは、Javascript以外のポップアップで作業していることです。SelniumでJS以外のポップアップを管理する方法は?

私はSelenium Alertインターフェイスを使用しようとしました。私は

Alert a = WebDriver.switchTo().alert() 
alert.accept() 
alert.dismiss() 

行っている。これは、JavaScriptが動作するように思われるものの

サンプルは警告をポップアップ表示ではなく、非のjavascriptのアラートをポップアップ表示します。 JavascriptベースではないSeleniumのポップアップを扱う方法はありますか?

+1

をそれ可能であれば、該当するページのURLを指定するのに役立ちます。 –

+0

私はURLを与えることができないので、申し訳ありません管理事の一部。私はセレンがJavascriptベースではないポップアップを処理する方法を持っているかどうか疑問に思っていますか? – Jay

+0

ポップアップの種類によって異なります。それはHTMLベースですか?私たちはスクリーンショットを見る必要があり、より多くの情報が必要です。 – JeffC

答えて

0

最後に、このようなポップアップが表示されましたが、それ以外は「見えない」フレームでした。お気に入りのブラウザでページを開き、ポップアップで何かを強調表示して右クリックし、「要素の検査」を選択してXPathに従います。 Seleniumでフレームを数回切り替えて、必要な場所に移動する必要があるかもしれません。

+0

ありがとう、私はこれを試してみよう! – Jay

0

HTMLポップアップが必要な場合は、通常のWebページの場合と同様に、必要な要素を通常は探してください。

しかし、その言っ要素が見つからない場合は、その後2例があることができます:

  1. ポップアップがあなたがインラインフレームの内側にあったが、そのポップアップがdefaultContentビューに存在するこのポップアップ前のiframe
  2. 内部に存在します。 #1のために

は、場合によっては、これらのソリューションを使用driver.switchTo().frame(0); //ここで0は最初のiframeは、あなたが#2についても

iframeのIDを使用できることを意味します:driver.switchTo().defaultContent();

関連する問題