5

Selenium/Python で Web アプリケーションをテストしようとすると問題が発生します。基本的に、ポップアップ ウィンドウの要素をテストすることはできません。

シナリオ:ページのすべての要素をテストできます。しかし、小さなポップアップ ボックスを開くボタンをクリックすると、ポップアップの要素をテストできません。ポップアップがフォーカスされていない、またはアクティブになっていないようです。

次のページで要素をテストできます。たとえば、ボタンをクリックすると次のページに移動し、「次の」ページの要素を操作できます。したがって、問題はポップアップ固有のようです。

コードを投稿することはできますが、正直なところ、この段階では混乱する可能性があります。後の投稿でコードを投稿するかもしれません、ありがとう

4

2 に答える 2

6

switch_toというプロパティがあります

Q: ポップアップ ウィンドウを処理するにはどうすればよいですか?

A: WebDriver は、複数のウィンドウに対応する機能を提供します。これは、WebDriver.switch_to.window(knownName)メソッドを使用して既知の名前のウィンドウに切り替えることによって行われます。

名前がわからない場合は、 を使用WebDriver.window_handlesして既知のウィンドウのリストを取得できます。

ハンドルを渡すことができますswitch_to.window(handleName)

たとえば、私driverName.switchTo.window(driverName.getWindowHandle())は名前を探したくないポップアップを手に入れていました。

追加の参照: http://code.google.com/p/selenium/wiki/FrequentlyAskedQuestions

于 2012-05-14T09:43:17.420 に答える
0

Selenium RC API の場合、SelectWindow コマンドを使用してポップアップ ウィンドウに切り替える必要があります。ウィンドウは、名前 (JavaScriptwindow.open()関数で指定) またはタイトルで指定できます。メイン ウィンドウに戻るには、 を使用しますSelectWindow(None)

于 2012-05-14T15:34:06.537 に答える